<!--
{
  "availability" : [
    "macOS: 13.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "AuthenticationServices",
  "identifier" : "/documentation/AuthenticationServices/ASAuthorizationProviderExtensionRegistrationHandler",
  "metadataVersion" : "0.1.0",
  "role" : "Protocol",
  "symbol" : {
    "kind" : "Protocol",
    "modules" : [
      "Authentication Services"
    ],
    "preciseIdentifier" : "c:objc(pl)ASAuthorizationProviderExtensionRegistrationHandler"
  },
  "title" : "ASAuthorizationProviderExtensionRegistrationHandler"
}
-->

# ASAuthorizationProviderExtensionRegistrationHandler

An interface through which a single sign-on (SSO) authentication provider extension registers users and devices for platform SSO.

```
protocol ASAuthorizationProviderExtensionRegistrationHandler : NSObjectProtocol
```

## Topics

### Registering users and devices

[`func beginDeviceRegistration(loginManager: ASAuthorizationProviderExtensionLoginManager, options: ASAuthorizationProviderExtensionRequestOptions, completion: (ASAuthorizationProviderExtensionRegistrationResult) -> Void)`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionRegistrationHandler/beginDeviceRegistration(loginManager:options:completion:))

Initiates the device registration process for the single sign-on extension.

[`func beginUserRegistration(loginManager: ASAuthorizationProviderExtensionLoginManager, userName: String?, method: ASAuthorizationProviderExtensionAuthenticationMethod, options: ASAuthorizationProviderExtensionRequestOptions, completion: (ASAuthorizationProviderExtensionRegistrationResult) -> Void)`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionRegistrationHandler/beginUserRegistration(loginManager:userName:method:options:completion:))

Initiates the user registration process for the user and the single sign-on extension.

[`func registrationDidComplete()`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionRegistrationHandler/registrationDidComplete())

Calls the extension to allow it to complete registration.

### Instance Methods

[`func protocolVersion() -> ASAuthorizationProviderExtensionPlatformSSOProtocolVersion`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionRegistrationHandler/protocolVersion())

[`func registrationDidCancel()`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionRegistrationHandler/registrationDidCancel())

[`func supportedGrantTypes() -> ASAuthorizationProviderExtensionSupportedGrantTypes`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionRegistrationHandler/supportedGrantTypes())

### Instance Properties

[`var supportedDeviceEncryptionAlgorithms: [ASAuthorizationProviderExtensionEncryptionAlgorithm]`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionRegistrationHandler/supportedDeviceEncryptionAlgorithms)

[`var supportedDeviceSigningAlgorithms: [ASAuthorizationProviderExtensionSigningAlgorithm]`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionRegistrationHandler/supportedDeviceSigningAlgorithms)

[`var supportedUserSecureEnclaveKeySigningAlgorithms: [ASAuthorizationProviderExtensionSigningAlgorithm]`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionRegistrationHandler/supportedUserSecureEnclaveKeySigningAlgorithms)

### Instance Methods

[`func displayNames(forGroups: [String], using: ASAuthorizationProviderExtensionLoginManager, completion: ([String : String]) -> Void)`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionRegistrationHandler/displayNames(forGroups:using:completion:))

[`func keyWillRotate(for: ASAuthorizationProviderExtensionKeyType, newKey: SecKey, loginManager: ASAuthorizationProviderExtensionLoginManager, completion: (Bool) -> Void)`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionRegistrationHandler/keyWillRotate(for:newKey:loginManager:completion:))

[`func profilePictureForUser(using: ASAuthorizationProviderExtensionLoginManager, completion: (Data) -> Void)`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionRegistrationHandler/profilePictureForUser(using:completion:))

## Relationships

### Inherits From

[`NSObjectProtocol`](/documentation/ObjectiveC/NSObjectProtocol)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)