You can implement user-based single sign-on (SSO) or role-based SSO to log on to the Alibaba Cloud Management Console from the identity provider (IdP) of your enterprise. SSO is also known as identity federation.
Background information
Alibaba Cloud supports Security Assertion Markup Language (SAML) 2.0-based SSO. This feature is also known as identity federation. To help you better understand SSO, the following table explains the terms that are related to SAML and SSO.
Term | Description |
identity provider (IdP) | A RAM entity that provides identity management services. IdPs are classified into the following types:
|
service provider (SP) | An application that uses the identity management feature of an IdP to provide users with specific services. An SP uses the user information that is provided by an IdP. In specific identity systems, such as OIDC, that are not based on the SAML protocol, SP is known as the relying party of an IdP. |
Security Assertion Markup Language 2.0 (SAML 2.0) | A protocol that is designed for enterprise-level user identity authentication. SAML 2.0 is used for communication between an SP and an IdP. SAML 2.0 is a standard that enterprises use to implement enterprise-level SSO. |
SAML assertion | A core element that is defined in the SAML protocol. This element describes the authentication request and response. For example, the SAML assertion for an authentication response can contain user attributes. |
trust | A mutual trust relationship between an SP and an IdP. In most cases, the trust relationship is established by using public and private keys. An SP can obtain the SAML metadata of a trusted IdP. The metadata includes a public key. The SP uses the public key to verify the integrity of the SAML assertion that is issued by the IdP. |
OIDC | An authentication protocol that is developed based on Open Authorization (OAuth) 2.0. For more information, see OIDC and OAuth 2.0. OAuth is an authorization protocol. OIDC adds an identity layer to extend OAuth. This way, OIDC can use OAuth for authorization. OIDC also allows clients to verify the identities of users and use an HTTP RESTful API to obtain basic information about the users. |
OIDC token | An identity token that is issued by OIDC to an application. An OIDC token is an identity token that indicates a logon user. An OIDC token can be used to obtain the basic information about a logon user. |
client ID | An ID that is generated for an application when you register the application in an external IdP. When you apply for an OIDC token from an external IdP, you must use a client ID. The client ID is specified in the |
fingerprint | The fingerprint that is generated based on the HTTPS certificate of an external IdP. You can use a fingerprint to prevent the URL of the issuer from being hijacked or tampered with. Alibaba Cloud calculates the fingerprint. We recommend that you calculate the fingerprint on your computer. For example, you can use OpenSSL to calculate the fingerprint. Then, you can compare the calculation result with the calculation result provided by Alibaba Cloud. For more information about OpenSSL, visit the official website of OpenSSL. If the calculation results are different, the URL of the issuer may have been attacked. Make sure that you enter a valid fingerprint. |
URL of an issuer | The URL of an issuer that is provided by an external IdP. The URL is indicated by the |
STS token | A temporary identity credential that is provided by Alibaba Cloud Security Token Service (STS). STS allows you to manage temporary credentials for your Alibaba Cloud resources. You can configure a validity period and specify access permissions for an STS token. For more information about STS, see What is STS? |
SSO methods
You can implement SSO between Alibaba Cloud and your IdP, such as AD FS, based on SAML 2.0. Alibaba Cloud provides the following two SAML 2.0-based SSO methods:
User-based SSO: The RAM user that you can use to log on to the Alibaba Cloud Management Console is determined based on an SAML assertion. After you log on to the Alibaba Cloud Management Console, you can access Alibaba Cloud resources as a RAM user.
Role-based SSO: The RAM role that you can use to log on to the Alibaba Cloud Management Console is determined based on an SAML assertion. After you log on to the Alibaba Cloud Management Console, you can use the RAM role specified in the SAML assertion to access Alibaba Cloud resources.
For more information about the differences between the two SSO methods, see Scenarios of SSO.
Implement user-based or role-based SSO
User-based SSO: For more information, see Overview of user-based SSO.
The following examples describe how to implement user-based SSO between your enterprise services and Alibaba Cloud by using IdPs, such as AD FS, Okta, and Azure AD:
Role-based SSO: For more information, see Overview.
The following examples describe how to implement role-based SSO between your enterprise services and Alibaba Cloud by using IdPs, such as AD FS, Okta, and Azure AD:
Add RAM users
After SSO is configured, add other RAM users that want to use DMS to the DMS console at a time as a DMS administrator. To add the RAM users, perform the following steps: Log on to the DMS console. In the top navigation bar, choose Add a user.
. On the Users tab, click Synchronize RAM User. For more information, seeThe RAM users that have the AdministratorAccess permission are automatically initialized as DMS administrators. Other RAM users are initialized as regular users. For more information about DMS system roles, see System roles.
Example
The following example shows you how to implement SSO between your enterprise services and Alibaba Cloud by using AD FS.
Open the Alibaba Cloud logon page and click Sign in as RAM User.
Enter the username of a RAM user and click Next.
Log on to Alibaba Cloud as prompted.
On the Overview tab of the Alibaba Cloud Management Console, click Data Management.
You are navigated to the DMS console.