This document uses the OpenID Connect (OIDC) protocol as an example to explain how to configure single sign-on (SSO).
For more information about the SSO protocols that IDaaS supports, see Standard protocols.
IDaaS support for OIDC grant types
You can select one or more of the following grant types:
Pattern | Description |
Client mode client_credentials | The client credentials grant type allows an application to use its You do not need to select this grant type. It is enabled if API access for the application is enabled. |
Authorization code authorization_code | This is the most common logon mode for OIDC applications in IDaaS. The application delegates logon to IDaaS and parses the |
Refresh token refresh_token | Supports using a |
Device device | The device grant type is often used for integrating non-B/S architecture applications. When a device cannot directly display the IDaaS logon page, it allows the user to use a browser to help complete the logon flow. |
For standard web applications, select the Authorization code and Refresh token grant types.
For applications that are not web-based, select the Device and Refresh token grant types.
IDaaS does not currently support other OIDC grant types. If you need another grant type, you can submit a request. We will schedule its implementation based on priority.
IDaaS-side configuration
| Field | Description | Example |
Basic configuration (required) | Authorization mode | Select the pattern for the application. | Multiple selection: Authorization code Multiple selection: Refresh token |
Logon Redirect URIs | A whitelist of redirect URIs. When an application requests to log on, it includes a | http://www.example.com/oidc/sso http://www.example.com/oidc/sso2 | |
Authorization scope | For more information, see SSO overview. | Select: All users can access | |
Advanced configuration (optional) | User information scope scopes | The logged-on user's information that can be obtained from the user information endpoint after logon.
| Multiple selection: openid Multiple selection: email Multiple selection: profile |
PKCE | This option is available when the Authorization code grant type is selected. When enabled, the Authorization code grant type uses the more secure Proof Key for Code Exchange (PKCE) extension flow. | Disabled by default | |
code validity period |
|
| |
Code Challenge method | This option is available after you enable PKCE. It specifies the generation method for the Code Challenge in the PKCE extension. This field is not displayed if PKCE is disabled. | - | |
access_token validity period | The | 2 hours | |
id_token validity period | The | 10 hours | |
refresh_token validity period | Used to obtain a new | 30 days | |
Extend id_token fields | You can extend the payload field in the Note Fields added to the payload are publicly visible. Use this feature as needed. | - | |
id_token signature algorithm | The asymmetric algorithm used to sign the | RSA-SHA256 | |
SSO initiator | Specifies whether user access is initiated by the application or can also be initiated from the portal. | Application-initiated only | |
Logon initiation URL | If SSO initiator is set to support portal and application initiation, you can enter a logon initiation URL. This is the application URL that IDaaS calls to initiate an SSO request. When this URL receives the request, it must immediately redirect to the IDaaS /authorize endpoint. | - |
Application-side configuration
The OIDC protocol enables applications to complete the entire logon and authentication flow using a series of standard interfaces that IDaaS provides.
The following table describes these interfaces:
Field name | Description | Example |
Issuer | A field in the | https://xxxxx.aliyunidaas.com.cn/oidc1 |
Discovery endpoint Discovery | Used to obtain information about the endpoints, modes, and parameters that IDaaS supports. This endpoint is publicly accessible. | https://xxxxx.aliyunidaas.com.cn/oidc1/.well-known/openid-configuration |
Authorization endpoint Authorization | The address where the application initiates an SSO logon. | https://xxxxx.aliyunidaas.com.cn/oidc/authorize |
Token endpoint token | During the SSO flow, after the application obtains an authorization | https://xxxxx.aliyunidaas.com.cn/oidc/token |
Public key endpoint for signature verification JWKS | The public key endpoint used to verify the | https://xxxxx.aliyunidaas.com.cn/oidc1/jwks |
Userinfo endpoint Userinfo | After logon, use this endpoint with an | https://xxxxx.aliyunidaas.com.cn/oidc1/userinfo |
End session endpoint SLO | Logs the user off from the main IDaaS logon session. | https://xxxxx.aliyunidaas.com.cn/oidc1/logout |