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

# ASAuthorizationProviderExtensionLoginManager

An interface to maintain platform single sign-on (SSO) during authentication and registration.

```
class ASAuthorizationProviderExtensionLoginManager
```

## Overview

Use this class to perform registration and authentication tasks, and to repair registrations.

## Topics

### Performing registration

[`loginUserName`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/loginUserName)

The user name to use when authenticating with the identity provider.

[`registrationToken`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/registrationToken)

The device registration token from the mobile device management profile.

[`-  presentRegistrationViewControllerWithCompletion:`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/presentRegistrationViewController(completion:))

Requests platform single sign-on to show the extension’s view controller to the user.

[`-  saveCertificate:keyType:`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/saveCertificate(_:keyType:))

Saves the provided certificate for the key type.

[`-  saveLoginConfiguration:error:`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/saveLoginConfiguration(_:))

Saves or replaces the login configuration.

### Performing authentication

[`ASAuthorizationProviderExtensionKeyType`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionKeyType)

The key types for platform single sign-on.

[`deviceRegistered`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/isDeviceRegistered)

A Boolean value that indicates whether the device completes registration.

[`userRegistered`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/isUserRegistered)

A Boolean value that indicates whether the user completes registration.

[`loginConfiguration`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/loginConfiguration)

The current login configuration for the extension.

[`ssoTokens`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/ssoTokens)

The single sign-on response tokens for the current user and extension.

[`-  copyIdentityForKeyType:`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/identity(for:))

Retrieves the identity for the specified platform single sign-on key type.

[`-  copyKeyForKeyType:`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/key(for:))

Retrieves the key for the specified platform single sign-on key type.

[`-  userNeedsReauthenticationWithCompletion:`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/userNeedsReauthentication(completion:))

Requests platform single sign-on to reauthenticate the current user.

### Repairing registrations

[`-  userRegistrationsNeedsRepair`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/userRegistrationsNeedsRepair())

Invokes the user registration to run again so the current user can repair it.

[`-  deviceRegistrationsNeedsRepair`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/deviceRegistrationsNeedsRepair())

Invokes the device registration to run again so the current user can repair it.

[`-  resetKeys`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/resetKeys())

Creates new encryption, signing, and Secure Enclave keys.

### Instance Properties

[`extensionData`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/extensionData)

[`userLoginConfiguration`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/userLoginConfiguration)

### Instance Methods

[`-  decryptionKeysNeedRepair`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/decryptionKeysNeedRepair())

[`-  resetDeviceKeys`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/resetDeviceKeys())

[`-  resetUserSecureEnclaveKey`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/resetUserSecureEnclaveKey())

[`-  saveUserLoginConfiguration:error:`](/documentation/AuthenticationServices/ASAuthorizationProviderExtensionLoginManager/saveUserLoginConfiguration(_:))

## Relationships

### Conforms To

[`CustomStringConvertible`](/documentation/Swift/CustomStringConvertible)

[`Hashable`](/documentation/Swift/Hashable)

[`CustomDebugStringConvertible`](/documentation/Swift/CustomDebugStringConvertible)

[`CVarArg`](/documentation/Swift/CVarArg)

[`Equatable`](/documentation/Swift/Equatable)

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

### Inherits From

[`NSObject-swift.class`](/documentation/ObjectiveC/NSObject-swift.class)

---

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)