OAuth Service Provider
Configure a Service Provider that uses the OAUTH or OpenID Connect Protocol for authentication and/or authorization.
TrustBuilder will act as an (intermediary) Identity Provider for the Service Provider.
General Settings
Field | Description |
---|---|
GENERAL | |
Display Name | Enter the name of the Service Provider |
URL | Not used |
Description | Enter a description of the Service Provider |
Authentication Scheme | Select the Authentication Scheme which defines the IDP(s) that can authenticate a user for this Service Provider, and how the user can authenticate. |
Subject | Select the primary user attribute that is used to identify the user. |
Manage Certificates | Add a Certificate or Import a Certificate. |
OAUTH CLIENT SP SETTINGS | |
OAuth Policy | Select the OAuth Policy version 2.0. OAuth 2.1 is an in-progress effort to consolidate and simplify the most commonly used features of OAuth 2.0. |
Client ID | The input will be replaced by the Client ID which will be generated after clicking on Save & Close |
Callback URLs | Add a callback URL to which the response will be sent. This is the endpoint to which the authorization server redirects the user after authentication, allowing the Service provider to receive tokens and complete the authentication process. It is also known as a redirect URI. |
Request URIs | Add a request URI which is endpoint provided by the Service Provider to receive authorization responses from the authorization server. (OAuth setting) |
Propagate to attribute set | Check the box to propagate the scope attributes to attribute set. TrustBuilder will use the attribute set that contains all of the attributes defined in the incoming OpenID scope and the least additional attributes. See “How to propagate OIDC SP scope to match with SAML IdP attributes” |
Scopes | Check the box(es) for the relevant scope. Is Default? → If no scope is specified in the request, authorization for that scope will be requested by default. Multiple scopes can be marked as default. To add a new scope, go to Access Management > Scopes > +Add New Scope |
Client Profile | Select the profile of the client application according to its ability to preserve the confidentiality of credentials (client identifier and client secret).
|
Authorization Code Flow Enabled | Check the box to allow TrustBuilder to provide Authorization Code Grants Authorization Code Grants should be used when there is an actual user that can be asked to log in and approve access for the client. |
Use PKCE | Check the box to use PKCE during the authorization code grant. The PKCE is required with public client applications to ensure that the authorization code cannot be intercepted. |
Client Authentication Enabled | Allows TrustBuilder to provide Client Credentials Grants Client Credentials Grant are used in a machine-to-machine context, when there is no user to complete the log in procedure or to provide authorization. In this case the client will simply authenticate itself. |
Implicit flow enabled | Allows TrustBuilder to provide Implicit Grants. Implicit grants are intended to be used for user-agent-based clients (e.g. single page web apps) that can’t keep a client secret because all of the application code and storage is easily accessible. |
Token Exchange Grant enabled | Enables the use of a Token Exchange Grant Type. This grant allows the client to exchange access tokens. |
Token Exchange Allowed IDP's | Enabled when 'Token Exchange Grant enabled' is checked. This defines all the IDP's which are trusted; if the client provides a valid access token or assertion from this IDP; it will be accepted to exchange with the Token Exchange grant. |
Token Exchange Policy Workflow | Enabled when 'Token Exchange Grant enabled' is checked. |
JWT Bearer Grant enabled | Enables the use of a JWT Bearer Grant Type. This grant is used when the client wants to receive access tokens without transmitting sensitive information such as the client secret. This can also be used with trusted clients to gain access to user resources without user authorization. |
Resource Owner Credential Grant enabled | Allows the usage of a Resource Owner Credential grant. This grant is used for trusted first party clients both on the web and in native device applications. |
Access Token Type | Defines the type of Bearer Token that is dispensed. Supported types:
|
Access Token Time To Live | Defines the duration of how long the access token remains valid after dispensing it. |
Refresh Token Enabled | Allows TrustBuilder to dispense Refresh Tokens. A refresh token can be used to obtain a new Access Token, without asking the user to log in again. |
Refresh Token Time To Live | Defines the duration of how long the refresh token remains valid after dispensing it. |
ID Token Time To Live | Defines the duration of how long the ID Token remains valid after dispensing it. |
Client Authentication Type |
|
Cross Origin Request | Specify additional domains from which Cross-Origin Requests are accepted. Eg. |
Audience | Additional Audience(s) that this ID Token is intended for. |
Issuer | Defines who issues the ID Tokens. If left empty, the default |
JWKS URL | Instead of defining a trust certificate for the public keys of the client, it's possible to provide a JWKS url, where the current key can be fetched. |