Je suis en train de créer une politique gérée par AWS CLI
:erreur MalformedPolicyDocument tout en créant une politique 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}'")
Quand je lance le script je reçois cette erreur:
An error occurred (MalformedPolicyDocument) when calling the CreatePolicy operation: Syntax errors in policy.
Je ne peux pas comprendre où est l'erreur. Une idée?
Essayez-vous d'exécuter cela à partir de CLI? L'avez-vous validé dans AWS Console? Ma conjecture est que ce problème est dû à la citation simple vs guillemets. – kosa
Oui c'est de CLI. Quand je fais 'echo" '$ {POLICY}' "' Je reçois le json dans des guillemets simples – Somar
Sur quel OS votre CLI fonctionne? Windows ou Linux ou Mac? – kosa