问题标签 [assume-role]

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 投票
2 回答
1054 浏览

amazon-web-services - AWS lambda 无法承担由 cloudformation 触发的角色

通过 CloudFormation 脚本触发时,Lambda 无法承担跨账户角色。

我有一个 CloudFormation 脚本,它在账户 A 中创建并触发一个 Lambda 函数。该函数需要从账户 B 复制一个对象。我正在使用基于角色的跨账户访问。

在帐户 B 上,我具有以下角色,出于测试目的,我使用 S3 完全访问权限。

在账户 A 上,我具有以下角色,具有 lambda 执行、S3 完全访问权限和代入角色策略。

我在我的 lambda 函数中运行这个 python 脚本,

CloudFormation 脚本返回以下错误,

但是,如果我在测试模式下(使用 AWS 控制台上的“测试”按钮)运行相同的 Lambda(使用 CloudFormation 脚本创建),它会下载文件而不会出现任何错误。

谢谢

0 投票
0 回答
144 浏览

amazon-web-services - 为什么角色假设应该在 lambda 内部完成?

这就是为什么以这种方式设计 AWS Lambda 服务的原因。

根据有关如何配置 Lambda 函数以从另一个 AWS 账户担任角色的文档?,要从另一个账户访问资源,Lambda 函数需要调用该assume_role方法来获取临时凭证。我的问题是为什么这不能在 lambda 之外完成。例如,我们可以将 RoleB 从 AccountB 绑定到 RoleA(lambda 函数的执行角色)。

将逻辑移到外部的好处是显而易见的——lambda 更便携。

一旦逻辑被移出,上面的代码可以简化为:

0 投票
1 回答
690 浏览

amazon-web-services - AWS Amplify 与不同账户中的存储库 - 承担角色

我浏览了这些文件,但找不到解决方案。我有两个帐户 dev 和 prod。我的放大应用程序存在于开发中,但代码提交存在于产品中。有什么方法可以连接它们吗?

我已经配置了假设角色,并且还尝试在不同的配置文件中使用临时凭据并将其连接到:

问题仍然相同。似乎不可能将 amplify 与 code-commit 连接起来,直到 repository 和 amplify-app 存在于同一个帐户中。

有没有办法实现这一点,或者它真的不可配置?

参考: https ://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html

https://docs.aws.amazon.com/cli/latest/reference/sts/assume-role.html

https://forums.aws.amazon.com/thread.jspa?threadID=300224

0 投票
1 回答
66 浏览

amazon-iam - RDS 实例能否代入另一个账户的角色?

我正在尝试将账户 A 存储桶中的 S3 数据加载到账户 B 中的 RDS 实例中。我无法使用资源策略。它只需要使用 IAM 角色来完成。

我在账户 A 中创建了一个角色,它可以访问 S3 存储桶。我在账户 B 中有一个角色创建,它允许从账户 A 担任角色。

如何使用这些将数据从账户 A 加载到账户 B?

0 投票
0 回答
215 浏览

amazon-web-services - 为 AWS 代入角色生成 docker/config.json

我正在尝试推送到 AWS 注册表(通过 Kaniko)。在注册表帐户中,有一个角色functional,我的帐户应该承担。所以我尝试生成一个.docker/config.json通过:

最后,我得到了一个,config.json但它不起作用。Kaniko 打印status code 401; Not Authorized

现在我假设,假设的角色以某种方式失败了。但我不知道,如何获得config.json一个假定的角色。

有没有办法调试这个,或者有没有更简单的方法来承担角色?

0 投票
1 回答
1368 浏览

amazon-web-services - Kinesis Firehose Delivery Stream 在使用 cloudformation 时无法承担角色

我正在编写一个创建 Kinesis Firehose 传输流并将数据发送到 S3 存储桶的 cloudformation 模板。源流是 Kinesis Steam。它创建了 s3 存储桶、策略和角色,但是当它尝试创建 Kinesis Firehose 传输流时,它无法说无法承担角色

经过一些研究,我发现不应使用 root 帐户创建 Delivery。我尝试创建一个新用户,但它仍然给了我同样的错误。

​</p>

我希望成功创建交付流。任何帮助,将不胜感激。

谢谢

0 投票
1 回答
250 浏览

ansible - 执行 MFA 政策后无法担任角色

我创建了一个新策略来强制 IAM 用户使用此链接中的策略设置 MFA https://docs.aws.amazon.com/en_pv/IAM/latest/UserGuide/reference_policies_examples_aws_my-sec-creds-self-manage.html

现在 IAM 用户已经AdministratorAccess......所以现在应用此强制 MFA 策略,现在用户附加了 2 个策略。AWS 托管策略AdministratorAccess和我创建的新托管策略Force_MFA

现在,当我尝试运行在附加策略之前通常工作的ansible iwth 模块https://docs.ansible.com/ansible/latest/modules/sts_assume_role_module.htmlForce_MFA现在我收到错误消息,提示我无法承担其他帐户的角色。当我删除该Force_MFA策略时,它会再次起作用。

问题出在哪里。这是政策问题还是ansible问题?这个Force_MFA政策没有按预期工作吗?如果启用了 MFA,它应该让我做其他事情,但在 asnible 中它没有,但在 GUI 中我可以切换角色并且它工作正常。只是那些 ansible 剧本现在失败并抱怨我无法承担角色。

请注意,我已经为这个 IAM 用户启用了 MFA,我可以在仪表板中假设和切换帐户,但是当我尝试在 ansible 中这样做时,我收到 boto 错误,说我无法承担角色

任何帮助将不胜感激。

如果您需要发布任何帮助让我知道,我会发布。

0 投票
2 回答
23 浏览

amazon-web-services - 当 AWSAssumeRole 超时时,如果您处于流程的中间会发生什么?

我目前正在使用我需要承担的角色来访问 S3 上的某些存储桶。

我想知道,如果给予 STSAssumeRoleSessiomCredentialsProvider 的持续时间为 1 小时,而您正在执行诸如下载需要 1.5 小时的文件之类的操作,它会完成该过程还是因为持续时间结束而在中间停止?

0 投票
1 回答
3987 浏览

amazon-web-services - Terraform:假设角色的问题

我试图解开这个谜好几天了,但没有快乐。基本上,Terraform 不能承担角色并失败:

在 AWS 中:

我有角色terraform-admin-np使用 2 个AWS 托管策略AmazonS3FullAccess&AdministratorAccess并与此建立信任关系:

然后我有一个附有政策文件的用户:

和一个S3 存储桶txxxxxxxxxxxxxxte附有此政策文件:

在 Terraform 中:

来自的片段provider.tf

tgw_cnp.tfvars来自后端配置的片段:

然后以这种方式运行:

有了这个,我可以毫无问题地使用 AWS CLI 担任角色:

但 terraform 因上述错误而失败。知道我在做什么错吗?

0 投票
1 回答
355 浏览

amazon-web-services - AWS 在使用 SDK 时承担角色访问被拒绝

我正在使用 go sdk 创建一个新角色并承担它。两者都是由同一个 IAM 用户完成的。角色信任关系如下:

稍后尝试将对象添加到存储桶时,我可以创建会话令牌,但 PutObject 操作因 AccessDenied 而失败。桶策略是: