

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# SCIM 設定檔和 SAML 2.0 實作
<a name="scim-profile-saml"></a>

SCIM 和 SAML 都是設定 IAM Identity Center 的重要考量事項。

## SAML 2.0 實作
<a name="samlfederationconcept"></a>

IAM Identity Center 支援 [SAML （安全性聲明標記語言）](https://wiki.oasis-open.org/security) 2.0 的聯合身分。這可讓 IAM Identity Center 從外部身分提供者 (IdPs) 驗證身分。SAML 2.0 是一項開放標準，用於安全地交換 SAML 聲明。SAML 2.0 會在 SAML 授權單位 （稱為身分提供者或 IdP) 與 SAML 消費者 （稱為服務提供者或 SP) 之間傳遞使用者的相關資訊。IAM Identity Center 服務會使用此資訊來提供聯合單一登入。單一登入可讓使用者根據現有的身分提供者憑證來存取 AWS 帳戶 和設定應用程式。

IAM Identity Center 會將 SAML IdP 功能新增至您的 IAM Identity Center 存放區 AWS Managed Microsoft AD或外部身分提供者。然後，使用者可以單一登入支援 SAML 的服務，包括 AWS 管理主控台 和第三方應用程式Concur，例如 Microsoft 365、 和 Salesforce。

不過，SAML 通訊協定不提供查詢 IdP 以了解使用者和群組的方式。因此，您必須將使用者和群組佈建到 IAM Identity Center，讓 IAM Identity Center 知道這些使用者和群組。

## SCIM 設定檔
<a name="scim-profile"></a>

IAM Identity Center 支援跨網域身分管理 (SCIM) 2.0 版標準。SCIM 讓您的 IAM Identity Center 身分與 IdP 中的身分保持同步。這包括在您的 IdP 與 IAM Identity Center 之間佈建、更新和取消佈建使用者。

如需如何實作 SCIM 的詳細資訊，請參閱 [使用 SCIM 從外部身分提供者佈建使用者和群組](provision-automatically.md)。如需 IAM Identity Center SCIM 實作的其他詳細資訊，請參閱 [IAM Identity Center SCIM 實作開發人員指南](https://docs.aws.amazon.com/singlesignon/latest/developerguide/what-is-scim.html)。

**Topics**
+ [SAML 2.0 實作](#samlfederationconcept)
+ [SCIM 設定檔](#scim-profile)
+ [使用 SCIM 從外部身分提供者佈建使用者和群組](provision-automatically.md)
+ [輪換 SAML 2.0 憑證](managesamlcerts.md)

# 使用 SCIM 從外部身分提供者佈建使用者和群組
<a name="provision-automatically"></a>

IAM Identity Center 支援使用跨網域身分管理 (SCIM) 2.0 版通訊協定，將身分提供者 (IdP) 的使用者和群組資訊自動佈建 （同步） 至 IAM Identity Center。當您設定 SCIM 同步時，您可以建立身分提供者 (IdP) 使用者屬性與 IAM Identity Center 中具名屬性的映射。這會導致 IAM Identity Center 和 IdP 之間的預期屬性相符。您可以使用 IAM Identity Center 的 SCIM 端點和您在 IAM Identity Center 中建立的承載字符，在 IdP 中設定此連線。

**Topics**
+ [使用自動佈建的考量事項](#auto-provisioning-considerations)
+ [如何監控存取權杖過期](#access-token-expiry)
+ [產生存取權杖](generate-token.md)
+ [啟用自動佈建](how-to-with-scim.md)
+ [刪除存取權杖](delete-token.md)
+ [停用自動佈建](disable-provisioning.md)
+ [輪換存取字符](rotate-token.md)
+ [稽核和協調自動佈建的資源](reconcile-auto-provisioning.md)
+ [手動佈建](#provision-manually)

## 使用自動佈建的考量事項
<a name="auto-provisioning-considerations"></a>

開始部署 SCIM 之前，建議您先檢閱下列有關其如何與 IAM Identity Center 搭配使用的重要考量。如需其他佈建考量，請參閱[IAM Identity Center 身分來源教學課程](tutorials.md)適用於 IdP 的 。
+ 如果您要佈建主要電子郵件地址，則每個使用者的此屬性值必須是唯一的。在某些 IdPs中，主要電子郵件地址可能不是真正的電子郵件地址。例如，它可能是僅看起來像電子郵件的通用主體名稱 (UPN)。這些 IdPs可能有次要或「其他」電子郵件地址，其中包含使用者的真實電子郵件地址。您必須在 IdP 中設定 SCIM，將非空的唯一電子郵件地址對應至 IAM Identity Center 主要電子郵件地址屬性。而且，您必須將使用者非空的唯一登入識別符映射至 IAM Identity Center 使用者名稱屬性。檢查您的 IdP 是否有單一值同時是登入識別符和使用者的電子郵件名稱。如果是這樣，您可以將該 IdP 欄位映射到 IAM Identity Center 主要電子郵件和 IAM Identity Center 使用者名稱。
+ 若要讓 SCIM 同步運作，每個使用者都必須指定**名字**、**姓氏**、**使用者名稱**和**顯示名稱**值。如果使用者遺失任何這些值，將不會佈建該使用者。
+ 如果您需要使用第三方應用程式，您必須先將傳出 SAML 主體屬性映射至使用者名稱屬性。如果第三方應用程式需要可路由的電子郵件地址，您必須將電子郵件屬性提供給 IdP。
+ SCIM 佈建和更新間隔由您的身分提供者控制。只有在您的身分提供者將變更傳送至 IAM Identity Center 之後，您的身分提供者的使用者和群組變更才會反映在 IAM Identity Center 中。如需使用者和群組更新頻率的詳細資訊，請洽詢您的身分提供者。
+ 目前，不會使用 SCIM 佈建多值屬性 （例如指定使用者的多個電子郵件或電話號碼）。嘗試將多值屬性與 SCIM 同步至 IAM Identity Center 將會失敗。為了避免失敗，請確保每個屬性只傳遞一個值。如果您有具有多值屬性的使用者，請在 IdP 移除或修改 SCIM 中重複的屬性映射，以連線至 IAM Identity Center。
+ 確認 IdP 的 `externalId` SCIM 映射對應至使用者唯一、永遠存在且最不可能變更的值。例如，您的 IdP 可能會提供保證`objectId`或其他識別符，不受名稱和電子郵件等使用者屬性的變更影響。如果是這樣，您可以將該值映射到 SCIM `externalId` 欄位。如果您需要變更使用者的名稱或電子郵件，這可確保您的使用者不會遺失 AWS 權利、指派或許可。
+ 尚未指派給應用程式或 AWS 帳戶 無法佈建至 IAM Identity Center 的使用者。若要同步使用者和群組，請確定他們已指派給應用程式或其他代表 IdP 與 IAM Identity Center 連線的設定。
+ 使用者取消佈建行為由身分提供者管理，並可能因其實作而有所不同。如需取消佈建使用者的詳細資訊，請洽詢您的身分提供者。
+ 使用 IdP 的 SCIM 設定自動佈建之後，您無法再在 IAM Identity Center 主控台中新增或編輯使用者。如果您需要新增或修改使用者，您必須從外部 IdP 或身分來源執行此操作。

如需 IAM Identity Center SCIM 實作的詳細資訊，請參閱 [IAM Identity Center SCIM 實作開發人員指南](https://docs.aws.amazon.com/singlesignon/latest/developerguide/what-is-scim.html)。

## 如何監控存取權杖過期
<a name="access-token-expiry"></a>

SCIM 存取字符的產生有效期為一年。當您的 SCIM 存取權杖設定為在 90 天內過期時， 會在 IAM Identity Center 主控台和儀表板中 AWS 傳送提醒 AWS Health ，以協助您輪換權杖。透過在過期之前輪換 SCIM 存取權杖，您可以持續保護使用者和群組資訊的自動佈建。如果 SCIM 存取權杖過期，使用者和群組資訊從您的身分提供者同步到 IAM Identity Center 會停止，因此自動佈建無法再進行更新或建立和刪除資訊。中斷自動佈建可能會增加安全風險，並影響對您服務的存取。

Identity Center 主控台提醒會持續存在，直到您輪換 SCIM 存取權杖並刪除任何未使用的或過期的存取權杖為止。 AWS Health 儀表板事件每週續約 90 到 60 天、每週兩次從 60 到 30 天、每週三次從 30 到 15 天，以及每天 15 天，直到 SCIM 存取字符過期為止。

# 產生存取權杖
<a name="generate-token"></a>

使用下列程序在 IAM Identity Center 主控台中產生新的存取權杖。

**注意**  
此程序需要您先前已啟用自動佈建。如需詳細資訊，請參閱[啟用自動佈建](how-to-with-scim.md)。

**產生新的存取權杖**

1. 在 [IAM Identity Center 主控台](https://console.aws.amazon.com/singlesignon)中，選擇左側導覽窗格中**的設定**。

1. 在**設定**頁面上，選擇**身分來源**索引標籤，然後選擇**動作 > 管理佈建**。

1. 在**自動佈建**頁面的**存取字符**下，選擇**產生字符**。

1. 在**產生新的存取權杖**對話方塊中，複製新的存取權杖並將其儲存在安全的地方。

1. 選擇**關閉**。

# 啟用自動佈建
<a name="how-to-with-scim"></a>

使用下列程序，使用 SCIM 通訊協定，將使用者和群組從 IdP 自動佈建至 IAM Identity Center。

**注意**  
在開始此程序之前，建議您先檢閱適用於 IdP 的佈建考量。如需詳細資訊，請參閱 IdP [IAM Identity Center 身分來源教學課程](tutorials.md)的 。

**在 IAM Identity Center 中啟用自動佈建**

1. 完成先決條件後，請開啟 [IAM Identity Center 主控台](https://console.aws.amazon.com/singlesignon)。

1. 在左側導覽窗格中選擇**設定**。

1. 在**設定**頁面上，找到**自動佈建**資訊方塊，然後選擇**啟用**。這會立即在 IAM Identity Center 中啟用自動佈建，並顯示必要的 SCIM 端點和存取字符資訊。

1. 在**傳入自動佈建**對話方塊中，複製 SCIM 端點和存取字符。稍後在 IdP 中設定佈建時，您需要將這些項目貼入 。

   1. **SCIM 端點** - 例如，https://scim.*us-east-2*.amazonaws.com/*1111111111-2222-3333-4444-555555555*/scim/v2

   1. **存取字符** - 選擇**顯示字符**以複製值。
**警告**  
這是您唯一可以取得 SCIM 端點和存取權杖的時間。在繼續之前，請務必複製這些值。您將在本教學稍後輸入這些值，以設定 IdP 中的自動佈建。

1. 選擇**關閉**。

完成此程序後，您必須在 IdP 中設定自動佈建。如需詳細資訊，請參閱 IdP [IAM Identity Center 身分來源教學課程](tutorials.md)的 。

# 刪除存取權杖
<a name="delete-token"></a>

使用下列程序刪除 IAM Identity Center 主控台中的現有存取權杖。

**若要刪除現有的存取權杖**

1. 在 [IAM Identity Center 主控台](https://console.aws.amazon.com/singlesignon)中，選擇左側導覽窗格中**的設定**。

1. 在**設定**頁面上，選擇**身分來源**索引標籤，然後選擇**動作 > 管理佈建**。

1. 在**自動佈建**頁面的**存取字符**下，選取您要刪除的存取字符，然後選擇**刪除**。

1. 在**刪除存取權杖**對話方塊中，檢閱資訊，輸入 **DELETE**，然後選擇**刪除存取權杖**。

# 停用自動佈建
<a name="disable-provisioning"></a>

使用下列程序在 IAM Identity Center 主控台中停用自動佈建。

**重要**  
您必須先刪除存取權杖，才能開始此程序。如需詳細資訊，請參閱[刪除存取權杖](delete-token.md)。

**在 IAM Identity Center 主控台中停用自動佈建**

1. 在 [IAM Identity Center 主控台](https://console.aws.amazon.com/singlesignon)中，選擇左側導覽窗格中**的設定**。

1. 在**設定**頁面上，選擇**身分來源**索引標籤，然後選擇**動作 > 管理佈建**。

1. 在**自動佈建**頁面上，選擇**停用**。

1. 在**停用自動佈建**對話方塊中，檢閱資訊，輸入 **DISABLE**，然後選擇**停用自動佈建**。

# 輪換存取字符
<a name="rotate-token"></a>

IAM Identity Center 目錄一次最多支援兩個存取字符。若要在任何輪換之前產生額外的存取權杖，請刪除任何過期或未使用的存取權杖。

如果您的 SCIM 存取權杖即將過期，您可以使用下列程序在 IAM Identity Center 主控台中輪換現有的存取權杖。

**輪換存取字符**

1. 在 [IAM Identity Center 主控台](https://console.aws.amazon.com/singlesignon)中，選擇左側導覽窗格中**的設定**。

1. 在**設定**頁面上，選擇**身分來源**索引標籤，然後選擇**動作 > 管理佈建**。

1. 在**自動佈建**頁面的**存取字符**下，記下您要輪換的字符的字符 ID。

1. 請依照 中的步驟[產生存取權杖](generate-token.md)建立新的權杖。如果您已建立最大數量的 SCIM 存取權杖，您必須先刪除其中一個現有的權杖。

1. 前往您的身分提供者的網站，設定新的存取字符以進行 SCIM 佈建，然後使用新的 SCIM 存取字符測試與 IAM Identity Center 的連線。確認佈建使用新的字符成功運作後，請繼續此程序的下一個步驟。

1. 請依照 中的步驟[刪除存取權杖](delete-token.md)，刪除您先前記下的舊存取字符。您也可以使用字符的建立日期作為要移除字符的提示。

# 稽核和協調自動佈建的資源
<a name="reconcile-auto-provisioning"></a>

SCIM 可讓您自動將使用者、群組和群組成員資格從身分來源佈建至 IAM Identity Center。本指南可協助您驗證和協調這些資源，以維持準確的同步。

## 為什麼要稽核您的資源？
<a name="reconcile-auto-provisioning-why-audit"></a>

定期稽核有助於確保您的存取控制保持準確，且您的身分提供者 (IdP) 與 IAM Identity Center 保持適當同步。這對安全合規和存取管理尤其重要。

您可以稽核的資源：
+ 使用者
+ Groups (群組)
+ 群組成員資格

 您可以使用 AWS Identity Store [APIs](https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/welcome.html)或 [CLI 命令](https://docs.aws.amazon.com/cli/latest/reference/identitystore/)來執行稽核和調校。下列範例使用 AWS CLI 命令。如需 API 替代方案，請參閱 * Identity Store API 參考*中的[對應操作](https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Operations.html)。

## 如何稽核資源
<a name="how-to-audit-resources"></a>

以下是如何使用 AWS CLI 命令稽核這些資源的範例。

開始前，請確保您具備以下條件：
+ IAM Identity Center 的管理員存取權。
+ AWS CLI 已安裝並設定。如需詳細資訊，請參閱 [https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html)。
+ Identity Store 命令所需的 IAM 許可。

### 步驟 1：列出目前的資源
<a name="list-current-resources"></a>

您可以使用 檢視目前的 資源 AWS CLI。

**注意**  
 使用 時 AWS CLI，除非您指定 ，否則系統會自動處理分頁`--no-paginate`。如果您直接呼叫 API （例如，使用 SDK 或自訂指令碼），請在回應`NextToken`中處理 。這可確保您擷取跨多個頁面的所有結果。

**Example 適用於 使用者**  

```
aws identitystore list-users \
  --region REGION \
  --identity-store-id IDENTITY_STORE_ID
```

**Example 適用於 群組的**  

```
aws identitystore list-groups \
  --region REGION \
  --identity-store-id IDENTITY_STORE_ID
```

**Example 群組成員資格**  

```
aws identitystore list-group-memberships \
  --region REGION \
  --identity-store-id IDENTITY_STORE_ID
  --group-id GROUP_ID
```

### 步驟 2：與您的身分來源比較
<a name="compare-idenity-source"></a>

將列出的資源與您的身分來源進行比較，以識別任何差異，例如：
+ IAM Identity Center 中應佈建的遺失資源。
+ 應從 IAM Identity Center 移除的額外資源。

**Example 適用於 使用者**  

```
# Create missing users
aws identitystore create-user \
  --identity-store-id IDENTITY_STORE_ID \
  --user-name USERNAME \
  --display-name DISPLAY_NAME \
  --name GivenName=FIRST_NAME,FamilyName=LAST_NAME \
  --emails Value=EMAIL,Primary=true

# Delete extra users
aws identitystore delete-user \
  --identity-store-id IDENTITY_STORE_ID \
  --user-id USER_ID
```

**Example 適用於 群組的**  

```
# Create missing groups
aws identitystore create-group \
  --identity-store-id IDENTITY_STORE_ID \
  [group attributes]
  
# Delete extra groups
aws identitystore delete-group \
  --identity-store-id IDENTITY_STORE_ID \
  --group-id GROUP_ID
```

**Example 群組成員資格**  

```
# Add missing members
aws identitystore create-group-membership \
  --identity-store-id IDENTITY_STORE_ID \
  --group-id GROUP_ID \
  --member-id '{"UserId": "USER_ID"}'
  
# Remove extra members
aws identitystore delete-group-membership \
  --identity-store-id IDENTITY_STORE_ID \
  --membership-id MEMBERSHIP_ID
```

## 考量事項
<a name="audit-resources-consideratons"></a>
+ 命令受限於[服務配額和 API 限流](limits.md#ssothrottlelimits)。
+ 當您在對帳期間發現許多差異時，請對 AWS Identity Store 進行小型、漸進的變更。這可協助您避免影響多個使用者的錯誤。
+ SCIM 同步可以覆寫您的手動變更。檢查您的 IdP 設定以了解此行為。

## 手動佈建
<a name="provision-manually"></a>

有些 IdPs 沒有跨網域身分管理 (SCIM) 支援系統，或具有不相容的 SCIM 實作。在這些情況下，您可以透過 IAM Identity Center 主控台手動佈建使用者。當您將使用者新增至 IAM Identity Center 時，請確定您將使用者名稱設定為與 IdP 中的使用者名稱相同。您至少必須擁有唯一的電子郵件地址和使用者名稱。如需詳細資訊，請參閱[使用者名稱和電子郵件地址唯一性](users-groups-provisioning.md#username-email-unique)。

您還必須在 IAM Identity Center 中手動管理所有群組。若要這樣做，您可以使用 IAM Identity Center 主控台建立群組並新增群組。這些群組不需要符合 IdP 中存在的內容。如需詳細資訊，請參閱[Groups (群組)](users-groups-provisioning.md#groups-concept)。

# 輪換 SAML 2.0 憑證
<a name="managesamlcerts"></a>

IAM Identity Center 使用憑證來設定 IAM Identity Center 與您的外部身分提供者 (IdP) 之間的 SAML 信任關係。在 IAM Identity Center 中新增外部 IdP 時，您還必須從外部 IdP 取得至少一個公有 SAML 2.0 X.509 憑證。該憑證通常在信任建立期間的 IdP SAML 中繼資料交換期間自動安裝。

身為 IAM Identity Center 管理員，您偶爾需要用較新的 IdP 憑證取代較舊的 IdP 憑證。例如，當憑證上的過期日期接近時，您可能需要取代 IdP 憑證。使用較新的憑證取代較舊憑證的程序稱為憑證輪換。

**Topics**
+ [輪換 SAML 2.0 憑證](rotatesamlcert.md)
+ [憑證過期狀態指示燈](samlcertexpirationindicators.md)

# 輪換 SAML 2.0 憑證
<a name="rotatesamlcert"></a>

您可能需要定期匯入憑證，才能輪換身分提供者發行的無效或過期憑證。這有助於防止身分驗證中斷或停機。所有匯入的憑證都會自動啟用。只有在確保憑證不再與相關聯的身分提供者搭配使用之後，才應該刪除憑證。

您也應該考慮某些 IdPs可能不支援多個憑證。在這種情況下，使用這些 IdPs 輪換憑證的行為可能意味著使用者暫時的服務中斷。成功重新建立與該 IdP 的信任時，會還原服務。如果可能，請在尖峰時段仔細規劃此操作。

**注意**  
作為安全最佳實務，在現有 SAML 憑證發生任何入侵或處理不當的跡象時，您應該立即移除並輪換憑證。

輪換 IAM Identity Center 憑證是一個包含下列項目的多步驟程序：
+ 從 IdP 取得新憑證
+ 將新憑證匯入 IAM Identity Center
+ 在 IdP 中啟用新憑證
+ 刪除較舊的憑證

使用下列所有程序來完成憑證輪換程序，同時避免任何身分驗證停機時間。

**步驟 1：從 IdP 取得新憑證**

前往 IdP 網站並下載其 SAML 2.0 憑證。請確定已下載 PEM 編碼格式的憑證檔案。大多數提供者允許您在 IdP 中建立多個 SAML 2.0 憑證。這些項目可能會標示為已停用或非作用中。

**步驟 2：將新憑證匯入 IAM Identity Center**

使用下列程序，使用 IAM Identity Center 主控台匯入新憑證。

1. 在 [IAM Identity Center 主控台](https://console.aws.amazon.com/singlesignon)中，選擇**設定**。

1. 在**設定**頁面上，選擇**身分來源**索引標籤，然後選擇**動作 > 管理身分驗證**。

1. 在**管理 SAML 2.0 憑證**頁面上，選擇**匯入憑證**。

1. 在**匯入 SAML 2.0 憑證**對話方塊中，選擇**選擇檔案**，導覽至您的憑證檔案並加以選取，然後選擇**匯入憑證**。

此時，IAM Identity Center 會信任從您匯入的兩個憑證簽署的所有傳入 SAML 訊息。

**步驟 3：在 IdP 中啟用新憑證**

返回 IdP 網站，並將您先前建立的新憑證標記為主要憑證或作用中憑證。此時，IdP 簽署的所有 SAML 訊息都應使用新的憑證。

**步驟 4：刪除舊憑證**

使用下列程序來完成 IdP 的憑證輪換程序。至少必須列出一個有效的憑證，而且無法移除。

**注意**  
刪除之前，請確定您的身分提供者不再使用此憑證簽署 SAML 回應。

1. 在**管理 SAML 2.0 憑證**頁面上，選擇您要刪除的憑證。選擇 **刪除**。

1. 在**刪除 SAML 2.0 憑證**對話方塊中，輸入 **DELETE** 進行確認，然後選擇**刪除**。

1. 返回 IdP 的網站並執行必要的步驟，以移除較舊的非作用中憑證。

# 憑證過期狀態指示燈
<a name="samlcertexpirationindicators"></a>

**管理 SAML 2.0 憑證**頁面會在清單中每個憑證旁的**過期資料**欄中顯示彩色狀態指示燈圖示。以下說明 IAM Identity Center 用來判斷每個憑證顯示哪個圖示的條件。
+ **紅色** – 表示憑證已過期。
+ **黃色** – 表示憑證會在 90 天內過期。
+ **綠色** – 表示憑證有效，且至少再維持有效 90 天。

**檢查憑證的目前狀態**

1. 在 [IAM Identity Center 主控台](https://console.aws.amazon.com/singlesignon)中，選擇**設定**。

1. 在**設定**頁面上，選擇**身分來源**索引標籤，然後選擇**動作 > 管理身分驗證**。

1. 在**管理 SAML 2.0 身分驗證**頁面的**管理 SAML 2.0 憑證**下，檢閱清單中憑證的狀態，如 **過期**資料欄所示。