我正在尝试根据环境向托管策略Arns添加一个条件,它必须运行指定的策略
这是我的代码:
Conditions:
IsEnvProd: Fn::Equals [!Ref Env, 'prod']
ManagedPolicyArns:
- Fn::If:
- IsEnvProd:
- "arn:aws:iam::111111111111:policy/prod_policy"
- "arn:aws:iam::111111111111:policy/stage_policy"
收到以下错误:验证模板操作:模板错误:Fn::If 需要包含三个元素的列表参数
试试这个:
Conditions:
IsEnvProd: Fn::Equals [!Ref Env, 'prod']
ManagedPolicyArns:
- Fn::If:
- IsEnvProd
- "arn:aws:iam::111111111111:policy/prod_policy"
- "arn:aws:iam::111111111111:policy/stage_policy"
Fn::If
采用三个参数。第一个是条件名称,第二个是值(如果为 true(,第三个是值(如果为 false(。你传递了一张地图。
好的,这是有道理的,谢谢:
但是我现在不断收到此错误:
Template format error: Conditions can only be boolean operations on parameters and other conditions