Estaba mirando la función de condición Fn::If: para crear o aprovisionar un recurso solo si una condición se evalúa como verdadera. En mi caso, creó una política si el entorno es prod.
Parameters: Env: Description: Environment Type: String Conditions: IsProd: !Equals [!Ref Env, 'prod']Sé cómo hacerlo para una propiedad, pero no para todo el bloque de recursos.
Type: 'AWS::IAM::Policy' Properties: PolicyName: root PolicyDocument: Version: 2012-10-17 Statement: - Effect: Allow Action: '*' Resource: '*' Roles: - !Ref RootRole¿Es esto algo posible?
Puede hacerlo usando Condición: atributo de recurso. Por ejemplo:
Resources: MyIAMPolicy: Condition: IsProd Type: 'AWS::IAM::Policy' Properties: PolicyName: root PolicyDocument: Version: 2012-10-17 Statement: - Effect: Allow Action: '*' Resource: '*' Roles: - !Ref RootRoleMás sobre esto se puede encontrar aquí: