我正在尝试设置AWS CLI工具,并按照http://docs.aws.amazon.com/AWSEC2/latest/CommandLineReference/set-up-ec2-cli-linux.html#setting_up_ec2_command_linux
的说明进行操作但是,在完成所有步骤并设置AWS_ACCESS_KEY
和AWS_SECRET_KEY
之后,我得到了
$ ec2-describe-regions
Client.UnauthorizedOperation: You are not authorized to perform this operation. (Service: AmazonEC2; Status Code: 403; Error Code: UnauthorizedOperation; Request ID: 55f02cc4-2e9f-4a0a-8b55-46bcc1973f50)
然后我尝试重新生成新凭据,但仍然遇到相同的错误。我似乎无法找到有关此问题的其他任何人的信息。我尝试使用-O
和-W
传递密钥,但这也不起作用。
知道我可能做错了吗?
答案 0 :(得分:33)
我正在免费套餐,并且发现向单个用户授予管理员政策更容易,这支持所有亚马逊命令行工具的访问权限。如果您认为该政策过于宽松,可以在以后降级该政策。
policies
假设您已设置了访问密钥,您现在应该拥有给定用户的完整命令行访问权限。
› ec2-describe-regions
Client.UnauthorizedOperation: You are not authorized to perform this operation. (Service: AmazonEC2; Status Code: 403; Error Code: UnauthorizedOperation; Request ID: 3398ed18-1caf-4c04-865b-a54f796c653c)
› ec2-describe-regions
REGION eu-central-1 ec2.eu-central-1.amazonaws.com
REGION sa-east-1 ec2.sa-east-1.amazonaws.com
REGION ap-northeast-1 ec2.ap-northeast-1.amazonaws.com
REGION eu-west-1 ec2.eu-west-1.amazonaws.com
REGION us-east-1 ec2.us-east-1.amazonaws.com
REGION us-west-1 ec2.us-west-1.amazonaws.com
REGION us-west-2 ec2.us-west-2.amazonaws.com
REGION ap-southeast-2 ec2.ap-southeast-2.amazonaws.com
REGION ap-southeast-1 ec2.ap-southeast-1.amazonaws.com
amazons UX需要一些时间才能适应它
答案 1 :(得分:17)
非常不幸的是,使用EC2 CLI工具的基本指南甚至没有提到这一点,但看起来我的问题是我的IAM帐户下没有正确的策略设置。
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": "ec2:Describe*",
"Resource": "*"
}]
}
有关详细信息,请参阅此链接: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ExamplePolicies_EC2.html
答案 2 :(得分:1)
必须将某些策略分配给IAM用户和组,而不是IAM角色。我们将AdministratorAccess
或AmazonEC2FullAccess
等策略分配给为联合创建的IAM角色,并且AWS CLI命令失败且响应相同。
为IAM用户和组分配策略可确保策略有效。我们为管理员分配了AmazonEC2FullAccess
政策等政策。对于列出区域和实例,如describe-regions
命令所示,AmazonEC2ReadOnlyAccess
等策略就足够了,因为它们包含必要的语句以允许对所需资源进行受限制的操作。