Questions tagged «amazon-iam»

IAM是Amazon Web Services的身份和访问管理服务

9
是否可以将AWS用户/账户限制为特定区域?
我们在eu-west-1地区运行了许多AWS服务。不幸的是,似乎许多需要创建临时资源的开发人员和其他员工忘记了AWS的这一方面,并​​且在启动EC2实例,创建S3存储桶等之前没有选择该区域。结果,他们常常最终陷入us-east-1区域,因为这似乎是AWS始终使用的默认区域。 是否可以通过IAM(或其他方式)限制用户帐户仅在特定区域内启动/创建事物?

6
您可以为AWS IAM帐户要求MFA吗?
是否可能要求为Amazon Web Services中的特定/所有IAM帐户启用多因素身份验证(MFA)? 有一些密码要求选项,而且很清楚如何选择将其添加到自己的帐户中,但是尚不清楚是否存在强制用户拥有MFA的选项。

2
如何为通过AWS CLI启动的Amazon EC2实例指定IAM角色?
我正在使用“ aws ec2 run-instances”命令(来自AWS命令行界面(CLI))启动Amazon EC2实例。我想为我要启动的EC2实例设置IAM角色。已配置IAM角色,从AWS Web UI启动实例时,我可以成功使用它。但是,当我尝试使用该命令和“ --iam-instance-profile”选项执行此操作时,它失败了。进行“ aws ec2运行实例帮助”会显示该值的Arn =和Name =子字段。当我尝试使用“ aws iam list-instance-profiles”查找Arn时,出现以下错误消息: 发生客户端错误(AccessDenied):用户:arn:aws:sts :: xxxxxxxxxxxx:assumed-role / shell / i-15c2766d无权执行:iam:ListInstance资源上的配置文件:arn:aws:iam :: xxxxxxxxxxxx:instance -轮廓/ (其中xxxxxxxxxxxx是我的AWS 12位数字帐号) 我通过Web UI查找了Arn字符串,并在run-instances命令上通过“ --iam-instance-profile Arn = arn:aws:iam :: xxxxxxxxxxxx:instance-profile / shell”使用了该字符串,但失败了: 发生客户端错误(UnauthorizedOperation):您无权执行此操作。 如果我完全不使用“ --iam-instance-profile”选项,该实例将启动,但不会具有我需要的IAM角色设置。因此,许可似乎与使用“ --iam-instance-profile”或访问IAM数据有关。如果出现AWS故障,我重复了几次(有时会发生),但没有成功。 我怀疑可能存在一个限制,即不允许具有IAM角色的实例启动具有更强大的IAM角色的实例。但是在这种情况下,我正在执行命令的实例具有与我尝试使用的IAM角色相同的角色。命名为“ shell”(尽管我也尝试使用另一个,没有运气)。 实例是否甚至不允许设置IAM角色(通过其IAM角色凭据)? 使用IAM角色所需的IAM角色权限是否比仅启动普通实例所需的权限高? “ --iam-instance-profile”是指定IAM角色的适当方法吗? 我需要使用Arn字符串的子集还是以其他方式设置其格式? 是否可以设置一个可以进行任何IAM角色访问的IAM角色(也许是“超级根IAM” ...组成此名称)? …

