全部產品
Search
文件中心

Identity as a Service:通過SCIM同步Okta使用者或使用者組

更新時間:Dec 09, 2025

在企業上雲過程中,為降低維護和管理成本,通常需要將內部系統的帳號同步至雲端。通過SCIM(跨域身份管理系統)協議,結合阿里雲IDaaS的OAuth應用安全授權,您可以將Okta中的使用者或使用者組同步到阿里雲IDaaS,實現統一的身份管理。

適用範圍

  • 許可權:具備阿里雲IDaaS的管理員權限,以及Okta執行個體的超級管理員(Super Administrator)許可權。

  • 環境:Okta執行個體已啟用SCIM 2.0支援。且已建立阿里雲IDaaS的EIAM執行個體。

步驟一:在 IDaaS 的應用中配置SCIM同步

  1. 登入阿里雲IDaaS控制台,單擊左側導覽列的EIAM 云身份服务,在右側IDaaS下的執行個體列表中,定位目標執行個體,單擊操作列下的访问控制台

  2. 应用身份服务頁面的左側導覽列中,選擇应用管理 > 应用列表定位目標應用(标准协议自研应用)並進入其詳情頁。如需建立标准协议自研应用請參見建立應用

  3. 在應用詳情頁,參考IDaaS與應用間賬戶同步進行相關配置。

    重要

    請確保在IDaaS應用中已啟用API 开放image

  4. 在應用詳情頁,擷取以下資訊:

    • Bearer Token:在账户同步 > 应用同步到IDaaS下,單擊Bearer Token後的查看,複製並記錄顯示的Token。

    • SCIM Base URL:在账户同步 > 应用同步到IDaaS下,複製並記錄SCIM Base URL欄位中顯示的URL。

  5. 單擊左側導覽列的登录,在右側的密码策略 > 复杂度中根據實際需求設定合適的密碼原則。

    說明

    為確保密碼同步化成功,Okta 的密碼原則必須嚴於或等同於 IDaaS 的密碼原則。例如,若 IDaaS 要求密碼至少8位且包含特殊字元,而 Okta 僅要求6位,則不符合 IDaaS 要求的密碼將同步失敗。因此,啟用密碼同步化前,請確保 Okta 的密碼原則滿足 IDaaS 的所有要求。

步驟二:在Okta建立應用

  • 若已在Okta中建立支援SAML SSO的應用,請直接進入步驟三。

  • 如需建立新應用,可參考:在Okta建立支援SAML SSO的應用。應用建立完成後進入步驟三。

步驟三:在 Okta 中配置 SCIM 整合

啟用 SCIM 配置

進入Okta 應用的詳情頁面,選擇General頁簽,在App Settings地區右上方,單擊Edit,設定 ProvisioningSCIM。最後單擊Saveimage

配置SCIM串連

  1. 配置串連資訊。

    單擊Provisioning頁簽,在SCIM Connection地區,單擊Edit並配置以下相關參數。

    • SCIM connector base URL :設定為步驟一中擷取的 SCIM Base URL

    • Unique identifier field for users:填寫userName

    • Supported provisioning actions:選擇Push New UsersPush Profile UpdatesPush Groups,用於推送新使用者、設定檔更新和組資訊。

    • Authentication Mode:選擇 HTTP Header

    • Authorization: 設定為步驟一中擷取的 Bearer Token

  2. 測試連接是否成功。

    單擊Test Connector Configuration,當提示Connector Configured successfully時,表示串連成功。

  3. 測試成功後,單擊Save

配置使用者同步策略

  1. 選擇Provisioning > To App,單擊Provisioning to App右側的Edit

  2. 啟用Create UsersUpdate User AttributesDeactivate Users

  3. 設定Sync Password

    • 不啟用:為使用者產生隨機密碼並從 Okta 同步到目標應用。

    • 啟動:需選擇Password type

      • Sync a randomly generated password:為使用者產生隨機密碼並從 Okta 同步到目標應用。

      • Sync Okta Password:將使用者在 Okta 中的賬戶登入密碼同步化到目標應用,使使用者在 Okta 與目標應用中使用同一密碼。

  4. 確認和設定Okta的密碼原則。

    單擊左側導覽列的Security > Authenticators,在Setup下,尋找NamePassword的行,單擊Actions > Edit,即可設定密碼原則。

    說明

    為確保密碼同步化成功,Okta 的密碼原則必須嚴於或等同於 IDaaS 的密碼原則。例如,若 IDaaS 要求密碼至少8位且包含特殊字元,而 Okta 僅要求6位,則不符合 IDaaS 要求的密碼將同步失敗。因此,啟用密碼同步化前,請確保 Okta 的密碼原則滿足 IDaaS 的所有要求。

  5. 配置完成後,單擊Save

