

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

# 登入 CloudTrail 事件中的使用者名稱
<a name="username-sign-in-cloudtrail-events"></a>

IAM Identity Center 會在每次成功登入 IAM Identity Center 使用者時，發出 `additionalEventData`元素下的 `UserName` 欄位一次。以下清單說明範圍內的兩個登入事件，以及這些事件發生的條件。當使用者登入時，只有其中一個條件是 true。
+ `CredentialChallenge`
  + 當 `CredentialType`為「`PASSWORD`」時 – 適用於使用 Directory Service 或 進行密碼驗證 IAM Identity Center 目錄。
  + 當 `CredentialType`為「`EMAIL_OTP`」 – 僅適用於使用 `CreateUser` API 呼叫建立 IAM Identity Center 目錄 的使用者第一次嘗試登入時，使用者會收到一次性密碼，以使用該密碼登入一次。
+ `UserAuthentication`
  + 當 `CredentialType`為 "`EXTERNAL_IDP`" – 適用於使用外部 IdP 的身分驗證。

成功驗證`UserName`的 值如下所示：
+ 當身分來源是外部 IdP 時，該值等於傳入 SAML 聲明中的`nameID`值。此值等於 中的 `UserName` 欄位 IAM Identity Center 目錄。
+ 當身分來源為 時 IAM Identity Center 目錄，發出的值等於此目錄中`UserName`的欄位。
+ 當身分來源是 時 Directory Service，發出的值等於使用者在身分驗證期間輸入的使用者名稱。例如，使用者名稱為 `anyuser@company.com`的使用者可以使用 `anyuser`、 `anyuser@company.com`或 進行身分驗證`company.com/anyuser`，而且在每種情況下，輸入的值都會分別在 CloudTrail 中發出。

**不正確使用者名稱嘗試的安全遮罩**

當記錄的事件是由不正確的使用者名稱輸入所造成的主控台登入失敗時，`UserName` 欄位會包含字串 `HIDDEN_DUE_TO_SECURITY_REASONS`。在這種情況下，CloudTrail 不會記錄內容，因為文字可能包含敏感資訊，如下列範例所述：
+ 使用者不小心在使用者名稱欄位中輸入密碼。
+ 使用者不小心輸入個人電子郵件帳戶的帳戶名稱、銀行登入識別符或其他一些私有 ID。

**提示**  
我們建議您使用 `userId`和 `identityStoreArn` 來識別 IAM Identity Center CloudTrail 事件後方的使用者。如果您需要使用 `userName` 欄位，您可以在每次成功登入發出一次的 `additionalEventData`元素`userName`下使用 。

如需如何使用 `UserName` 欄位的其他資訊，請參閱 [關聯相同使用者工作階段中的使用者事件在 IAM Identity Center 和外部目錄之間關聯使用者](sso-cloudtrail-use-cases.md#correlating-users)。