1
如何让用户将文件上传到S3存储桶,而不覆盖或删除文件?
我为用户提供以下IAM策略 { "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt1395161912000", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:PutObject", "s3:*" ], "Resource": [ "arn:aws:s3:::bucketname" ] }, { "Sid": "list", "Effect": "Allow", "Action": [ "s3:ListAllMyBuckets" ], "Resource": [ "arn:aws:s3:::*" ] } ] } 目的是让用户将文件上传到存储桶,但不能覆盖或删除。用于备份。我从ListBucket和开始PutObject,但是添加了,*因为它不起作用。甚至*不让用户上传文件,仅获得Access Denied。 当我尝试模拟器,它返回Denied - Implicitly denied (no matching statements found).了ListBucket,因为我已经含蓄地允许这似乎很奇怪。 我已经尝试将Cyber​​duck和3Hub作为S3客户端。 知道有什么问题吗?

4
使用IAM允许用户编辑AWS / EC2安全组?
我正在尝试向IAM组授予编辑我们的EC2安全组的能力,但是如果不授予对EC2中所有内容的访问权限,我将无法使其正常工作。 我已经尝试了几个版本: { "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt1392336685000", "Effect": "Allow", "Action": [ "ec2:*" ], "Resource": [ "arn:aws:ec2:us-east-1:<MYACCOUNTHERE>:security-group/*" ] } ] } 但是,当我使用IAM用户登录时,在“安全组”页面上会收到一条消息,提示“您无权执行此操作”。 我确实知道该用户/组正在工作,因为如果我为“ Amazon EC2完全访问”选择了IAM策略模板,则用户可以访问EC2中的所有内容。 我显然没有太多的IAM经验,将不胜感激。

3
Amazon Route 53,将IAM用户访问限制为单个记录集
我想以编程方式更改Amazon Route 53上托管区域内记录集的CNAME,但我想仅将用户的访问限制为该记录集。对于我在文档中看到的内容,IAM仅允许基于“托管区域”或“更改”指定操作。这意味着我的用户需要拥有对我所有记录集的控制权才能更改单个记录。 在这种情况下,代码错误的后果不只是灾难性的。如果由于任何原因对托管区域名称的检查都不正确,我可能会因错误而将更改应用于多个记录集(想象许多记录集现在指向同一框/基础结构)。 我的问题不是关于不使代码出错,而是关于创建用户以保护系统免受此类可能性的影响。有一种方法可以限制访问(或解决方法),以允许新的IAM用户仅访问一个/有限的一组托管区域。 在IAM级别,而不是通过编程。 谢谢。

2
对ECS的角色要求感到困惑
我正在尝试建立ECS,但到目前为止,我遇到了一些权限问题,为此我已经在该论坛上创建了一些问题。 我认为我被困住了,因为老实说我无法在一个地方准确地找到所有这些角色要求。 看来我需要定义至少两个角色: 1)ECS容器 http://docs.aws.amazon.com/AmazonECS/latest/developerguide/instance_IAM_role.html 2)ECS任务 http://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html#enable_task_iam_roles 这是对的吗? 我错过了什么吗?IAM是否有特殊要求?


2
管理多个Docker容器的IAM安全凭证
在普通EC2环境中,使用IAM角色和凭证(从实例元数据自动获取)来管理对其他AWS资源的访问非常简单。使用CloudFormation甚至更加容易,您可以在其中为实例分配特定的应用程序角色时动态创建角色。 如果我想迁移到Docker并进行某种M-to-N部署(我有M台机器,并在其上运行N个应用程序),我应该如何限制对每个应用程序AWS资源的访问?主机上的任何人都可以访问实例元数据,因此我将使每个应用程序都能够查看/修改同一部署环境中每个其他应用程序的数据。 向在这种环境中运行的应用程序容器提供安全证书的最佳实践是什么?

3
是否可以通过具有IAM角色帐户的Amazon ses smtp服务发送电子邮件?
我具有IAM角色,并附加了以下策略: { "Statement": [ { "Effect": "Allow", "Action": "*", "Resource": "*" } ] } 如您所见,授予了完全访问权限。 我使用以下python将IAM凭据转换为SMTP凭据: #!/usr/bin/env python from __future__ import print_function import base64 import hashlib import hmac import json import struct import urllib2 METADATA_BASE = 'http://169.254.169.254/2012-01-12/meta-data' def main(): access_key_id, secret_access_key = get_access_creds() username, password = get_smtp_creds(access_key_id, secret_access_key) print('SMTP Username: …

