To user the XignIn-Manager as OpenId Connect provider, the following URLs might be helpful:
| Endpoint | url |
|---|---|
| OpenId-Configuration | https://xign.me/.well-known/openid-configuration |
| Issuer | https://xign.me |
| Authorization Endpoint | https://xign.me/openid/authenticate |
| Token Endpoint | https://xign.me/openid/token |
| JWKS Endpoint | https://xign.me/openid/jwks |
| User Info Endpoint | https://xign.me/openid/user |
The following OpenId Connect flows are currently supported:
| status | OpenId Connect Specification | |
|---|---|---|
| Authorization Code Flow | SUPPORTED | https://openid.net/specs/openid-connect-core-1_0.html#CodeFlowAuth |
| Implicit Flow | UNDER CONSTRUCTION | https://openid.net/specs/openid-connect-core-1_0.html#ImplicitFlowAuth |
| Hybrid Flow | UNDER CONSTRUCTION | https://openid.net/specs/openid-connect-core-1_0.html#HybridFlowAuth |
The OpenId Connect process contains the following steps:
| attribute | description |
|---|---|
| clientId | REQUIRED. The client id will be provided from the XignIn-Manager if an service was created (see: services) |
| redirectUri | REQUIRED. Redirection URI to which the response will be sent. This URI MUST exactly match one of the Redirection URI values for the Client pre-registered at the OpenID Provider. The redirectUri is provided from the third party client and should be entered in the XignIn-Manager |
| scope | REQUIRED. OpenID Connect requests MUST contain the openid scope value. Can contain some more scopes (see: ScopeClaims) |
| prompt | should be login |
| nonce | OPTIONAL. String value used to associate a Client session with an ID Token, and to mitigate replay attacks. (see: NonceNotes) |
| state | RECOMMENDED. Opaque value used to maintain state between the request and the callback. |
| claims | OPTIONAL. This parameter is used to request that specific Claims be returned. The value is a JSON object listing the requested Claims. (see: ClaimsParameter) |
| request | OPTIONAL. This parameter enables OpenID Connect requests to be passed in a single, self-contained parameter and to be optionally signed and/or encrypted. (see: JWTRequests) |
AuthorizationCode to retrieve the id-tokenAuthorizationCode and the stored clientId and ClientSecret the third party client performs a request to the XignIn-Manager to get some information about the authenticated user. (see: TokenEndpoint)To integrate XignIn, an OpenID Connect Provider (IDP) needs to be created
realm in which the IDP should be created
Fig. Select Realm
Identity Providers
Fig. Select OpenID Connect Protocol
| attribute | description |
|---|---|
| Alias | The alias for the IdP, internally used by XignIn Identity |
| Authorization URL | The URL, XignIn Identity sends the user-agent to, to authenticate the user. |
| Token URL | The URL, XignIn Identity retrieves the identity token from, after authentication |
| Client Authentication | Should be Client Secret as Basic Auth or Client Secret as Post |
| Client ID | The ID of the XignIn Identity client in the XignIn System (generated after registering the client with XignIn) |
| Client Secret | The Client Secret of the configured client in the XignIn System (generated after registering the client with XignIn) |
| Default Scopes | The scopes (i.e. the user attributes) that should be included in the identity token (set the value to profile email) |
If setting the Import External IDP Config-URL to
https://xign.me/.well-known/openid-configurationthen most of the required attributes will be set.
Setting XignIn as default IdP has the advantage that unauthenticated users will be directly redirected to XignIn, otherwise the user will be presented with a list, where he has to choose from all configured IdPs.
To configure XignIn as the default IdP follow these steps:
Fig. Set as Default IDP Step 2
Fig. Set as Default IDP Step 4
The Identity Provider can be configured to automatically create a xidentity user (if not already existing) when he first logs in with XignIn. To configure this behaviour, follow these steps:
Fig. Create new First Broker Login
Fig. Set new Default Broker Login
When authenticating via OpenID Connect for the first time, XignIn Identity applies following logic to the process:
Keycloak checks whether a user exists with the same e-mail address, which is delivered in the Identity Token
XignIn Identity has to be registered with XignIn prior to completing the configuration of the IdP. The Redirect URI, which has to be registered as well during the registration at XignIn will be of the form:
https://<xidentity-host>/auth/realms/<realm-name>/broker/oidc/endpoint
XignIn will redirect the user-agent to this URL, while appending an authorization code for retrieving the token response (i.e. the identity token)
As specified in the OpenId Connect specification the XignIn-Manager supports different Signature and Encryption methods to secure the id_token and the userinfo responses.
Signature algorithms
Encryption algorithms and modes