[英]How to generate the AWS root account ARN in CloudFormation?
情況
我正在CloudFormation中生成一個KMS密鑰。 根據KMS策略文檔 ,至關重要的是創建一個以Principal
為帳戶本身的策略,以便IAM策略能夠授予對密鑰的訪問權限。
問題
如何在CloudFormation中為帳戶根創建ARN?
答案
{
"Fn::Join":[
":",
[
"arn:aws:iam:",
{
"Ref":"AWS::AccountId"
},
"root"
]
]
}
為什么這樣做?
首先,讓我們檢查"Ref":"AWS::AccountId"
。 這是一個偽參數引用 ,這是一種很好的說法,它是CloudFormation附帶的一個參數。 有許多這樣的參數。 這恰好為我們提供了帳戶ID,這對於構建ARN至關重要。
現在,剩下的就是使用此帳戶ID創建ARN。 Fn::Join
只是CloudFormation內置的 ,允許串聯字符串。 當我們在此處將引用與字符串常量(或其他引用)組合在一起時,這一點至關重要。
結果是...
arn:aws:iam::123456789012:root
對於將YAML用作CloudFormation模板的用戶:
!Sub arn:aws:iam::${AWS::AccountId}:root
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.