本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
AWS:允許 IAM 使用者在安全登入資料頁面上管理自己的登入資料
此範例顯示如何建立身分型政策,讓 IAM 使用者在「安全登入資料」頁面上管理自己的所有登入資料。此 AWS Management Console 頁面顯示帳戶資訊,例如帳號 ID 和規範使用者 ID。使用者也可以檢視和編輯其密碼、存取金鑰、X.509 憑證、SSH 金鑰和 Git 憑證。除了使用者的 MFA 裝置以外,此政策範例包括檢視和編輯頁面上所有資訊所需的許可。若要允許使用者使用 MFA 管理自己的憑證,請參閱AWS:允許 MFA 驗證的 IAM 使用者在安全登入資料頁面上管理自己的登入資料。
若要瞭解使用者如何存取安全認證頁面,請參閱IAM 使用者如何變更他們自己的密碼 (主控台)。
此政策的功能為何?
-
AllowViewAccountInfo
陳述式允許使用者檢視帳戶層級資訊。這些許可必須位於自己的陳述式中,因為它們不支援或不需要指定資源 ARN。而是許可指定"Resource" : "*"
。此陳述式包括下列動作,可讓使用者檢視特定的資訊:-
GetAccountPasswordPolicy
– 檢視帳戶密碼需求,同時變更自己的 IAM 使用者密碼。 -
GetAccountSummary
– 檢視帳戶 ID 和帳戶正式使用者 ID。
-
-
AllowManageOwnPasswords
陳述式可讓使用者變更自己的密碼。此陳述式也包括檢視 My Security Credentials (我的安全憑證) 頁面上大部分資訊所需的GetUser
動作。 -
AllowManageOwnAccessKeys
陳述式可讓使用者建立、更新及刪除自己的存取金鑰。使用者也能擷取關於指定之存取金鑰最後一次使用時間的資訊。 -
AllowManageOwnSigningCertificates
陳述式可讓使用者上傳、更新及刪除自己的簽章憑證。 -
該
AllowManageOwnSSHPublicKeys
語句允許用戶上傳,更新和刪除自己的 SSH 公鑰 CodeCommit。 -
該
AllowManageOwnGitCredentials
語句使用戶能夠創建,更新和刪除自己的 Git 憑據 CodeCommit。
此政策不允許使用者檢視或管理自己的 MFA 裝置。他們也不能檢視 IAM 主控台中的 Users (使用者) 頁面,或使用該頁面存取自己的使用者資訊。若要允許此操作,請將 iam:ListUsers
動作加入 AllowViewAccountInfo
陳述式。它也不允許使用者在自己的使用者頁面上變更密碼。若要允許此操作,請將 iam:CreateLoginProfile
、iam:DeleteLoginProfile
、iam:GetLoginProfile
及 iam:UpdateLoginProfile
動作加入 AllowManageOwnPasswords
陳述式。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowViewAccountInfo", "Effect": "Allow", "Action": [ "iam:GetAccountPasswordPolicy", "iam:GetAccountSummary" ], "Resource": "*" }, { "Sid": "AllowManageOwnPasswords", "Effect": "Allow", "Action": [ "iam:ChangePassword", "iam:GetUser" ], "Resource": "arn:aws:iam::*:user/${aws:username}" }, { "Sid": "AllowManageOwnAccessKeys", "Effect": "Allow", "Action": [ "iam:CreateAccessKey", "iam:DeleteAccessKey", "iam:ListAccessKeys", "iam:UpdateAccessKey", "iam:GetAccessKeyLastUsed" ], "Resource": "arn:aws:iam::*:user/${aws:username}" }, { "Sid": "AllowManageOwnSigningCertificates", "Effect": "Allow", "Action": [ "iam:DeleteSigningCertificate", "iam:ListSigningCertificates", "iam:UpdateSigningCertificate", "iam:UploadSigningCertificate" ], "Resource": "arn:aws:iam::*:user/${aws:username}" }, { "Sid": "AllowManageOwnSSHPublicKeys", "Effect": "Allow", "Action": [ "iam:DeleteSSHPublicKey", "iam:GetSSHPublicKey", "iam:ListSSHPublicKeys", "iam:UpdateSSHPublicKey", "iam:UploadSSHPublicKey" ], "Resource": "arn:aws:iam::*:user/${aws:username}" }, { "Sid": "AllowManageOwnGitCredentials", "Effect": "Allow", "Action": [ "iam:CreateServiceSpecificCredential", "iam:DeleteServiceSpecificCredential", "iam:ListServiceSpecificCredentials", "iam:ResetServiceSpecificCredential", "iam:UpdateServiceSpecificCredential" ], "Resource": "arn:aws:iam::*:user/${aws:username}" } ] }