Microsoft Entra ID

Enable and support passkeys in Authenticator for Microsoft Entra ID

In brief

Learn about Authenticator-specific requirements, configuration, and troubleshooting for passkeys in Microsoft Authenticator for Microsoft Entra ID.

Documentation change

Enable passkeys in Authenticator

This article lists steps to enable and enforce use of passkeys in Authenticator for Microsoft Entra ID. First, you update the Authentication methods policy to allow users to register and sign in with passkeys in Authenticator. Then you can use Conditional Access authentication strengths policies to enforce passkey sign-in when users access a sensitive resource.

This article covers Authenticator-specific requirements and configuration for passkeys in Microsoft Authenticator for Microsoft Entra ID.

Requirements

Before you follow the steps in this article, enable passkeys and create a passkey profile. For steps, see Enable passkeys (FIDO2) in Microsoft Entra ID.

Prerequisites for passkeys in Authenticator

  • Android 14 and later or iOS 17 and later.
  • For cross-device registration and authentication:
    • Make sure that Bluetooth and an active internet connection are enabled on both devices.

To learn more about FIDO2 support, see Support for FIDO2 authentication with Microsoft Entra ID.

To learn more about FIDO2 support, see Support for FIDO2 authentication with Microsoft Entra ID.

Enable passkeys in Authenticator in the admin center

Configure a profile for passkeys in Authenticator

  1. Sign in to the Microsoft Entra admin center as at least an Authentication Policy Administrator.

  2. Browse to Entra ID > Authentication methods.

  3. On the Authentication methods | Policies page, select Passkey (FIDO2) > Configure.

  4. Select + Add profile.

    :::image type="content" border="true" source="media/how-to-authentication-passkey-profiles/add-passkey-profile.png" alt-text="Screenshot that shows how to add a passkey profile." lightbox="media/how-to-authentication-passkey-profiles/add-passkey-profile.png":::

  5. Enter a Name for the profile, such as Authenticator passkeys.

  6. Choose whether to Enforce attestation. For more information, see Authenticator attestation.

  7. For Passkey types, select Device-bound.

  8. Select Target specific AAGUIDS and set Behavior to Allow.

  9. Select + Add AAGUID > Microsoft Authenticator and Save.

    :::image type="content" border="true" source="media/how-to-enable-authenticator-passkey/authenticator-passkey-profile.png" alt-text="Screenshot that shows the Add passkey profile settings for Authenticator passkeys." lightbox="media/how-to-enable-authenticator-passkey/authenticator-passkey-profile.png":::

Enable and target groups for a profile for passkeys in Authenticator

  1. Sign in to the Microsoft Entra admin center as at least an Authentication Policy Administrator.

  2. Browse to Entra ID > Authentication methods.

  3. On the Authentication methods | Policies page, select Passkey (FIDO2) > Enable and target.

  4. On the Enable and Target tab, make sure Enable is On.

  5. Select Add target, and choose All users or Select targets to choose specific groups.

    :::image type="content" border="true" source="media/how-to-authentication-passkey-profiles/add-target.png" alt-text="Screenshot that shows how to add a target for a passkey profile." lightbox="media/how-to-authentication-passkey-profiles/add-target.png":::

  6. Select the profile for passkeys in Authenticator and Save.

  1. Sign in to the Microsoft Entra admin center as at least an Authentication Policy Administrator.
  2. Browse to Entra ID > Authentication methods > Authentication method policy.
  3. Under the method Passkey (FIDO2), select All users or Add groups to select specific groups. Only security groups are supported.
  4. On the Configure tab:
    • Set Allow self-service set up to Yes. If it's set to No, users can't register a passkey by using Security info, even if passkeys (FIDO2) are enabled by the Authentication methods policy.
    • Set Enforce attestation to Yes or No. Users can only register attested passkeys directly in the Authenticator app. Cross-device registration flows don't support registration of attested passkeys.

