0
我試圖通過創建一個AWS CLI
管理的策略:MalformedPolicyDocument錯誤而創建IAM策略
POLICY='
{
"Version":"2012-10-17",
"Statement":
[{
"Effect":"Allow",
"Action":
[
"cloudformation:*"
],
"Resource":"*"
},
{
"Effect":"Deny",
"Action":
[
"cloudformation:UpdateStack",
"cloudformation:DeleteStack"
],
"Resource": "'${arn}'"
}]
}'
# Create policy if not already created
[ $(aws iam list-policies | grep -ce CloudFormation-policy-${StackName}) -eq 0 ] && (aws iam create-policy --policy-name CloudFormation-policy-${StackName} --policy-document "'${POLICY}'")
當我運行該腳本,我得到這個錯誤:
An error occurred (MalformedPolicyDocument) when calling the CreatePolicy operation: Syntax errors in policy.
我不能找出錯誤的位置。 有什麼想法?
你試圖從CLI跑的?您是否在AWS控制檯中驗證了這一點?我的猜測是這個問題是由於單引號與雙引號。 – kosa
是的,它來自CLI。 當我做'回聲「‘$ {}政策’」'我得到了簡單的報價 – Somar
哪個OS的CLI是運行在JSON? Windows還是Linux或Mac? – kosa