【发布时间】:2019-01-24 11:37:30
【问题描述】:
我正在创建一个具有特定 IAM 角色的 Amazon EC2 实例。
现在我想分离该 IAM 角色并附加一个新的 IAM 角色或替换为一个新的 IAM 角色。我正在寻找与 CLI 相关的选项,但当实例通过 java 代码运行时,我找不到任何选项。
这是我的代码:
RunInstancesRequest runInstancesRequest = new RunInstancesRequest().withImageId(imageID)
.withBlockDeviceMappings(blockDeviceMappings).withInstanceType(type).withMinCount(1).withMaxCount(1)
.withIamInstanceProfile(new IamInstanceProfileSpecification().withName(iamRole))
.withUserData(getUserDataScript())
.withNetworkInterfaces(new InstanceNetworkInterfaceSpecification().withAssociatePublicIpAddress(true)
.withDeviceIndex(0).withSubnetId(subnetID).withGroups(groups));
RunInstancesResult runInstancesResult = ec2Client.runInstances(runInstancesRequest);
【问题讨论】:
-
您能否澄清一下...您是要更改附加到现有 EC2 实例的 IAM 角色,还是要在 时指定一个 IAM 角色启动一个新的 EC2 实例?
-
我想更改附加到已经具有一些 IAM 角色的现有 aws 实例的 IAM 角色
-
如果能根据运行实例的instance-id来做就好了
-
您希望通过 Java(而不是控制台或 CLI)执行此操作,对吗?
-
是的,因为剩下的一切都在使用 java,如果它在控制台中可用,这意味着也必须有一种方法可以通过 Java 代码来做,只是我找不到那个 api
标签: amazon-web-services amazon-ec2 aws-sdk aws-java-sdk aws-java-sdk-2.x