Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Warning

WIP

Apple can be used as a federated authenticator in WSO2 Identity Server.  

How it works

When a user attempts to log in to a client application through Apple Sign In:

  1. The client application initiates the authentication flow by redirecting the browser communicating with WSO2 Identity Server.
  2. WSO2 Identity Server redirects the user to the Apple Sign authorization endpointIn page.
  3. Apple authenticates the user and redirects the user back to the client application WSO2 Identity Server with an authorization code.
  4. The client application WSO2 Identity Server sends the authorization code to the Apple Sign In token endpoint and requests an ID token in return.
  5. Apple validates the client application's client ID, client secret, and authorization code and responds with an ID token, access token, and refresh token.
  6. The client application 

...

  1. WSO2 Identity Server validates the received ID token and extracts the authenticated user information.
  2. WSO2 Identity Server completes the authentication flow by redirecting back to the client application with the authenticated user information.

Image Added

Configurations

Follow the steps below to configure WSO2 Identity Server to authenticate users using their Apple credentials. 

...

Configuring the identity provider

Follow the steps below to To configure WSO2 Identity Server as an identity provider that uses Apple for federated authentication:

  1. On the Main tab of the Management Console, click Identity > Identity Providers > Add
    Add Identity Provider menu-itemImage Added
    Enter the required basic information as given belowThe Add New Identity Provider screen appears.
    Add New Identity Provider screenImage Added
  2. Enter a meaningful name in the Identity Provider Name text box, e.g., AppleSignIn

  3. Under Federated Authenticators, click OAuth2/OpenID Connect Configuration, and enter the required values as given below.   

    Image Added

    FieldDescriptionSample Value
    Enable OAuth2/OpenIDConnectSelecting this option enables OAuth2/OpenID Connect to be used as an authenticator for users provisioned to WSO2 Identity Server.Selected
    DefaultSelecting this option signifies that OAuth2/OpenID Connect is used as the main/default form of authentication. Selecting this removes the selection made for any other Default checkboxes for other authenticators.Selected
    Client IdThis is the client key of your Apple application.8437ce9b8cfdf282c92bidp.demologin.com
    Client SecretThis is the client secret of your Apple application.7219bb5e92f4287cb5134b73760e039e55d235d
    Authorization Endpoint URLThis is the authorization endpoint URL pertaining to Apple Sign In.https://appleid.apple.com/auth/authorize
    Token Endpoint URLThis is the token endpoint URL pertaining to Apple Sign In.https://appleid.apple.com/auth/token
    Callback URLThis is the service provider's URL to which authorization codes are sent. Upon successful authentication, the browser should be redirected to this URL. The URL should be specified in the following format: https://:/acshttps://localhost/callback
    Userinfo Endpoint URLThis is not relevant for this feature.-
    OpenID Connect User ID LocationThis is not relevant for this feature.-
    Additional Query ParametersThese are the additional query parameters that are necessary to authenticate users through Apple Sign In.scope=openid email
    Enable HTTP basic auth for client authenticationThis is not relevant for this feature.Unselected
    Warning

    Make sure to keep it unselected.

  4. Click Register

You have successfully added the identity provider. 

Configuring the service provider

Follow the steps below to To configure the client application as a service provider in WSO2 Identity Server.:

  1. In the Main menu of the WSO2 Identity Server Management Console, click Identity > Service Providers > Add

    Add Service Provider menu-itemImage Added

    The Add New Service Provider screen appears.

    Add New Service Provider screenImage Added

  2. Enter a meaningful name for the client application in the Service Provider Name text box and click Register. The Service Providers screen appears. 

    Service Providers screenImage Added

  3. Click Inbound Authentication Configuration section and configure based on the authentication protocol that is required for the client application. 

    Inbound Authentication Configuration optionsImage Added

    Tip

    If your client application uses OpenID Connect, click OAuth/OpenID Connect Configuration > Configure

    1. Enter

    the
    1. the callback URL

    or
    1.  or your Apple application.

    2. Click Register. Note that you will be redirected to the Service Providers screen

    1. , which displays the client key and client secret.

    Info

    For more information on inbound authentication configurations, see Configuring Inbound Authentication for a Service Provider.

  4. Click Under Local and Outbound Authentication Configuration.For the Authentication Type, make sure the  section, select Federated Authentication as the Federated Authentication radio button is selected, and then select the identity provider as AppleSignIn

    Local and Outbound Authentication ConfigurationImage Added

  5. Click Update to save the changes.

You have now successfully added and configured the service provider.

...

titleRelated Topics

...

You can now try to log in to the client application with your Apple ID.