You are viewing an earlier version of the admin guide. For the latest version, please visit EmpowerID Admin Guide v7.211.0.0.

Create an OAuth Provider Application

To consume the EmpowerID API from an application external to the platform, you need to create an OAuth Provider app for that application in EmpowerID. This integrates the application with EmpowerID and generates a unique API Key, Client Secret, and Client ID for it. You can then use that application for the OAuth Provider App for any third-party OAuth applications you register in EmpowerID.

Prerequisites

Your organization’s resources – like its user accounts, groups, mailboxes, etc., as well as the resources internal to EmpowerID – such as its workflows, applications, and pages – are protected application resources secured by various EmpowerID operations. These operations are protected code objects that when executed allow resources to be accessed in a way that is consistent with both the operation and the type of resource being accessed. Some examples include adding users to groups, creating mailboxes, updating user attributes, or even viewing the pages of the Web application. Before users can access a resource in a given way, their EmpowerID Person must have an access assignment for the operation or operations that allow them to do so. As API calls are essentially executions of EmpowerID operations via HTTP, the applications you register to call the API need to have an EmpowerID Person linked to them with the appropriate access. Otherwise, you will receive a 401: Unauthorized error. To facilitate API calls, your organization should create the requisite number of Person objects with the appropriate amount of access for the application’s intended purpose.

Create an OAuth Provider application

  1. On the navbar, expand Apps and Authentication and click Applications.

  2. On the Applications page, click the Create OAuth Application action link.

     

  3. On the General tab of the OAuth Provider Application Details page, fill in the following information:

    • Name – Name of the application

    • Display Name – Display name for the application

    • Description – A characterization of the application

    • Application Type – Select the appropriate application type from the drop-down; the default type is Web application.

    • Application Owner – By default, this is set to the person creating the app. You can change this by searching for and selecting another person.

    • Issuer – Defaults to EmpowerID; you can update the value to any string / URL you want.

    • Signing Certificate – Select a certificate with a private key from the EmpowerID certificate store

  4. Click Save.

    The system creates the application and directs the browser to the View One page for it.

Adding Client Secrets and Callback URLs to the application

  1. On the View One page for the application, expand the Client Secrets accordion and click the Add  button.

     

  2. Copy the string in the Client Secret field.
    Note: This is the only time you will see the entire string. Once you create the secret, the value is encrypted, and you will not be able to recover it.

     

  3. After you have copied and saved the Client Secret, enter the following information:

    1. Name – Name of the secret

    2. Expires – Select I Year, 2 Years, or Never.

  4. Click Save to create the secret.

     

  5. Expand the Callback URLs accordion and click the Add button.

     

  6. In the Callback URL field, enter https://<yourserver>/WebIdPForms/OAuth/V2, replacing <yourserver> with the FQDN of your EmpowerID Web server. Add any other Callback URLs supported by your application. Please note that Callback URLs are case-sensitive.

     

  7. Click Save.

How to configure advanced OAuth flows for the application

  1. After EmpowerID creates the application, click the Edit link on the View One page to put the application in edit mode.

     

  2. On the edit page for the application, select the Advanced Configuration tab.

     

  3. Under the OAuth Flow Details section, fill in the following details:

    • Domain Name (Device Code Flow) – If you use this application for OAuth Device Code Grant Type, enter the server domain name. Eg., sso.empoweriam.com

    • SAML Connection (SAML Bearer Assertion Grant) – If you use this application for OAuth SAML Bearer Assertion Grant Type, select an appropriate SAML connection from the drop-down

    • Enable Client Credential Flow – If you use this application for OAuth Client Credential Flow, enable this checkbox

    • Enable On-Behalf-Of Flow – If you use this application for On-Behalf-Of flow, enable this checkbox

 

Create an OAuth application