設定 IAM 使用者的帳戶密碼政策 - AWS Identity and Access Management

設定 IAM 使用者的帳戶密碼政策

您可以在 AWS 帳戶上設定自訂密碼政策,以指定 IAM 使用者密碼的複雜性要求和強制輪換期間。如果您未設定自訂密碼政策,IAM 使用者密碼必須符合預設 AWS 密碼政策。如需詳細資訊,請參閱 自訂密碼政策選項

設定密碼政策的規則

IAM 密碼政策不適用於 AWS 帳戶 根使用者密碼或 IAM 使用者存取金鑰。如果密碼到期,IAM 使用者無法登入 AWS Management Console,但可以繼續使用其存取金鑰。

當您建立或變更密碼政策時,大多數密碼政策設定將在使用者下次變更密碼時強制執行。但是,某些設定會立即強制執行。例如:

  • 當最短長度和字元類型要求變更時,將在使用者下次變更密碼時強制執行這些設定。即使現有的密碼不遵守更新的密碼政策,也不會強制使用者變更現有的密碼。

  • 當您設定密碼過期期間時,會立即強制執行過期期間。例如,假設您將密碼過期期間設定為 90 天。在這種情況下,現有密碼超過 90 天的所有 IAM 使用者的密碼會到期。這些使用者必須在下次登入時變更其密碼。

在指定次數的登入嘗試失敗之後,您無法建立「鎖定政策」來鎖定使用者帳戶。為了增強安全性,我們建議您將強式密碼政策與多重要素驗證 (MFA) 結合。如需有關 MFA 的詳細資訊,請參閱 使用 AWS 中的多重要素驗證 (MFA)

設定密碼政策所需的許可

您必須設定許可,以允許 IAM 實體 (使用者或角色) 檢視或編輯其帳戶密碼政策。您可以在 IAM 政策中包含下列密碼政策動作:

  • iam:GetAccountPasswordPolicy – 允許實體檢視其帳戶的密碼政策

  • iam:DeleteAccountPasswordPolicy – 允許實體刪除其帳戶的自訂密碼政策,並還原為預設密碼政策

  • iam:UpdateAccountPasswordPolicy – 允許實體建立或變更其帳戶的自訂密碼政策

下列政策允許完整存取權以檢視和編輯帳戶密碼政策。若要了解如何使用此範例 JSON 政策文件來建立 IAM 政策,請參閱 在 JSON 標籤上建立政策

{ "Version": "2012-10-17", "Statement": [ { "Sid": "FullAccessPasswordPolicy", "Effect": "Allow", "Action": [ "iam:GetAccountPasswordPolicy", "iam:DeleteAccountPasswordPolicy", "iam:UpdateAccountPasswordPolicy" ], "Resource": "*" } ] }

如需 IAM 使用者變更其自己密碼所需許可的資訊,請參閱 允許 IAM 使用者變更自己的密碼

預設密碼政策

如果管理員未設定自訂密碼政策,則 IAM 使用者密碼必須符合預設 AWS 密碼政策。預設密碼政策會強制執行下列條件:

  • 密碼長度最短為 8 個字元,最長為 128 個字元。

  • 至少混用 3 種下列類型字元:大寫、小寫、數字和 ! @ # $ % ^ & * ( ) _ + - = [ ] { } | ' 符號

  • 不能與您的 AWS 帳戶名稱或電子郵件相同

自訂密碼政策選項

