Before you start
OpenID Connect Discovery Endpoint
Acronis platform provides a global OpenID Connect discovery endpoint that returns the configuration information according to the OpenID Connect Discovery specification. This discovery endpoint allows CyberApp clients to dynamically retrieve the OpenID Connect configuration, including authorization endpoints, token endpoints, supported scopes, and other metadata required for SSO authentication.
Endpoint URL: https://global.acronis.cloud/.well-known/openid-configuration
This endpoint returns the following configuration data:
{
"issuer": "https://cloud.acronis.com",
"authorization_endpoint": "https://global.acronis.cloud/api/idp/v1/authorize",
"token_endpoint": "https://global.acronis.cloud/api/idp/v1/token",
"jwks_uri": "https://global.acronis.cloud/api/idp/v1/keys",
"response_types_supported": [
"code"
],
"subject_types_supported": [
"public"
],
"id_token_signing_alg_values_supported": [
"RS256"
],
"scopes_supported": [
"openid",
"email",
"profile",
"offline_access",
"phone",
"address",
"roles",
"tenants"
],
"token_endpoint_auth_methods_supported": [
"client_secret_basic"
],
"claims_supported": [
"aud",
"email",
"exp",
"iat",
"iss",
"name",
"sub"
],
"backchannel_logout_supported": true,
"backchannel_logout_session_supported": true,
"end_session_endpoint": "https://global.acronis.cloud/api/idp/v1/logout",
"userinfo_endpoint": "https://global.acronis.cloud/api/idp/v1/userinfo"
}
SSO Authentication Flow
To authenticate the user with single sign-on, you should:
Set up an endpoint that will be used to initiate the SSO login. | The endpoint should accept a query parameter with the tenant ID from which the user attempts to initiate SSO.
Set up an endpoint to which the user will be redirected with the SSO login result.
- Generate a URL to the authorization endpoint and redirect the user to that URL with the following data specified in its query string parameters:You can discover the authorization endpoint URL dynamically by calling the discovery endpoint described in the OpenID Connect Discovery Endpoint section. Use the
authorization_endpointvalue from the discovery response and specify the following query string parameters:A client ID in the
client_idquery string parameter.- A redirect URL in the
redirect_uriquery string parameter.This must be an endpoint that will process the SSO login result. Specify the following scopes in the
scopequery string parameter:openidrolesto receive access roles that the user has in Acronis.tenantsto receive the list of tenants where the user is located in Acronis.
A unique random string in the
stateparameter.[For PKCE] Specify the following parameters:
Specify the
S256method in thecode_challenge_methodquery string parameter.Specify the base64-encoded SHA-256-encrypted value in the
code_challengequery string parameter. Keep the plain value for token exchange.
Next step: Exchanging code.