Use an authentication JWT for token fulfillment
This activity shows you how to use information from a source authentication JWT to add claims to the PingOne token. For more information about token fulfillment, refer to Use an authentication JWT for token fulfillment in the PingOne API Reference.
The following operations are supported by the PingOne APIs:
-
Create an application
-
Create a custom resource, a custom scope, and an attribute mapping
-
Create a user
-
Initiate an authorize request
-
Use flow APIs to complete the login
-
Submit a token request
-
Run the token introspection endpoint to view the claim added from the authentication JWT
Prerequisites
Get an access token from the worker application that you created in Create an admin Worker app connection. To get a token from a different worker application in an alternate sandbox environment, run the token request endpoint using the client ID and client secret of your chosen worker app to authenticate the request. For more information, refer to Get a PingOne admin access token.
Workflow order of operations
To configure this workflow, you must complete the following tasks:
-
Make a
POSTrequest to/environments/{{envID}}/applicationsto add a new application to the specified environment. -
Make a
GETrequest to/environments/{{envID}}/applications/{{appID}}/secretto return the new application’s secret attribute. -
Make a
POSTrequest to/environments/{{envID}}/resourcesto define a custom resource. -
Make a
POSTrequest to/environments/{{envID}}/resources/{{resourceID}}/scopesto define a scope for the custom resource. -
Make a
POSTrequest to/environments/{{envID}}/resources/{{resourceID}}/attributeto define a resource attribute mapping. -
Make a
POSTrequest to/environments/{{envID}}/applications/{{appID}}/grantsto create the access grant for the application. -
Make a
POSTrequest to/environments/{{envID}}/populationsto create a new population resource. -
Make a
POSTrequest to/environments/{{envID}}/usersto create a user. -
Make a
PUTrequest to/environments/{{envID}}/users/{{userID}}/passwordto set the new user’s password. -
Make a
GETrequest to/{{envID}}/as/authorizeto submit the authorize request. -
Make a
GETrequest to/{{envID}}/flows/{{flowID}}to initiate the sign-on flow. -
To complete the login action, make a
POSTrequest to/{{envID}}/flows/{{flowID}}and provide the user’s login credentials. -
Make a
GETrequest to/{{envID}}/as/resume?flowId={{flowID}}to call the resume endpoint and return the auth code. -
Make a
POSTrequest to/{{envID}}/as/tokento exchange the auth code for an access token. -
To verify that the token includes the specified property from the authentication JWT, make a
POSTrequest to/{{envID}}/as/introspectto return the token claims.
Click the Run in Postman button below to fork, or download and import, the Postman collection for this workflow to your workspace.