當您設定帳戶的自訂密碼政策時,您可以指定下列條件:

  • 密碼最小長度 – 您可以指定至少 6 個字元,最多可指定 128 個字元。

  • 密碼強度 – 您可以選取下列任一核取方塊來定義 IAM 使用者密碼的強度:

    • 至少需要一個拉丁字母 (A–Z) 的大寫字母

    • 至少需要一個拉丁字母 (a–z) 的小寫字母

    • 至少需要有一個數字

    • 至少需要一個非英數字元的字元 ! @ # $ % ^ & * ( ) _ + - = [ ] { } | '

  • 啟用密碼過期 – 您可以選取並指定至少 1 天,且最長為 1,095 天的 IAM 使用者密碼有效期,設定後生效。例如,如果您指定 90 天的到期日,它會立即影響所有使用者。對於密碼超過 90 天的使用者,當他們在變更後登入主控台時,必須設定新密碼。75-89 天的使用者會收到 AWS Management Console 警告,告知其密碼過期。IAM 使用者可隨時變更密碼 (如果他們有許可)。當他們設定新的密碼時,該密碼的到期期間將重新開始。IAM 使用者一次只能有一個有效的密碼。

  • Password expiration requires administrator reset (密碼過期需要管理員重設) – 選取此選項可防止 IAM 使用者在密碼過期後使用 AWS Management Console 更新自己的密碼。在選取此選項之前,請確認您的 AWS 帳戶有多個具有管理許可的使用者,以重設 IAM 使用者密碼。具有 iam:UpdateLoginProfile 許可的管理員可以重設 IAM 使用者密碼。具有 iam:ChangePassword 許可和作用中存取金鑰的 IAM 使用者可以程式設計方式重設自己的 IAM 使用者主控台密碼。如果您清除此核取方塊,密碼到期的 IAM 使用者仍必須先設定新密碼,才能存取 AWS Management Console。

  • Allow users to change their own password (允許使用者變更自己的密碼) – 您可以允許帳戶中的所有 IAM 使用者變更自己的密碼。這可讓使用者僅針對其使用者存取 iam:ChangePassword 動作,並存取 iam:GetAccountPasswordPolicy 動作。此選項不會將許可政策連接至每個使用者,而是由 IAM 在帳戶層級為所有使用者套用許可。或者,您只允許一些使用者管理自己的密碼。若要執行這項操作,請清除此核取方塊。如需有關使用政策以限制誰可以管理密碼的詳細資訊,請參閱 允許 IAM 使用者變更自己的密碼

  • 防止密碼重複使用 – 您可以防止 IAM 使用者重複使用舊密碼的指定數字。您可以指定長度下限為 1,以及長度上限為 24 的舊密碼,無法重複使用。

設定密碼政策 (主控台)

您可以使用 AWS Management Console 建立、變更或刪除自訂密碼政策。

建立自訂密碼政策 (主控台)

  1. 登入 AWS Management Console,並開啟位於 https://console.aws.amazon.com/iam/ 的 IAM 主控台。

  2. 在導覽窗格中,選擇 Account settings (帳戶設定)

  3. Password policy (密碼政策) 區段中,選擇 Change password policy (變更密碼政策)

  4. 選取要套用至密碼政策的選項,然後選擇 Save changes (儲存變更)

變更自訂密碼政策 (主控台)

  1. 登入 AWS Management Console,並開啟位於 https://console.aws.amazon.com/iam/ 的 IAM 主控台。

  2. 在導覽窗格中,選擇 Account settings (帳戶設定)

  3. Password policy (密碼政策) 區段中,選擇 Change (變更)

  4. 選取要套用至密碼政策的選項,然後選擇 Save changes (儲存變更)

刪除密碼政策 (主控台)

  1. 登入 AWS Management Console,並開啟位於 https://console.aws.amazon.com/iam/ 的 IAM 主控台。

  2. 在導覽窗格中,選擇 Account settings (帳戶設定)

  3. Password policy (密碼政策) 區段中,選擇 Delete (刪除)。

  4. 選擇 Delete custom (刪除自訂),確認您要刪除自訂密碼政策。

設定密碼政策 (AWS CLI)

您可以使用 AWS Command Line Interface 來設定密碼政策。

若要管理來自 AWS CLI 的自訂帳戶密碼政策

執行下列命令:

設定密碼政策 (AWS API)

您可以使用 AWS API 操作來設定密碼政策。

從 AWS API 管理自訂帳戶密碼政策

呼叫以下操作: