问题标签 [amazon-iam]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2191 浏览

permissions - 我应该为 S3 存储桶分配哪些权限才能使其只能从使用 IAM 角色的 EC2 实例访问?

我正在尝试设置一个 EC2 实例以访问包含一些私有数据的 S3 存储桶。我像这样设置了一个 IAM 角色:

我称这个角色为“s3_bin_download_role”

我使用以下命令启动我的 EC2 实例:

这似乎很干净。但是我还没有弄清楚如何验证这个 EC2 实例实际上在其中具有这个角色。

无论如何,一旦实例启动,我 SSH 进入机器并输入:

这给了我一个“拒绝访问”错误。

我设置了没有指定权限的 S3 存储桶。这显然是不正确的。但我不确定我需要在存储桶上指定的最小权限列表是什么,以允许此 EC2 实例上的程序读取它。

作为奖励,如果有人能告诉我如何确定 EC2 实例是否应用了特定的 IAM 角色,我将不胜感激。AWS 控制台似乎没有此信息。

编辑-

@slayedbylucifer 是对的,但细节非常混乱,所以我在这里添加细节。

令人困惑的是,您实际上可以创建 IAM 角色并立即使用这些角色启动 EC2 实例,而无需创建任何用户或组。只需使用带有 -p 标志的 ec2-run-instances(来自 cli 工具)来传递您刚刚创建的角色的名称 - 实例将以您可以通过发出以下命令来验证的角色启动 -

如果这可行,那么此实例现在将运行所有使用 aws 工具的请求,并获得该角色授予的权限。

但是,幕后发生的事情是,由于没有定义用户或组,因此用户隐含地是“root”用户或您在创建角色时登录到管理控制台的任何人。因此,创建但不分配角色并不意味着没有人有权访问 - 如果角色授予访问权限,则由创建者启动的 ec2 实例具有访问权限。

因此,现在您所要做的就是转到 S3 管理控制台并为您自己授予存储桶权限。就是这样。

此外,您实际上可以使用 curl 来检索 S3 对象,即使它们不是公开的 - 但是,由于它不是 aws 工具,因此您需要使用像 s3 这样的工具的请求显式传递 hmac'ed aws 令牌 - curl.pl 会为你做的。

0 投票
2 回答
1448 浏览

amazon-web-services - AWS IAM 访问管理

我知道您可以设置 IAM 策略来限制对服务的访问。但是,是否可以设置策略以允许访问服务的一部分。

例如,我是两个 EC2 实例。我需要创建两个用户,以便他们可以访问 AWS 控制台,但每个用户只能访问一个 EC2 实例。

0 投票
2 回答
3863 浏览

amazon-web-services - 如何调用 AssumeRoleWithWebIdentity 来访问 Amazon DynamoDB?

场景:
我在 Amazon 上创建了一个应用程序,并使用Login with Amazon,它返回一个“access_token”。然后我运行:

当我稍后运行该ListTable函数时,它将返回:

我发现似乎我必须打电话AssumeRoleWithWebIdentity。但是如何在AWS SDK for JavaScript中调用它?还是我错过了其他任何过程?

0 投票
1 回答
3582 浏览

python - Boto 403 AccessDenied 异常与 IAM 用户凭证,在 Cyber​​duck 和 AWS Web 控制台中工作

我在stackoverflow上发现了很多关于这个的问题,但没有一个能解决我的问题。经过大量谷歌搜索后,我仍然面临 AccessDenied 异常:

这是我的用户和组策略文档:

用户政策:

组策略:

使用用户名 - testuser 创建了一个用户,然后获得了该 IAM 用户的 access_key 和 secret_access_key。现在我可以使用 aws Web 控制台和 cyberduck 访问 mybucket 及其子文件夹。

但是每当我尝试使用 boto 访问时,都会出现 AccessDenied 异常(错误 403)。

博托代码:

即使我在尝试使用 boto-rsync 时也遇到了同样的问题。

有什么建议么 ??

