Cloudformation访问已创建的资源

时间:2020-06-11 07:49:48

标签: amazon-web-services amazon-cloudformation

是否可以获取在当前堆栈中未创建的角色的profileInstance?可以说我在cloudformation中获得了角色的名称(作为参数传递),有没有办法获取其profileinstance?

类似:

{"Fn::GetAtt" : ["MyRoleName", "ArnOfProfileInstance"] }

一个更笼统的问题,我们可以访问不是在当前堆栈中创建的资源或根本没有通过cloudformation创建的资源吗?

1 个答案:

答案 0 :(得分:1)

是的,如果您知道角色的知识,则个人资料具有已知格式。例如:

rest("/load")
.get("/sampleFile")
.to("direct:readFromSampleFile")
    ;
from("direct:readFromSampleFile")
.pollEnrich("file://c:/folder?fileName=sample.txt&noop=true&idempotent=false") // idempotent to allow re-read, no-op to keep the file untouched
.convertBodyTo(String.class)
.log("Read ${body}")
.unmarshal().json(JsonLibrary.Jackson)
.setHeader("Content-Type").constant("application/json")
.log("Returned ${body}")
;

因此,您可以从角色arn 创建配置文件arn。例如:

# role
arn:aws:iam::xxxxxx:role/my-role-name

# profile 
arn:aws:iam::xxxxxx:instance-profile/my-role-name