PingOne

OIDC authentication

Adding Microsoft as an external identity provider (IdP) gives your users the option to sign on with their Microsoft accounts when accessing your application.

Registering your application with Microsoft

To set up Microsoft as an external IdP for your application, you’ll need to register the application with Microsoft. Learn more in Quickstart to registering an app in the Microsoft Entra documentation.

Before you begin

Ensure that you have:

  • A Microsoft Entra account with an active subscription

  • An Entra tenant

Steps

  1. Go to the Microsoft Entra admin center.

    If you don’t have a Microsoft Entra account, you can create one now.

  2. On the left, expand Identity > Applications

  3. Click App registrations.

  4. At the top, click New registration.

  5. In the Name field, enter a user-facing display name for the application.

  6. For Supported account types, select Accounts in this organizational directory only (Ping Identity only - Single tenant) or Accounts in any organizational directory and personal Microsoft accounts, depending on the needs of your organization.

    Select the Single tenant option if you’re only working with identities from your environment.

  7. Under Redirect URI, select Web as the platform and enter the authorization URL of your PingOne environment.

    The format is <issuer>/as/authorize. You can also find this URL when you go to the Configuration tab of any OIDC application in the PingOne admin console and look under the URLs section.

  8. Click Register.

Enabling the implicit grant

Set the grant type in Microsoft Entra.

Steps

  1. Go to the Microsoft Entra admin center.

  2. In the App registrations section, select your application.

  3. Go Manage > Authentication.

  4. Select the ID tokens option under Implicit grant and hybrid flows.

  5. Click Save.

Getting the client ID and client secret for your application

When you register your application with Microsoft, Microsoft generates an application (client) ID and application secret for the application.

You’ll copy these values and enter them into PingOne.

Steps

  1. Go to the Microsoft Entra admin center.

  2. In the App registrations section, select your application.

  3. On the left, click Certificates & secrets.

  4. In the Client secrets section, click New client secret.

  5. Enter the following:

    1. Description: A brief characterization of the client secret.

    2. Expires: Select the duration of the certificate, based on the needs of your organization.

  6. Click Add.

  7. In the Client secrets section, locate the value for the appropriate secret and copy it to a secure location.

  8. On the left, click Overview.

  9. Locate the Application (client) ID and copy it to a secure location.

Setting up API permissions

Set up Microsoft as an external IdP for your application and enable permissions for your application.

Steps

  1. Go to the Microsoft Entra admin center.

  2. In the App registrations section, select your application.

  3. On the left, click API permissions.

  4. Click Add a permission.

  5. Click Microsoft Graph.

  6. Click Delegated permissions and expand Openid permissions.

  7. Select the following:

    • email

    • offline_access

    • openid

    • profile

    • User.Read

      User.Read is included by default and should remain selected.

  8. Click Add permissions.

Adding Microsoft as an identity provider in PingOne

Configure the identity provider connection in PingOne.

Steps

  1. In PingOne, go to Integrations → Provisioning.

  2. Click Add Provider.

  3. Click Microsoft.

  4. On the Create Profile page, enter the following information:

    • Name: A unique identifier for the IdP.

    • Description: (Optional). A brief description of the IdP.

    You cannot change the icon and login button, in accordance with the provider’s brand standards.

  5. Click Continue.

  6. On the Configure IDP Connection page, enter the following information:

    • Client ID: The application ID from the IdP that you copied earlier. You can find this information on the Microsoft Entra admin center.

    • Client secret: The application secret from the IdP that you copied earlier. You can find this information on the Microsoft Entra admin center.

  7. Click Save and Continue.

  8. On the Map Attributes page, define how the PingOne user attributes are mapped to IdP attributes. Learn more in Mapping attributes.

    • Enter the PingOne user profile attribute and the external IdP attribute. Learn more about attribute syntax in Identity provider attributes.

    • To add an attribute, click Add attribute.

    • To use the expression builder, click Build and test or Advanced Expression. Learn more in Using the expression builder.

    • Select the update condition, which determines how PingOne updates its user directory with the values from the IdP. The options are:

      • Empty only: Update the PingOne attribute only if the existing attribute is empty.

      • Always: Always update the PingOne directory attribute.

  9. Click Save and Finish.

Adding the redirect URI to the Microsoft Entra admin center

Copy the value for redirect URI from PingOne and enter it into the Microsoft Entra admin center.

Steps

  1. In PingOne, go to Integrations → External IdPs.

  2. Locate the appropriate IdP and then click the More Options icon to expand the IdP.

  3. Click the Connection tab. Copy the Callback URL and paste it in a secure location.

  4. Go to the Microsoft Entra admin center.

  5. In the App registrations section, select your application.

  6. On the left, click Overview.

  7. For Redirect URIs, click Add a Redirect URI.

  8. For Platform configurations, click Add a platform.

  9. In the Web applications section, click Web.

  10. For Redirect URIs, enter the value that you copied from PingOne.

  11. Click Configure.

Next steps