0 投票
1 回答
207 浏览

android - 使用 Facebook 和 Google 在 Android 上进行 AWS 身份验证

我正在开发一个需要访问某些特定 AWS 资源的 Android 应用程序。用户应该能够使用 Facebook、Google 注册/登录,或创建自定义登录,并且他们应该有权访问特定的 sns 队列和特定的 s3 文件夹,具体取决于他们的身份。

有没有办法配置 AWS 来做到这一点?

0 投票
1 回答
17801 浏览

amazon-web-services - AWS Amazon IAM 用户策略仅访问 EU-WEST-1 区域上的一个 EC2 实例

我已经阅读了 AWS 文档,但它没有帮助……至少对我没有帮助。我已阅读有关 IAM 和 EC2 上的用户策略的信息。

我想让用户仅在一个 ec2 实例上具有完全访问权限/(或仅允许某些操作)。

我使用的地区是eu-west-1(Ireland)。我制定了这个政策:

当我以用户身份登录时,我看到我没有被授权:

  • 您无权描述正在运行的实例
  • 您无权描述弹性 IP
  • 您无权描述卷
  • 您无权描述快照
  • 您无权描述密钥对
  • 您无权描述负载均衡器
  • 您无权描述归置组
  • 您无权描述安全组

如果我对资源属性应用以下策略:

“资源”:“arn:aws:ec2:*”

没关系,但这不是我需要的,因为用户可以访问所有 EC2 实例。

我想知道这是否是 AWS 的错误,或者 eu-west-1 区域存在问题,或者此策略已不受支持?或者也许我错了,如果是这样,请帮助我怎么做


0 投票
2 回答
2739 浏览

amazon-web-services - IAM 策略仅允许 EC2 实例 API 访问以修改自身

我正在尝试设置一个在启动时配置我的实例的应用程序,并且我想尽可能地关闭该应用程序的 API 访问。我目前的政策如下:

但是,这允许应用程序对 EC2 中的任何内容执行任何这些操作。有没有办法可以将应用程序在 ec2 实例上的操作锁定到该特定实例或具有相同 IAM 角色的所有框?

0 投票
4 回答
9355 浏览

amazon-web-services - 如何通过 IAM 控制用户对 Amazon DynamoDB 数据的访问?

AWS Identity and Access Management (IAM)是否提供了一种方法,使用户只能编辑或删除他之前添加的Amazon DynamoDB表中的项目?

0 投票
1 回答
567 浏览

amazon-web-services - 保护托管在 Amazon S3 上的资源的最佳方式是什么?

我正在创建一个网站,人们可以在其中注册并付费观看视频。该站点将使用 PHP 构建,并设想其工作方式如下:

  • 内容创建者上传他们的内容(视频文件上传到 S3 存储桶)
  • 用户可以注册,付费观看上传的视频

因此,我需要一种方法来保护每个用户的对象,这样用户就不能付费观看视频、检查 HTML 并与其他人共享视频的 URL,而其他人可以在不付费的情况下观看它。

我考虑过使用 IAM,创建一个 IAM 用户,该用户有权访问购买的视频(对象),作为我网站上的注册用户购买视频的权限,但观看来自 AWS 的介绍视频,似乎 IAM 用户更倾向于授予人们访问权限能够登录 AWS 控制台并管理我的 AWS 服务,而不是作为向 Web 服务用户授予对象权限的方法。

如果我认为 IAM 用户更适合通过控制台访问我的服务的人是正确的,那么我有哪些选项可以向我的应用程序用户授予特定权限?

0 投票
1 回答
118 浏览

amazon-web-services - S3 策略限制仅访问一个文件夹

我在 S3 中有一个名为 home 的存储桶,它下面有多个文件夹。我希望允许特定用户能够访问路径下的文件夹 1:home/A/B/folder1。但是,我不希望他看到此主存储桶中的任何其他存储桶甚至其他文件夹。

任何人都可以帮助我制定这项政策吗?