DevPay和Mfa是互斥的授权方法

时间:2017-08-10 00:18:41

标签: amazon-web-services amazon-s3

我尝试使用AWS-cli使用以下命令将MFA删除添加到我的S3存储桶中:

aws s3api put-bucket-versioning --bucket <my-bucket-name> --versioning-configuration '{"MFADelete":"Enabled","Status":"Enabled"}' --mfa 'arn:aws:iam::<code-found-at-iam-page>:mfa/root-account-mfa-device <my-google-authenticator-code>'

但我得到的回应是:

  

调用时发生错误(InvalidRequest)   PutBucketVersioning操作:DevPay和Mfa是互斥的   授权方法。

这没有任何意义,因为我从未使用过DevPay。我的实例安全组已启用S3FullAccess,因此也不会出现问题。

对于可能出现的问题的任何建议都将不胜感激。

3 个答案:

答案 0 :(得分:1)

我向AWS提交了一个案例,他们回答:

  

当API无法返回时,通常会返回该错误响应   由于发出请求,执行MFA删除任务   非root凭据。打开MFA删除的唯一方法是使用   来自帐户root用户的凭据

简单解决方案!

答案 1 :(得分:0)

要在s3存储桶上启用/禁用MFA删除,您必须使用root访问密钥配置aws命令行。

检查先决条件部分

https://aws.amazon.com/premiumsupport/knowledge-center/s3-undelete-configuration/

答案 2 :(得分:0)

我在尝试使用 AWS CloudShell 执行此操作时遇到了同样的错误,尽管我使用的是 root 用户(并确认我是使用 CloudShell 的 root)。从本地 CLI 运行时,同样的命令也能工作。