gpt4 book ai didi

java - 使用假设角色同时访问属于不同帐户的两个 dynamodb 表不起作用

转载 作者:行者123 更新时间:2023-12-02 04:25:51 24 4
gpt4 key购买 nike

我有一个在 ECS 中运行的 Java 应用程序,我想从帐户 1 中的表(source_table)读取数据并将其写入帐户 2 中的表(destination_table)。我创建了两个具有不同凭证提供程序的 dynamodb 客户端 - 对于 source_table 客户端,我使用带有帐户 1 中角色的 arn 的 STSAssumeRoleSessionCredentialsProvider ;对于目标客户端,我使用 DefaultAWSCredentialsProviderChain

假设角色位有效,我可以使用源客户端进行读取,但使用目标客户端不起作用 - 当尝试写入目标表时,它仍然尝试使用假设的角色凭据,并因未经授权的错误而失败(假设-角色无权执行Put Item)。

我尝试在目标客户端上使用EC2ContainerCredentialsProviderWrapper,但出现同样的错误。

这应该有效吗?或者凭证是否在幕后共享,导致不可能像这样同时运行两个不同的 AWSCredentialProvider

我注意到this答案使用静态凭据并且显然有效,所以我不知道为什么这不起作用。

最佳答案

我在 AWS 支持人员的帮助下解决了这个问题。这是我在帐户 2 中的角色上的 IAM 配置出现的问题。我被错误消息误导了,该错误消息显示“假设的角色无权执行 Put Item”,而实际上我的原始帐户 2 角色本身无法执行此操作.

关于java - 使用假设角色同时访问属于不同帐户的两个 dynamodb 表不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56608819/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com