问题标签 [amazon-policy]

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 回答
256 浏览

amazon-web-services - 即使没有过滤策略,SNS 订阅也会收到消息

一个 SNS 主题有 2 个订阅。一个有过滤策略(我们称之为 A),另一个没有(我们称之为 B)。当一条消息发布到 SNS 主题时,其过滤属性匹配订阅和过滤策略(订阅 A),它会接收到该消息。我在这里发现的问题是没有过滤策略的问题(订阅 B)也收到相同的消息。如何仅向订阅“A”发送消息?

假设我向订阅 B 添加了不同的过滤策略。然后,如果我使用订阅 A 的过滤策略属性向 SNS 发布消息,则只有订阅 A 会收到该消息。这解决了我之前提到的问题,但每个账户有 200 个订阅过滤策略的限制。这有点破坏了订阅过滤策略的目的。

结束我的问题:如何在不向同一主题的其他订阅添加过滤策略的情况下仅向订阅“A”发送消息?

注意:使用的 SNS 协议是 EMAIL。我也不打算增加 SNS 限制。

0 投票
1 回答
11410 浏览

amazon-s3 - 向 S3 存储桶添加策略时获取“缺少必填字段 Principal”

我正在关注放大文档有关如何配置存储的将策略添加到文档时,出现以下错误:

我不知道为什么……?

政策文件(来自文档):

0 投票
2 回答
6154 浏览

amazon-web-services - 错误 1045 (28000):使用 IAM 数据库身份验证连接到 RDS 数据库实例时,用户 'db_user'@'ip' 的访问被拒绝(使用密码:YES)

以下是对该问题的快速总结。阅读完整描述部分以了解基本细节。

精简说明:

假设您已经有一个 IAM 用户并且该用户已经能够访问其他 AWS 服务,例如 S3、CloudFront、ECS、EC2...

假设我们需要为用户提供对 RDS 集群的只读访问权限,并同时设置 IAM DB 身份验证。

我们按照官方指南在我们的本地系统中执行所有提到的步骤,它运行良好,我们能够为db_user.

然而,有趣的地方在这里..当用户尝试db_user从他们的本地机器生成帐户的令牌时..用户将被拒绝访问。


详细描述:

设置:

我的 RDS 集群实例运行 Aurora MySQL 引擎。引擎版本:5.6.10a

我一直在关注 AWS 知识中心指南,了解如何允许用户使用 IAM 凭证连接到 Amazon RDS?

该指南没有明确提及,但在生成身份验证令牌时,AWS CLI 使用本地存储的 IAM 凭证来签署请求。

我想强调一下,在下面提到的代码段中,admin是 AWS CLI 为我的 admin IAM 用户存储的配置文件名称,而db_user是 IAM 用户(具有rds-db:connect特权)。

TOKEN="$(aws --profile admin rds generate-db-auth-token -h.. .. .. -u db_user)

使用上面的代码片段,我可以使用生成的令牌进行身份验证并连接到集群。

如果--profile未提及属性,它会读取保存在凭证文件中的默认配置文件。

问题:

而不是使用--profile admin我正在寻找使用已经存在的非管理员 IAM 配置文件来生成身份验证令牌。

例如,假设 IAM 用户名为developer,具有 RDS 只读权限和本地存储在配置文件rds_read_only下的凭证

TOKEN="$(aws --profile rds_read_only rds generate-db-auth-token -h.. .. .. -u db_user)

如果我使用上述令牌,则会收到以下错误:

ERROR 1045 (28000): Access denied for user 'db_user'@'ip' (using password: YES)

经过数小时的故障排除后,我能够得出结论,我的rds_read_only配置文件无法生成有效的身份验证令牌,这可能是因为 IAM 用户开发人员缺少一些必需的策略。

我尝试将RDSand下的所有可用策略RDS Data API(单独以及组合)附加到 IAM user developer,但没有任何运气。如果我将AdministrativeAccess策略附加到 IAM 用户developer,那么它才能成功生成令牌。

