Plantilla de Cloudformation para fijar la política existente existente de la función de IAM

0

Pregunta

Quiero adjuntar un aws política administrada a una función existente. Yo estoy logrando esto con la plantilla:

{
    "AWSTemplateFormatVersion": "2010-09-09",
    "Description": "AWS CloudFormation template to modify Role",
    "Parameters": {
        "MyRole": {
            "Type": "String",
            "Default": "MyRole",
            "Description": "Role to be modified"
        }
    },
    "Resources": {
        "S3FullAccess": {
            "Type": "AWS::IAM::ManagedPolicy",
            "Properties": {
                "PolicyDocument": {
                    "Version": "2012-10-17",
                    "Statement": [{
                        "Effect": "Allow",
                        "Action": [
                            "s3:*",
                            "s3-object-lambda:*"
                        ],
                        "Resource": "*"
                    }]
                },
                "Roles": [
                    "MyRole"
                ]
            }
        }
    }
}

Esta plantilla va a crear una política con s3FullAccess y adjuntarlo a MyRole. Pero no quiero crear una nueva política, si quiero usar la política ya presente con aws s3 acceso completo, ¿cómo puedo hacer eso.

Y si puedo usar esta plantilla:

{
    "AWSTemplateFormatVersion": "2010-09-09",
    "Description": "AWS CloudFormation template to modify Role",
    "Resources": {
        "IAMRole": {
            "Type": "AWS::IAM::Role",
            "Properties": {
                "Path": "/",
                "ManagedPolicyArns": [
                    "arn:aws:iam::aws:policy/ReadOnlyAccess"
                ],
                "AssumeRolePolicyDocument": {
                    "Version": "2012-10-17",
                    "Statement": [{
                        "Action": "sts:AssumeRole",
                        "Effect": "Allow",
                        "Principal": {
                            "AWS": "*"
                        }
                    }]
                },
                "RoleName": "RoleName"
            }
        }
    }
}

Este intento de crear un nuevo rol y adjuntar ReadOnlyPolicy a ella. Pero si quiero adjuntar una política de funciones existentes, cómo se refieren ese rol en la plantilla.

1

Mejor respuesta

0

Utilice su AWS::IAM::Role's ManagedPolicyArns de la propiedad, donde se acaba de especificar el ARN de gestionar la política de adjuntar.

Para utilizar la función existente en CloudFormation, usted tiene que importar es. Entonces usted será capaz de gestionar de CloudFormation.

2021-11-24 05:14:20

Si yo uso, AWS::IAM::Papel, no hay manera de especificar la función existente. Intenta crear un nuevo rol y, a continuación, conecte la política con ManagedPolicyArns a cargo recientemente creado.
PRaw

@PRaw agregar administradas existentes de la política para el papel en su plantilla con ManagedPolicyArns de la propiedad.
Marcin

a la derecha, he intentado eso, pero cómo consultar los roles existentes en ella.
PRaw

@PRaw no estoy seguro de a qué te refieres. Tal vez sería buena idea hacer de nuevo la pregunta, específica para la función de problema con la CFN plantilla que se utiliza. Su pregunta es acerca de la política, y no presenta ningún papel en ella.
Marcin

He actualizado a la pregunta. Por favor, Compruebe si puede ayudar. @Marcin
PRaw

@PRaw veo. Gracias por la actualización. He actualizado la respuesta. También si la respuesta es útil, su aceptación se agradece.
Marcin

En otros idiomas

Esta página está en otros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Slovenský
..................................................................................................................