:::image type="content" border="true" source="media/how-to-authentication-passkey-profiles/enable-target-authenticator.png" alt-text="Screenshot that shows how to enable and target a profile for passkeys in Authenticator." lightbox="media/how-to-authentication-passkey-profiles/enable-target-authenticator.png":::

 When attestation is enabled in the passkey (FIDO2) policy, Microsoft Entra ID tries to verify the legitimacy of the passkey being created. When the user is registering a passkey in the Authenticator, attestation verifies that the legitimate Authenticator app created the passkey by using Apple and Google services. Here are more details:
 - **iOS**: Authenticator attestation uses the [iOS App Attest service](https://developer.apple.com/documentation/devicecheck/preparing-to-use-the-app-attest-service) to ensure the legitimacy of the Authenticator app before registering the passkey.
        
 - **Android**:
   - For Play Integrity attestation, Authenticator attestation uses the [Play Integrity API](https://developer.android.com/google/play/integrity/overview) to ensure the legitimacy of the Authenticator app before registering the passkey.
   - For Key attestation, Authenticator attestation uses [key attestation by Android](https://developer.android.com/privacy-and-security/security-key-attestation) to verify that the passkey being registered is hardware-backed.

Authenticator attestation

When you enable passkeys and create a passkey profile in the Microsoft Entra admin center, you can choose whether to enforce attestation. For general steps to configure passkey profiles, see Enable passkeys (FIDO2).

When attestation is enabled, Microsoft Entra ID verifies the legitimacy of the passkey being created. When the user is registering a passkey in the Authenticator, attestation verifies that the legitimate Authenticator app created the passkey by using Apple and Google services:

  • Key restrictions set the usability of specific passkeys for both registration and authentication. You can set Enforce key restrictions to No to allow users to register any supported passkey, including passkey registration directly in the Authenticator app. If you set Enforce key restrictions to Yes and already have active passkey usage, you should collect and add the AAGUIDs of the passkeys being used today.
  • iOS: Authenticator attestation uses the iOS App Attest service to ensure the legitimacy of the Authenticator app before registering the passkey.
  • Android:
    • For Play Integrity attestation, Authenticator attestation uses the Play Integrity API to ensure the legitimacy of the Authenticator app before registering the passkey.
    • For Key attestation, Authenticator attestation uses key attestation by Android to verify that the passkey being registered is hardware-backed.
 If you set **Restrict specific keys** to **Allow**, select **Microsoft Authenticator** to automatically add the Authenticator app AAGUIDs to the key restrictions list. You can also manually add the following AAGUIDs to allow users to register passkeys in Authenticator by signing in to the Authenticator app or by going through a guided flow on **Security info**:

Users can only register attested passkeys directly in the Authenticator app. Cross-device registration flows don't support registration of attested passkeys.

 - **Authenticator for Android**: `de1e552d-db1d-4423-a619-566b625cdc84`
 - **Authenticator for iOS**: `90a3ccdf-635c-4729-a248-9b709135078f`
        
 If you change key restrictions and remove an AAGUID that you previously allowed, users who previously registered an allowed method can no longer use it for sign-in.

Authenticator AAGUIDs

You can restrict users to use Authenticator passkeys by targeting the Authenticator Attestation Globally Unique Identifier (AAGUID) in the passkey profile.

:::image type="content" border="true" source="media/how-to-enable-authenticator-passkey/optional-settings.png" alt-text="Screenshot that shows Authenticator enabled for passkey."lightbox="media/how-to-enable-authenticator-passkey/optional-settings.png":::

If you prefer, you can also select + Add AAGUID and manually add the following AAGUIDs:

  1. After you finish the configuration, select Save.
  • Authenticator for Android: de1e552d-db1d-4423-a619-566b625cdc84
  • Authenticator for iOS: 90a3ccdf-635c-4729-a248-9b709135078f

If you see an error when you try to save, replace multiple groups with a single group in one operation, and then select Save again.

If you remove an AAGUID that you previously allowed, users who previously registered an allowed method can no longer use it for sign-in.

Enable passkeys in Authenticator by using Graph Explorer

In addition to using the Microsoft Entra admin center, you can also enable passkeys in Authenticator by using Graph Explorer. If you're assigned at least the Authentication Policy Administrator role, you can update the Authentication methods policy to allow the AAGUIDs for Authenticator.

In addition to using the Microsoft Entra admin center, you can enable passkeys in Authenticator by using Graph Explorer. If you're assigned at least the Authentication Policy Administrator role, you can update the Authentication methods policy to allow the AAGUIDs for Authenticator.

  1. To disable attestation enforcement and enforce key restrictions to allow only AAGUIDs for Authenticator, perform a PATCH operation by using the following request body:
  1. To enable attestation enforcement and enforce key restrictions to allow only AAGUIDs for Authenticator, perform a PATCH operation by using the following request body:
PATCH https://graph.microsoft.com/v1.0/authenticationMethodsPolicy/authenticationMethodConfigurations/FIDO2

Some organizations restrict Bluetooth usage, which includes the use of passkeys. In such cases, organizations can allow passkeys by permitting Bluetooth pairing exclusively with passkey-enabled FIDO2 authenticators. For more information about how to configure Bluetooth usage only for passkeys, see [Passkeys in Bluetooth-restricted environments](/windows/security/identity-protection/passkeys/?tabs=windows%2Cintune#passkeys-in-bluetooth-restricted-environments).

Delete a passkey

Troubleshoot passkeys in Authenticator

This section covers issues that users might see when they use passkeys in Authenticator and possible ways for administrators to resolve them.

Store passkeys in Android profiles

Passkeys on Android are used only from the profile where they're stored. If a passkey is stored in an Android Work profile, it's used from that profile. If a passkey is stored in an Android Personal profile, it's used from that profile. To make sure that users can access and use the passkey they need, users with both an Android Personal profile and an Android Work profile should create their passkeys in Authenticator for each profile.

Workarounds for an authentication strength Conditional Access policy loop

Users can get in a loop when they try to add a passkey in Authenticator if a Conditional Access policy requires phishing-resistant authentication to access All resources (formerly 'All cloud apps'). For example:

If a user deletes a passkey in Authenticator, the passkey is also removed from the user's sign-in methods. An Authentication Policy Administrator can also follow these steps to delete a passkey from the user's authentication methods, but it won't remove the passkey from Authenticator.

  • Condition: All devices (Windows, Linux, macOS, Windows, Android)
  • Targeted resource: All resources (formerly 'All cloud apps')
  • Grant control: Authentication strength – Require passkey in Authenticator
  1. Sign in to the Microsoft Entra admin center, and search for the user whose passkey must be removed.
  2. Select Authentication methods, right-click Passkey, and select Delete.

The policy forces targeted users to use a passkey to sign in to all cloud applications, which includes the Authenticator app. It requires users to use a passkey when they try to add a passkey in Authenticator on either Android or iOS.

Here are some workarounds:

  • You can filter for applications and transition the policy target from All resources (formerly 'All cloud apps') to specific applications. Start with a review of applications that are used in your tenant. Use filters to tag Authenticator and other applications.

  • To further reduce support costs, you can run an internal campaign to help users adopt passkeys before you enforce them. When you're ready to enforce passkey usage, create two Conditional Access policies:

    • A policy for mobile operating system (OS) versions
    • A policy for desktop OS versions

    Require a different authentication strength for each policy, and configure other policy settings listed in the following table. You can enable a Temporary Access Pass (TAP) for users or enable other authentication methods to help users register the passkey.

    A TAP limits the time when users can register a passkey. You can accept it only on mobile platforms where you allow passkey registration.

Conditional Access policy Desktop OS Mobile OS
Name Require a passkey in Authenticator to access a desktop OS. Require a TAP, a phishing-resistant credential, or any other specified authentication method to access a mobile OS.
Condition Specific devices (desktop operating systems). Specific devices (mobile operating systems).
Devices N/A. Android, iOS.
Exclude devices Android, iOS. N/A.
Targeted resource All resources. All resources.
Grant control Authentication strength. Authentication strength.1
Methods Passkey in Authenticator. TAP, passkey in Authenticator.
Policy result Users who can't sign in with a passkey in Authenticator are directed to the My Sign-ins wizard mode. After registration, they're asked to sign in to Authenticator on their mobile device. Users who sign in to Authenticator with a TAP or another allowed method can register a passkey directly in Authenticator. No loop occurs because the user meets the authentication requirements.

1For users to register new sign-in methods, your grant control for the mobile policy needs to match your Conditional Access policy to register Security info.

Users who can't register passkeys because of Require approved client app or Require app protection policy Conditional Access grant controls

Users can't register passkeys in Authenticator if they're included in the following Conditional Access policy:

  • Condition: All devices (Windows, Linux, macOS, Windows, Android)
  • Targeted resource: All resources (formerly 'All cloud apps')
  • Grant control: Require approved client app or Require app protection policy

The policy forces users to sign in to all cloud applications by using an app that supports Microsoft Intune app protection policies. Authenticator doesn't support this policy on either Android or iOS.

Here are some workarounds:

  • You can filter for applications and transition the policy target from All resources (formerly 'All cloud apps') to specific applications. Start with a review of applications that are used in your tenant. Use filters to tag appropriate applications.

  • You can use mobile device management (MDM) and the Require device to be marked as compliant control. Authenticator can satisfy this grant control if MDM fully manages the device and it's compliant. For example:

    • Condition: All devices (Windows, Linux, macOS, Windows, Android)
    • Targeted resource: All resources (formerly 'All cloud apps')
    • Grant control: Require approved client app, or Require app protection policy, or Require device to be marked as compliant
  • You can grant users a temporary exemption from the Conditional Access policy. Consider using one or more compensating controls:

    • Allow the exemption for only a limited period of time. Communicate to the user when they're allowed to register a passkey. Remove the exemption after the time period. Then direct users to call the help desk if they missed their time.
    • Use another Conditional Access policy to require that users register only from a specific network location or a compliant device.

Unless the user initiated the passkey deletion themselves in Authenticator, they need to also remove the passkey in Authenticator on their device.

Register a passkey in Authenticator

Enforce sign-in with passkeys in Authenticator

After an admin enables passkeys in Authenticator, users can register a passkey in the app on their iOS or Android device.

To make users sign in with a passkey when they access a sensitive resource, use the built-in phishing-resistant authentication strength, or create a custom authentication strength by following these steps:

For registration steps, see Register a passkey in Microsoft Authenticator.

  1. Sign in to the Microsoft Entra admin center as a Conditional Access Administrator.
  2. Browse to Entra ID > Authentication methods > Authentication strengths.
  3. Select New authentication strength.
  4. Provide a descriptive name for your new authentication strength.
  5. Optionally, provide a description.
  6. Select Passkeys (FIDO2), and then select Advanced options.
  7. Select Phishing-resistant MFA strength or add AAGUIDs for passkeys in Authenticator:

Sign in with a passkey in Authenticator

  • Authenticator for Android: de1e552d-db1d-4423-a619-566b625cdc84
  • Authenticator for iOS: 90a3ccdf-635c-4729-a248-9b709135078f

After registration, users can sign in to Microsoft Entra ID by using the passkey in Authenticator on their device.

  1. Select Next, and review the policy configuration.

Related content