问题:

非管理员 IAM 用户成功生成身份验证令牌所需的强制性策略是什么?

0 投票
1 回答
62 浏览

amazon-web-services - 从 CLI 预置 EC2 实例所需的 AWS IAM 策略权限是什么?

我正在编写一个 IAM 策略以从 CLI 部署 EC2 实例,我不想授予 EC2 完全访问权限。遵循最小权限原则,配置 EC2 实例所需的权限是什么

0 投票
1 回答
1788 浏览

amazon-web-services - 创建安全组和添加入站/出站规则所需的 AWS IAM 策略权限是什么?

我正在编写一个 IAM 策略来部署 EC2 实例以及使用 Terraform 创建安全组,我不想授予 EC2 完全访问权限。遵循最小权限原则,创建安全组并添加入站和出站规则所需的权限是什么?

0 投票
3 回答
2222 浏览

amazon-web-services - AWS IAM - 如何使用 CLI 显示描述策略语句?

如何使用 AWS CLI 显示 IAM 策略的完整正文,包括效果、操作和资源语句?

“aws iam list-policies”命令列出所有策略,但不列出策略中包含的实际 JSON E、A、R 语句。

我可以使用“aws iam get-policy-version”命令,但这不会在其输出中显示策略名称。当我通过脚本运行此命令以获取数十个策略的信息时,无法知道输出将属于哪个策略。

还有另一种方法吗?

0 投票
0 回答
233 浏览

amazon-s3 - S3 仅存储由一个默认 KMS 密钥加密的对象并限制所有其他对象

我正在尝试将对象上传到 s3 存储桶,仅使用特定的 KMS 密钥加密。我创建了一个具有单独拒绝条件的策略,但它似乎不起作用。有人可以建议我哪里出错了吗?

我使用 AWS CLI 测试了此策略 -

testimage.jpg尽管有以下拒绝声明,但我可以使用我帐户中的另一个密钥进行上传。

如果我在 Bucket 策略中给出相同的策略,但在这里我希望将策略分配给 s3 使用的我的角色。


另外,我如何测试非 ssl 请求是否被拒绝?我不能使用 aws cli,因为我认为它在默认情况下与 AWS 服务通信时使用 SSL。

提前致谢。

0 投票
3 回答
1073 浏览

amazon-iam - 如何使用一个命令在命令行上删除具有多个版本的 iam 策略?

我正在尝试删除具有多个版本的命令行的策略,如下所示:

然后运行 iam-delete-policy arn:aws:iam::123456789012:policy/... 但我不断收到错误:

看起来我的iam-delete-policy-versions功能不起作用。希望他们能简单地添加一个--force标志。

0 投票
1 回答
209 浏览

amazon-web-services - 通过指定日期条件(DateGreaterThan、DateLessThan)限制 AWS 开发人员高级用户访问

我为 AWS 开发人员高级用户提供了这个托管策略,它允许用户访问除 IAM 和组织之外的所有 AWS 资源和操作(仅比管理员角色低一级)。

我想在特定日期之间限制对用户的访问(例如在部署计划期间),并在下面添加了 Date 运算符的代码。

但是,将上述条件子句添加到 PowerUserManaged 策略会在 AWS 控制台中部署策略期间引发错误 400 Malformed。

是否可以将日期条件子句添加到 PowerUserAccess 托管策略? https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html#jf_developer-power-user

0 投票
2 回答
157 浏览

amazon-web-services - 授予 S3 跨账户完全访问权限

我有两个亚马逊账户 Account-A 和 Account-B。我想让 Account-B 完全控制 Account-A 中的所有 S3 相关操作,例如 Account-B 可以创建/删除/列出属于 Account-A 的存储桶。

你能指点我是怎么做的吗?到目前为止,我只能找到如何授予对单个 S3 存储桶的跨账户访问权限,而不是授予所有 S3 功能。