選擇建立政策。
注意: 如果已對使用 AWS Command Line Interface (AWS CLI) 的 IAM 使用者強制執行多重要素驗證 (MFA),則在完成下一步之前,您必須使用 MFA 進行身分驗證。明確拒絕訊息指示,如果 MFA 為 false,則存在拒絕動作的 IAM 政策:
{ "Version": "2012-10-17",
"Statement": [
{
"Sid": "BlockMostAccessUnlessSignedInWithMFA",
"Effect": "Deny",
"NotAction": [
"iam:CreateVirtualMFADevice",
"iam:EnableMFADevice",
"iam:ListMFADevices",
"iam:ListUsers",
"iam:ListVirtualMFADevices",
"iam:ResyncMFADevice",
"sts:GetSessionToken"
],
"Resource": "*",
"Condition": {
"BoolIfExists": {
"aws:MultiFactorAuthPresent": "false"
}
}
}
]
}
由於您使用 MFA 裝置,因此必須使用 MFA 字符透過 AWS CLI 對 AWS 資源的存取進行身分驗證。執行如何使用 MFA 字符透過 AWS CLI 對 AWS 資源的存取進行身分驗證?文章中的步驟。然後,執行 sts get-session-token AWS CLI 命令。將 arn-of-the-mfa-device 取代為您的 MFA 裝置的 ARN,將 code-from-token 取代為您的字符代碼:
$ aws sts get-session-token --serial-number arn-of-the-mfa-device --token-code code-from-token
您可以將值匯出至環境變數來使用暫時憑證。
例如:
$ export AWS_ACCESS_KEY_ID=example-access-key-as-in-previous-output$ export AWS_SECRET_ACCESS_KEY=example-secret-access-key-as-in-previous-output$ export AWS_SESSION_TOKEN=example-session-token-as-in-previous-output