Forgerock Identity Cloud

The following guide takes you through the process of enabling passwordless biometric authentication on Forgerock Identity Cloud to provide enhanced passwordless authentication experience to users

Keyless and Forgerock have partnered to deliver true passwordless authentication for the workforce and for consumers.

This document provides a step-by-step introduction for configuring Forgerock to work with Keyless. In this guide Keyless will be set up as both an OpenID Connect service provider and a OpenID Connect identity provider (Social Identity Provider) for Forgerock Identity Cloud.

Authentication: Configure Social Identity Provider

All configuration will be performed on Forgerock Identity Cloud Platform Admin Console.

  1. Log on to Forgerock Identity Cloud Platform Admin console for your tenant:

  2. From Platform Admin Console Dashboard select the realm we will be doing this configuration for, and navigate to Native Consoles -> Access Management

  3. From Dashboard click on Services tile and click on Social Identity Provider Service Link

  4. Click on Secondary Configurations tab and click on Add a Secondary Configuration dropdown select OIDC Provider

  5. Select a name for out IdP client configuration: the table below provides a list on configuration items that need to be filled in

  1. ensure that we click the Save button to save our IdP configuration and click enabled toggle button on top to have our IdP configuration active/enabled

  2. Following is a sample normalization script (groovy) for our Keyless Social IdP

    // Normalization script for Keyless Social IdP
    import static org.forgerock.json.JsonValue.field
    import static org.forgerock.json.JsonValue.json
    import static org.forgerock.json.JsonValue.object
    
    return json(object(
    field("mail", rawProfile.preferred_username),
    field("alias",selectedIdp + '-' +
        rawProfile.preferred_username.asString() ),
    ))
  3. Next we'll need to configure an authentication Tree to enable our Social authentication: from realm dashboard select Authentication --> Trees --> Create Tree and provide a name: e.g. KeylessAuth

  4. At this point you can access Forgerock Identity Cloud end user dashboard: you'll be prompted to authenticate with Keyless (as Keyless is the only authentication mechanism configured in this specific Auth tree as shown above)

    https://<my-forgerock-tenant>/am/XUI/?realm=/<my-realm-name>\&authIndexType=service\&authIndexValue=<my-Auth-Tree-Name>#/
  5. Here's an alternative sample auth tree that provides options for both password based & Keyless (passwordless) authentication

Keyless Enrollment: OIDC SP/RP Configuration

For enrollment with Keyless we'll need to create a new Application on Forgerock Identity Cloud for Keyless OIDC Service provider.

  1. From our realm dashboard select Applications --> OAuth 2.0 --> Clients --> Add Client

  2. Fill in the information required as described below:

    • Client ID: Provide a client ID: e.g. KeylessEnrollmentClient,

    • Client Secret: generate a client secret

      • If ClientID & Secret is provided by Keyless (that is enrollment service has already been created for you by Keyless) we'll be using those to populate the parameters above.

      • If we are creating our own ClientID & Client Secret then, both ClientID & Secret need to be sent back to Keyless for configuration on the Keyless Enrollment service.

    • Redirection URIs: A list of redirection URIs for your Keyless tenant has been provided by Keyless

    • Scope & Default Scope enter the following: openid profile cn mail

  3. Click Create button and continue

  4. Click on Advanced tab and configure the following:

    • Grant Types select : Authorization_Code & Implicit

    • Token Endpoint AUthentication Method select: client_s__s_ecret_post_

    • Custom Properties type in the following: preferred_username=mail

  5. Click on OIDC tab and configure the following

    • Client Session URI: this is provided by Keyless

    • Post Logout Redirect URI: this is provided by Keyless

    • Backchannel Logout URI: this is provided by Keyless

    • Post Logout Redirect URI: this is configured based on our realm name e.g. https://<\<forgerock-tenant>>/enduser/?realm=<\<realm-name>>#/dashboard

  6. Click Save and that completes OIDC client configuration.

If we are creating our own ClientID & Client Secret then, both ClientID & Secret need to be sent back to Keyless for configuration on the Keyless Enrollment service

Keyless Enrollment

After completing the configuration steps above to configure Keyless OIDC SP/RP for enrollment we can now enrol for Keyless authentication

  1. From a browser navigate to Keyless enrollment URL provided by Keyless

  2. Authenticate using your credentials for Forgerock Identity Cloud

  3. Browser will get redirected to Keyless enrollment page

  4. Download Keyless authenticator app on your mobile device from AppStore or Google play

  5. Scan the QR code displayed on Keyless enrolement page with your mobile device to complete Keyless enrollment

Keyless Authentication

From a browser navigate to an application secured via Forgerock Identity Cloud SSO solution. For example Forgerock Identity Cloud end user dashboard: https://>/am/XUI/?realm=/<>\&authIndexType=service\&authIndexValue=<>#/

  1. Click on Continue with Keyless button

  2. Provide your email enrolled with Keyless already

  3. You'll receive a notification on you mobile device to complete biometic authentication using Keyless

Last updated