2
授予EC2 IAM角色对S3存储桶的读取权限
我有一个AWS Elastic Beanstalk Rails应用程序,正在通过配置脚本进行配置,以从S3存储桶中提取一些文件。启动应用程序时,我在日志中始终收到以下错误(出于安全性考虑,存储桶名称已更改): Failed to retrieve https://s3.amazonaws.com/my.bucket/bootstrap.sh: HTTP Error 403 : <?xml version="1.0" encoding="UTF-8"?> <Error><Code>AccessDenied</Code><Message>Access Denied</Message> 配置文件: packages: yum: git: [] files: /opt/elasticbeanstalk/hooks/appdeploy/pre/01a_bootstrap.sh: mode: "00755" owner: root group: root source: https://s3.amazonaws.com/my.bucket/bootstrap.sh 设置了具有aws-elasticbeanstalk-ec2-roleIAM角色作为实例角色的Elastic Beanstalk环境。该角色具有以下策略: { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:Get*", "s3:List*" ], "Resource": "arn:aws:s3:::my.bucket/*" } …

4
我可以使用Cloudformation创建一个引用现有策略的新角色吗?
目前,我有一个共享的S3存储桶,可以对不同实例的特定键路径(即文件夹)进行特定访问。我已经能够使用新角色创建实例配置文件,并且测试没有限制访问该文件夹的问题。 我的问题是,存在一个具有已定义策略的通用角色,我也希望能够在每个堆栈的新角色中包括这些角色。 在cloudformation中,是否可以将在一个角色中定义的策略包括在另一个角色中,而不必在新角色中重新定义策略文档? 类似于以下内容: "AppTierS3AccessRole": { "Type": "AWS::IAM::Role", "Properties": { "AssumeRolePolicyDocument": { "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "ec2.amazonaws.com" ] }, "Action": [ "sts:AssumeRole" ] } ] }, "Path": "/", "Policies": [ { "Ref": "existing-policy" } ] } }, “现有政策”是这里的重要组成部分。我试图找到现有政策的秘诀,以尝试和参考它,但是我有点卡住了。

2
为IAM用户自动激活MFA设备
我要创建20个以上的IAM用户,并且希望为他们启用虚拟MFA设备。有什么办法可以一次为所有人完成,还是可以自动完成此任务?我想强制要求所有IAM用户都必须使用MFA,并且没有对其进行设置,他们将无法继续进行。

1
为什么我创建的Amazon IAM用户尝试登录时会显示“我们找不到具有该电子邮件地址的帐户”?
在Amazon IAM管理控制台中,我创建了一个新的IAM用户,并为该用户分配了权限和密码。 但是,当尝试通过位于https://console.aws.amazon.com/console/home的Amazon AWS登录页面尝试使用该新IAM用户登录时,会发生错误: There was a problem We can not find an account with that email address 为什么我的IAM用户无法成功登录?

1
如何生成用于制作快照的IAM策略?
我已将要安装快照的EC2实例上安装了卷。 我使用以下策略创建了一个新的IAM用户: { "Statement": [ { "Sid": "...", "Effect": "Allow", "Action": [ "ec2:CreateSnapshot", "ec2:CreateTags", "ec2:DeleteSnapshot", "ec2:DescribeAvailabilityZones", "ec2:DescribeSnapshots", "ec2:DescribeTags", "ec2:DescribeVolumeAttribute", "ec2:DescribeVolumeStatus", "ec2:DescribeVolumes" ], "Resource": [ "arn:aws:ec2:eu-west-1:MY_USER_ID" ] } ] } 我已将访问密钥和秘密添加到我的文件中~/.bashrc并获得了它。当我运行时ec2-describe-snapshots,得到以下响应:Client.UnauthorizedOperation: You are not authorized to perform this operation. 当我"Resource"还是"*"我的时候,我能够列出所有类型的亚马逊快照。我希望创建该eu-west-1区域中我自己拥有/可见的快照。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.