配置使用者屬性對應

通過屬性對應,Okta可將使用者資料推送到IDaaS,實現使用者資訊的自動設定與更新。在Provisioning > To AppAttribute Mappings地區,進行如下操作。

同步基礎屬性

在屬性對應列表中,單擊最右側的image按鈕,刪除不相關的屬性對應,僅保留下圖所示的屬性對應。0d7a604f2f42c85a03a17db8b869a3f9

同步其它屬性(可選)

說明

請根據實際需求進行配置。以下樣本示範如何將 Okta 使用者的 postalAddress 欄位同步到 IDaaS 的扩展字段User Address

  1. 在IDaaS中新增扩展字段

    1. 在IDaaS 应用身份服务账户 > 字段管理 > 扩展字段,單擊创建字段

    2. 配置欄位資訊。

      • 字段显示名称:在使用者資訊等頁面顯示的名稱,便於查看和管理。例如:User Address

      • 字段标识:系統使用的唯一識別碼。例如:user_address

      • 字段类型:欄位的輸入類型。例如:輸入框。

    3. 在IDaaS 應用詳情頁,單擊账户同步 > 应用同步到IDaaS > 显示高级配置,設定如下資訊。

      • 自定义字段Namespaceurn:ietf:params:scim:schemas:extension:customfield:2.0:User

      • 同步目标字段:指定需同步的目標欄位,支援設定多個。例如:User Address(user_address)

    4. 單擊保存

  2. 在Okta中增加屬性對應。

    1. 在Okta的Profile Editor頁面,單擊Attributes地區下的Add Attribute

    2. 設定屬性資訊。

      • 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

    3. 單擊Save

    4. 設定屬性對應。

      1. 單擊Attributes地區下的Mappings,在彈出的面板中選擇Okta User to [目標應用程式名稱]

      2. 在右側列表底部找到目標屬性(例如:user_address),從左側下拉式清單中選擇Okta的使用者資訊欄位(例如:user.postalAddress)。

      3. 單擊 Save Mappings,隨後單擊Apply updates

同步處理的使用者和使用者組

  • 同步處理的使用者。

    1. 進入Okta 應用的詳情頁面,選擇Assignments頁簽,單擊Assign > Assign to People

    2. 定位需要同步的使用者,單擊其所在行的Assign

    3. Assign [目標應用程式名稱] to People頁面,根據實際需求修改相關屬性,隨後依次單擊Save and Go BackDone

  • 同步處理的使用者組。

    1. 進入Okta 應用的詳情頁面,選擇Push Groups頁簽,單擊Push Groups > Find groups by name

    2. 輸入使用者組名稱並選擇目標使用者組,單擊Save。當Push StatusPushing變為Active時,表示使用者組同步成功。

步驟四:驗證同步效果

  1. 登入阿里雲IDaaS控制台,單擊目標執行個體的访问控制台進入应用身份服务管理後台。

  2. 單擊左側導覽列的账户 > 账户与组织,即可在右側账户列表中查看同步成功的使用者。其来源顯示為SCIM 导入

    說明

    若當前已設定從Okta同步處理的使用者資訊至IDaaS的扩展字段,則可單擊使用者的账户名,進入账户详情,在账户信息 > 扩展字段地區查看。

  3. 單擊左側導覽列的账户 > ,即可在右側列表中查看同步成功的組。其来源顯示為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 的所有要求。

  • 啟用密碼同步化

    1. 在Okta應用詳情頁,進入 Provisioning 選項卡。開啟 Sync Password

    2. 根據需求選擇密碼類型:

      • Sync a randomly generated password:為每個使用者產生隨機密碼並同步至IDaaS。

      • Sync Okta Password:將使用者在Okta中的登入密碼同步化到IDaaS。

  • 設定密碼原則

    • IDaaS中設定密碼原則:登入IDaaS控制台,單擊目標執行個體的访问控制台,進入应用身份服务管理後台。單擊左側導覽列的登录,即可在右側的密码策略 > 复杂度中設定密碼原則。

    • Okta中設定密碼原則:在Okta的Admin Console,單擊左側導覽列的Security > Authenticators,在Setup下,尋找NamePassword的行,單擊Actions > Edit,即可設定密碼原則。

如何觸發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中,管理員需要手動清理這些資料。