

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

# 稽核和協調自動佈建的資源
<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 設定以了解此行為。