Amazon web services 在本地获取aws交叉账户iam角色
我是aws的新手,在担任iam角色时面临问题。我正在担任交叉账户角色。比如说,在帐户x中,为帐户Y创建了角色togive权限,以读取运动流 我想连接到帐户Y,使用JavaSDK从帐户X本地获取流(我不会在帐户Y上启动EC2实例)。那么他们有没有办法做到这一点呢 我知道,如果我在帐户Y上的EC2实例上运行应用程序,我将能够对其进行fetch,但我不想使用EC2获取它Amazon web services 在本地获取aws交叉账户iam角色,amazon-web-services,aws-sdk,amazon-iam,amazon-kinesis,Amazon Web Services,Aws Sdk,Amazon Iam,Amazon Kinesis,我是aws的新手,在担任iam角色时面临问题。我正在担任交叉账户角色。比如说,在帐户x中,为帐户Y创建了角色togive权限,以读取运动流 我想连接到帐户Y,使用JavaSDK从帐户X本地获取流(我不会在帐户Y上启动EC2实例)。那么他们有没有办法做到这一点呢 我知道,如果我在帐户Y上的EC2实例上运行应用程序,我将能够对其进行fetch,但我不想使用EC2获取它 AWS doc mentions in https://docs.aws.amazon.com/cli/lates
AWS doc mentions in
https://docs.aws.amazon.com/cli/latest/topic/config-vars.html
# In ~/.aws/credentials:
[development]
aws_access_key_id=foo
aws_secret_access_key=bar
# In ~/.aws/config
[profile crossaccount]
role_arn=arn:aws:iam:...
source_profile=development
与此有关吗?在这里,我认为crossaccount是在accountx中创建的角色,用于访问accounty
Which aws api should I call to fetch the streams?
提前感谢。AWS中的跨帐户访问有一个您需要遵循的特定协议。当您在帐户X中创建IAM角色时,该角色已被授予访问帐户Y中资源的权限,帐户Y还需要授予该角色执行
STS:AssumeRole
的权限
一旦这部分设置完成,您就可以开始了。
阅读更多关于它的信息
要使用AWS SDK for Java,请为STS
服务创建一个服务对象,并执行AssumeRole
调用。如果您提供了正确的凭据,则结果将是一对有效的凭据,可以访问帐户Y的资源
阅读有关在Java中使用假定角色的更多信息。谢谢Tom。那么,~/.aws/credentials和~/.aws/config将分别用于加载凭据(访问密钥和id)和跨帐户角色arn?