全部产品
Search
文档中心

应用身份服务:SetApplicationSsoConfig - 设置一个EIAM应用的单点登录SSO配置

更新时间:Sep 09, 2026

设置一个EIAM应用的单点登录SSO配置属性。

接口说明

在 EIAM 中,应用管理支持添加多种单点登录 SSO 协议(SAML 2.0 和 OIDC)的应用,但是一个应用支持的 SSO 协议只能有一种,且在创建时指定后不可更改。您根据当前的应用支持的 SSO 协议类型,指定对应的 SSO 配置属性参数。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

调试

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。

  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。

  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:

    • 对于必选的资源类型,用前面加 * 表示。

    • 对于不支持资源级授权的操作,用全部资源表示。

  • 条件关键字:是指云产品自身定义的条件关键字。

  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。

操作

访问级别

资源类型

条件关键字

关联操作

eiam:SetApplicationSsoConfig

create

*Application

acs:eiam:{#regionId}:{#accountId}:instance/{#InstanceId}/application/{#ApplicationId}

无 无

请求参数

名称

类型

必填

描述

示例值

InstanceId

string

是

实例 ID。

idaas_ue2jvisn35ea5lmthk267xxxxx

ApplicationId

string

是

应用 ID。

app_mkv7rgt4d7i4u7zqtzev2mxxxx

SamlSsoConfig

object

否

SAML 协议的应用 SSO 属性配置参数。

AssertionSigned

boolean

否

Assertion 是否需要签名。ResponseSigned 和 AssertionSigned 不能同时为 false。

  • true:需要签名。

  • false:不需要签名。

true

AttributeStatements

array<object>

否

在 SAML 断言中包含的额外用户属性配置。

object

否

AttributeName

string

否

SAML 断言中属性的 Name。

https://www.aliyun.com/SAML-Role/Attributes/RoleSessionName

AttributeValueExpression

string

否

SAML 断言中的属性取值表达式。

user.username

DefaultRelayState

string

否

默认 RelayState 取值。当用户的单点登录 SSO 请求是由 EIAM 发起时,EIAM 提供的 SAML Response 会指定 RelayState 为当前值。

https://home.console.alibabacloud.com

IdPEntityId

string

否

SAML 协议中代表 IdP 身份的 Entity Id。支持 URL 格式和 URN 格式。

https://example.com/

NameIdFormat

string

否

SAML 协议标准的 NameID 格式,取值可选范围:

  • urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified:未指定的,由应用自行决定解析 NameID。

  • urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress:Email 地址格式。

  • urn:oasis:names:tc:SAML:2.0:nameid-format:persistent:持久化的 NameID。

  • urn:oasis:names:tc:SAML:2.0:nameid-format:transient:瞬时的 NameID。

枚举值:

  • urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified :

    未指定的,默认值。

  • urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress :

    Email 地址格式

  • urn:oasis:names:tc:SAML:2.0:nameid-format:persistent :

    持久化的。

  • urn:oasis:names:tc:SAML:2.0:nameid-format:transient :

    瞬时的。

urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified

NameIdValueExpression

string

否

SAML 协议的 NameID 真实取值生成表达式。

user.email

OptionalRelayStates

array<object>

否

可选的 RelayState 配置。

object

否

可选的 RelayState 配置。

DisplayName

string

否

RelayState 的显示名称。

Ram

RelayState

string

否

RelayState 取值。

https://ram.console.alibabacloud.com/

RequireAuthnRequestSigned

boolean

否

SSO AuthnRequest 验签开关,默认 false。置 true 时要求已配置 spSigningCertificates(数组非空)。

false

ResponseSigned

boolean

否

Response 是否需要签名。ResponseSigned 和 AssertionSigned 不能同时为 false。

  • true:需要签名。

  • false:不需要签名。

true

SignatureAlgorithm

string

否

SAML 断言签名算法。

枚举值:

  • RSA-SHA256 :

    RSA-SHA256 算法

RSA-SHA256

SpEntityId

string

否

应用(SP)的 SAML 的 EntityId。

urn:alibaba:cloudcomputing

SpSigningCertificates

array

否

SP 验签证书(PEM 格式)数组,最多 2 个,SSO 和 SLO 共用。写入时逐个校验格式与有效性,超过 2 个拒绝。

-----BEGIN CERTIFICATE----- MIIC0jCCAbqgAwIBAgIQXXXXX -----END CERTIFICATE-----

string

否

SP 验签证书(PEM 格式)。

-----BEGIN CERTIFICATE----- MIIC0jCCAbqgAwIBAgIQXXXXX -----END CERTIFICATE-----

SpSloResponseUrl

string

否

SP 侧接收 LogoutResponse 的回发地址,可选。

https://example.com/api/slo/response

SpSsoAcsUrl

string

否

应用(SP)的 SAML 断言消费地址。

https://signin.alibabacloud.com/saml-role/sso

OidcSsoConfig

object

否

OIDC 协议的应用 SSO 属性配置参数。

AccessTokenEffectiveTime

integer

否

签发的 access token 有效时间,单位为秒,默认 1200 秒(20 分钟)。

1200

AllowedPublicClient

boolean

否

应用是否允许作为公共客户端请求 IDaaS EIAM 授权服务器。只支持授权码模式和设备模式启用,默认为 false。

true

CodeEffectiveTime

integer

否

签发的 code 有效时间,单位为秒,默认为 60 秒(1 分钟)。

60

CustomClaims

array<object>

否

自定义 id token 返回包含的用户信息。

object

否

ClaimName

string

否

返回的 claim 名称。

"Role"

ClaimValueExpression

string

否

返回的 claim 取值表达式。

user.dict.applicationRole

GrantScopes

array

否

OIDC 协议标准参数 scope,用于指定 userinfo 端点或者 id_token 可以返回的用户属性范围。

profile,email

string

否

OIDC 协议标准参数 scope,用于指定 userinfo 端点或者 id_token 可以返回的用户属性范围,取值可选范围:

  • openid:OIDC 标准参数,用户唯一 id。

  • profile:用户详细信息。

  • email:用户邮箱信息。

  • phone:用户手机信息。

openid

GrantTypes

array

否

支持的 OIDC 协议授权模式列表。

authorization_code

string

否

支持的 OIDC 协议授权模式,取值可选范围:

  • authorization_code:授权码模式。

  • implicit:隐式模式。

  • refresh_token:令牌刷新模式。

  • urn:ietf:params:oauth:grant-type:device_code:设备模式。

  • password:密码模式。

authorization_code

IdTokenEffectiveTime

integer

否

签发的 id token 有效时间,单位为秒,默认为 300 秒(5 分钟)。

300

PasswordAuthenticationSourceId

string

否

密码模式使用的身份认证源 ID,当且仅当 OIDC 协议应用指定的 GrantTypes 包含 password 模式才生效。

ia_password

PasswordTotpMfaRequired

boolean

否

密码模式是否强制需要 TOTP 二次认证,当且仅当 OIDC 协议应用指定的 GrantTypes 包含 password 模式才生效。

true

PkceChallengeMethods

array

否

PKCE 中计算 Code Challenge 的算法。

S256

string

否

PKCE 中计算 Code Challenge 的算法,取值可选范围:

  • plain:原文。

  • S256:SHA 256 算法。

S256

PkceRequired

boolean

否

应用 SSO 是否强制要求 PKCE(RFC 7636)。

true

PostLogoutRedirectUris

array

否

应用支持 Logout 登出回调地址列表。

string

否

应用的 Logout 登出回调白名单地址,应用发起 Logout 请求时可以指定 post_logout_redirect_uri 参数。

https://example.com/oidc/logout/callback

RedirectUris

array

否

应用支持的 RedirectUri 列表。

string

否

应用支持的 RedirectUri。

https://example.com/oidc/login/callback

RefreshTokenEffective

integer

否

签发的 refresh token 有效时间,单位为秒,默认为 86400 秒(1 天)。

86400

ResponseTypes

array

否

当 OidcSsoConfig.GrantTypes 包含指定 implicit 隐式模式后,应用支持的返回类型。

token id_token

string

否

OIDC 协议标准参数 ResponseType,只有指定了 GrantTypes 包含 implicit 隐式模式才生效,取值可选范围:

  • token:只返回 access token。

  • id_token:只返回 id token。

  • token id_token:同时返回 access token 和 id token。

token id_token

SubjectIdExpression

string

否

自定义 id token 返回的 sub 取值表达式。

user.userid

InitLoginType

string

否

初始化单点登录 SSO 方式,取值可选范围:

  • only_app_init_sso:仅应用发起 SSO,OIDC 协议应用默认取值。当 SAML 应用指定为该方式时,InitLoginUrl 必须指定。

  • idaas_or_app_init_sso:支持 IDaaS 门户或者应用发起 SSO,SAML 协议应用默认取值范围。当 OIDC 协议指定为该方式时,InitLoginUrl 必须指定。

only_app_init_sso

InitLoginUrl

string

否

初始化单点登录 SSO 触发地址。 当 OIDC 协议类型应用设置 InitLoginType 为 idaas_or_app_init_sso 时,必须指定该参数。 当 SAML 协议类型应用设置 InitLoginType 为 only_app_init_sso 时,必须指定该参数。

http://127.0.0.1:8000/start_login?enterprise_code=ABCDEF

ClientToken

string

否

保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持 ASCII 字符,且不能超过 64 个字符。更多信息,请参见如何保证幂等性。

client-examplexxx

返回参数

名称

类型

描述

示例值

object

RequestId

string

请求 ID。

0441BD79-92F3-53AA-8657-F8CE4A2B912A

示例

正常返回示例

JSON格式

{
  "RequestId": "0441BD79-92F3-53AA-8657-F8CE4A2B912A"
}

错误码

访问错误中心查看更多错误码。

变更历史

更多信息,参考变更详情。