在企业上云过程中,为降低维护和管理成本,通常需要将内部系统的账号同步至云端。通过SCIM(跨域身份管理系统)协议,结合阿里云IDaaS的OAuth应用安全授权,您可以将Okta中的用户或用户组同步到阿里云IDaaS,实现统一的身份管理。
适用范围
权限:具备阿里云IDaaS的管理员权限,以及Okta实例的超级管理员(Super Administrator)权限。
环境:Okta实例已启用SCIM 2.0支持。且已创建阿里云IDaaS的EIAM实例。
步骤一:在 IDaaS 的应用中配置SCIM同步
登录阿里云IDaaS控制台,单击左侧导航栏的EIAM 云身份服务,在右侧IDaaS下的实例列表中,定位目标实例,单击操作列下的访问控制台。
在应用身份服务页面的左侧导航栏中,选择,定位目标应用(标准协议或自研应用)并进入其详情页。如需创建标准协议或自研应用,请参见创建应用。
在应用详情页,参考IDaaS与应用间账户同步进行相关配置。
重要请确保IDaas里API开放状态为已启用。

在应用详情页,获取以下信息:
Bearer Token:在下,单击Bearer Token后的查看,复制并记录显示的Token。
SCIM Base URL:在下,复制并记录SCIM Base URL字段中显示的URL。
单击左侧导航栏的登录,在右侧的中根据实际需求设置合适的密码策略。
说明为确保密码同步成功,Okta 的密码策略必须严于或等同于 IDaaS 的密码策略。例如,若 IDaaS 要求密码至少8位且包含特殊字符,而 Okta 仅要求6位,则不符合 IDaaS 要求的密码将同步失败。因此,启用密码同步前,请确保 Okta 的密码策略满足 IDaaS 的所有要求。
步骤二:在Okta创建应用
若已在Okta中创建支持SAML SSO的应用,请直接进入步骤三。
如需创建新应用,可参考:在Okta创建支持SAML SSO的应用。应用创建完成后进入步骤三。
步骤三:在 Okta 中配置 SCIM 集成
启用 SCIM 配置
进入Okta 应用的详情页面,选择General页签,在App Settings区域右上角,单击Edit,设置 Provisioning为 SCIM。最后单击Save。
配置SCIM连接
配置连接信息。
单击Provisioning页签,在SCIM Connection区域,单击Edit并配置以下相关参数。
测试连接是否成功。
单击Test Connector Configuration,当提示Connector Configured successfully时,表示连接成功。
测试成功后,单击Save。
配置用户同步策略
选择,单击Provisioning to App右侧的Edit。
启用Create Users、Update User Attributes、Deactivate Users。
设置Sync Password。
不启用:为用户生成随机密码并从 Okta 同步到目标应用。
启动:需选择Password type。
Sync a randomly generated password:为用户生成随机密码并从 Okta 同步到目标应用。
Sync Okta Password:将用户在 Okta 中的账户登录密码同步到目标应用,使用户在 Okta 与目标应用中使用同一密码。
确认和设置Okta的密码策略。
单击左侧导航栏的,在Setup下,查找Name为Password的行,单击,即可设置密码策略。
说明为确保密码同步成功,Okta 的密码策略必须严于或等同于 IDaaS 的密码策略。例如,若 IDaaS 要求密码至少8位且包含特殊字符,而 Okta 仅要求6位,则不符合 IDaaS 要求的密码将同步失败。因此,启用密码同步前,请确保 Okta 的密码策略满足 IDaaS 的所有要求。
配置完成后,单击Save。
配置用户属性映射
通过属性映射,Okta可将用户数据推送到IDaaS,实现用户信息的自动配置与更新。在的Attribute Mappings区域,进行如下操作。
同步基础属性
在属性映射列表中,单击最右侧的
按钮,删除不相关的属性映射,仅保留下图所示的属性映射。
同步其它属性(可选)
请根据实际需求进行配置。以下示例演示如何将 Okta 用户的 postalAddress 字段同步到 IDaaS 的扩展字段User Address。
在IDaaS中新增扩展字段。
在IDaaS 应用身份服务的,单击创建字段。
配置字段信息。
字段显示名称:在用户信息等页面显示的名称,便于查看和管理。例如:
User Address。字段标识:系统使用的唯一标识符。例如:
user_address。字段类型:字段的输入类型。例如:输入框。
在IDaaS 应用详情页,单击,设置如下信息。
自定义字段Namespace:
urn:ietf:params:scim:schemas:extension:customfield:2.0:User。同步目标字段:指定需同步的目标字段,支持设置多个。例如:
User Address(user_address)。
单击保存。
在Okta中增加属性映射。
在Okta的Profile Editor页面,单击Attributes区域下的Add Attribute。
设置属性信息。
Display name:在 Okta 管理界面中显示的名称,便于管理员识别。例如:
User Address。Variable name:在 Okta 系统内部使用的唯一、不可变的标识符,用于 API 和表达式引用。必须和IDaaS中的字段标识保持一致。例如:
user_address。Data type:属性类型。必须与IDaaS中字段的数据类型匹配。例如:
string。External name:在外部系统中对应的字段名称。必须和IDaaS中的字段标识保持一致。例如:
user_address。External namespace:用于限定External name所属架构或标准的唯一标识,避免命名冲突。必须和IDaaS应用中设置的自定义字段Namespace保持一致。设置为:
urn:ietf:params:scim:schemas:extension:customfield:2.0:User。
单击Save。
设置属性映射。
单击Attributes区域下的Mappings,在弹出的面板中选择Okta User to [目标应用名称]。
在右侧列表底部找到目标属性(例如:
user_address),从左侧下拉列表中选择Okta的用户信息字段(例如:user.postalAddress)。单击 Save Mappings,随后单击Apply updates。
同步用户和用户组
同步用户。
进入Okta 应用的详情页面,选择Assignments页签,单击。
定位需要同步的用户,单击其所在行的Assign。
在Assign [目标应用名称] to People页面,根据实际需求修改相关属性,随后依次单击Save and Go Back和Done。
同步用户组。
进入Okta 应用的详情页面,选择Push Groups页签,单击。
输入用户组名称并选择目标用户组,单击Save。当Push Status由Pushing变为Active时,表示用户组同步成功。
步骤四:验证同步效果
登录阿里云IDaaS控制台,单击目标实例的访问控制台,进入应用身份服务管理后台。
单击左侧导航栏的,即可在右侧账户列表中查看同步成功的用户。其来源显示为SCIM 导入。
说明若当前已设置从Okta同步用户信息至IDaaS的扩展字段,则可单击用户的账户名,进入账户详情,在区域查看。
单击左侧导航栏的,即可在右侧组列表中查看同步成功的组。其来源显示为SCIM 导入。
常见问题
创建用于同步的Okta应用是什么类型?
在Okta中创建用于与阿里云IDaaS同步的应用时,应选择SAML 2.0。此类型的应用允许通过标准的SCIM协议来同步用户和组信息。
若未启用Okta同步密码,是否仍会同步密码?
若未启用密码同步,Okta在通过SCIM创建用户时仍会在请求中包含 password 字段,但其值为随机生成的占位符,非用户真实密码。详情请参见Okta SCIM 2.0用户创建与密码同步指南。
为什么发送占位符:
满足部分系统对SCIM协议的格式要求(某些系统强制要求
password字段存在)。避免因缺少字段导致创建请求被拒绝。
对实际使用的影响:
目标应用的密码认证流程不受此占位符影响,用户需通过其他方式(如手动重置、独立密码策略)设置实际密码。
占位符密码无实际意义,不会泄露或匹配用户真实凭证,无需额外处理。
Okta密码同步的逻辑是什么?如何处理密码强度不一致导致的同步失败?
为确保密码同步成功,Okta 的密码策略必须严于或等同于 IDaaS 的密码策略。例如,若 IDaaS 要求密码至少8位且包含特殊字符,而 Okta 仅要求6位,则不符合 IDaaS 要求的密码将同步失败。因此,启用密码同步前,请确保 Okta 的密码策略满足 IDaaS 的所有要求。
启用密码同步:
在Okta应用详情页,进入 Provisioning 选项卡。开启 Sync Password。
根据需求选择密码类型:
Sync a randomly generated password:为每个用户生成随机密码并同步至IDaaS。
Sync Okta Password:将用户在Okta中的登录密码同步到IDaaS。
设置密码策略:
IDaaS中设置密码策略:登录IDaaS控制台,单击目标实例的访问控制台,进入应用身份服务管理后台。单击左侧导航栏的登录,即可在右侧的中设置密码策略。
Okta中设置密码策略:在Okta的Admin Console,单击左侧导航栏的,在Setup下,查找Name为Password的行,单击,即可设置密码策略。
如何触发Okta用户的同步操作?
自动同步: 配置完成后,当用户被分配到Okta中的IDaaS应用时,系统自动发起同步。
手动推送: 管理员可以通过Okta界面手动触发用户或用户组的同步操作。例如,点击Push Groups页签,选择用户组并点击Save,系统会自动开始同步并将状态由Pushing变为Active。
事件驱动同步: 当用户属性发生变化时(如新增、修改、删除),Okta会根据配置的Push Profile Updates选项自动触发同步。
是否支持删除已同步的Okta用户或用户组?取消授权同步会产生什么影响?
删除Okta中的用户或用户组:
若在Okta中删除某个用户或用户组,该变更会根据配置同步到IDaaS中。
RAM用户无启用/禁用状态,因此即使Okta中标记为“Inactive”的用户,也不会在RAM中被禁用或删除。
IDaaS不支持直接同步Okta对用户的“Inactive”状态,因此同步到RAM的用户不做变更。
取消授权同步:
如果在Okta中取消某个用户的应用授权,该用户将不再同步到IDaaS中。此时,IDaaS中的对应用户记录不会被删除,但会被标记为未授权状态。
取消授权后,用户的相关数据(如账户信息、组信息等)将停留在IDaaS中,管理员需要手动清理这些数据。