

Amazon ya no CodeCatalyst está abierto a nuevos clientes. Los clientes existentes pueden seguir utilizando el servicio con normalidad. Para obtener más información, consulte [Cómo migrar desde CodeCatalyst](migration.md).

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Otorgue acceso a AWS los recursos del proyecto con funciones de IAM
<a name="ipa-iam-roles"></a>

CodeCatalyst puede acceder a AWS los recursos conectándolo Cuenta de AWS a un CodeCatalyst espacio. Luego, puede crear los siguientes roles de servicio y asociarlos al conectar su cuenta.

Para obtener más información sobre los elementos que utiliza en una política JSON, consulte [Referencia de los elementos de la política de JSON de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html) en la *Guía del usuario de IAM*.
+ Para acceder a los recursos en y Cuenta de AWS para sus CodeCatalyst proyectos y flujos de trabajo, primero debe conceder el permiso CodeCatalyst para acceder a esos recursos en su nombre. Para ello, debe crear un rol de servicio en un entorno conectado Cuenta de AWS que CodeCatalyst pueda asumir en nombre de los usuarios y proyectos del espacio. Puede elegir entre crear y usar el rol de servicio **CodeCatalystWorkflowDevelopmentRole-*spaceName*** o crear roles de servicio personalizados y configurar esas políticas y roles de IAM manualmente. Como práctica recomendada, asigne a estos roles la cantidad mínima de permisos necesaria.
**nota**  
Para las funciones de servicio personalizadas, se requiere el director del CodeCatalyst servicio. Para obtener más información sobre el principio CodeCatalyst de servicio y el modelo de confianza, consulte[Entender el modelo de CodeCatalyst confianza](trust-model.md).
+ Para gestionar el soporte de un espacio a través del conectado Cuenta de AWS, puede optar por crear y utilizar el rol de **AWSRoleForCodeCatalystSupport**servicio que permite a CodeCatalyst los usuarios acceder al soporte. Para obtener más información sobre la compatibilidad con un CodeCatalyst espacio, consulte[Soporte para Amazon CodeCatalyst](support.md).



## El funcionamiento del rol de servicio **CodeCatalystWorkflowDevelopmentRole-*spaceName***
<a name="ipa-iam-roles-service-role"></a>

Puede añadir un rol de IAM a su espacio que CodeCatalyst podrá utilizar para crear recursos y acceder a ellos en un entorno conectado Cuenta de AWS. Esto se denomina [rol de servicio](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-role). La forma más sencilla de crear un rol de servicio es añadir uno al crear el espacio y elegir la opción **CodeCatalystWorkflowDevelopmentRole-*spaceName*** para ese rol. Esto no solo crea el rol de servicio con el `AdministratorAccess` adjunto, sino que también crea la política de confianza que permite CodeCatalyst asumir el rol en nombre de los usuarios en los proyectos del espacio. El rol de servicio se aplica al espacio, no a proyectos individuales. Para crear esta función, consulte [Creación del rol **CodeCatalystWorkflowDevelopmentRole-*spaceName*** para su cuenta y su espacio](#ipa-iam-roles-service-create). Solo puede crear un rol para cada espacio de cada cuenta.

**nota**  
Esta función solo se recomienda para su uso con cuentas de desarrollo y utiliza la política `AdministratorAccess` AWS gestionada, lo que le da pleno acceso para crear nuevas políticas y recursos en esta Cuenta de AWS.

La política asociada al rol **CodeCatalystWorkflowDevelopmentRole-*spaceName*** está diseñada para funcionar con proyectos creados con esquemas en el espacio. Permite a los usuarios de esos proyectos desarrollar, compilar, probar e implementar código utilizando los recursos de la Cuenta de AWS conectada. Para obtener más información, consulte [Crear un rol para un AWS servicio](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html).

La política asociada a la **CodeCatalystWorkflowDevelopmentRole-*spaceName***función es la política `AdministratorAccess` gestionada en AWS. Se trata de una política que otorga acceso total a todas AWS las acciones y recursos. Para ver el documento de política de JSON en la consola de IAM, consulte [AdministratorAccess](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/AdministratorAccess).

La siguiente política de confianza permite CodeCatalyst asumir el **CodeCatalystWorkflowDevelopmentRole-*spaceName***rol. Para obtener más información sobre el modelo de CodeCatalyst confianza, consulte[Entender el modelo de CodeCatalyst confianza](trust-model.md).

```
"Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
             "Principal": { 
                "Service": [ 
                    "codecatalyst-runner.amazonaws.com",
                    "codecatalyst.amazonaws.com" 
                ] 
            }, 
            "Action": "sts:AssumeRole",
            "Condition": {
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:codecatalyst:::space/spaceId/project/*"
                }
            }
        }
    ]
```

## Creación del rol **CodeCatalystWorkflowDevelopmentRole-*spaceName*** para su cuenta y su espacio
<a name="ipa-iam-roles-service-create"></a>

Siga estos pasos para crear el rol `CodeCatalystWorkflowDevelopmentRole-spaceName` que se usará en los flujos de trabajo de su espacio. Para cada cuenta en la que desee tener roles de IAM para utilizarlos en proyectos, deberá añadir a su espacio un rol, como el de desarrollador. 

Antes de empezar, debe disponer de privilegios administrativos para su administrador Cuenta de AWS o poder trabajar con él. Para obtener más información sobre cómo Cuentas de AWS se utilizan las funciones de IAM CodeCatalyst, consulte[Permitir el acceso a AWS los recursos con conexión Cuentas de AWS](ipa-connect-account.md).

**Para crear y añadir el CodeCatalyst **CodeCatalystWorkflowDevelopmentRole-*spaceName*****

1. Antes de empezar en la CodeCatalyst consola, abra el espacio y Consola de administración de AWS, a continuación, asegúrese de haber iniciado sesión con lo mismo Cuenta de AWS para su espacio.

1. Abre la CodeCatalyst consola en [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Navega hasta tu CodeCatalyst espacio. Elija **Configuración** y después **Cuentas de AWS**.

1. Elija el enlace en el Cuenta de AWS que desee crear el rol. Aparecerá la página **Detalles de la Cuenta de AWS **.

1. Selecciona **Administrar roles desde Consola de administración de AWS**. 

   La página **Añadir función de IAM al CodeCatalyst espacio de Amazon** se abre en. Consola de administración de AWS Esta es la página de **Amazon CodeCatalyst Spaces**. Es posible que deba iniciar sesión para acceder a la página.

1. Elija **Crear un rol CodeCatalyst de administrador de desarrollo en IAM.** Esta opción crea un rol de servicio que contiene la política de permisos y la política de confianza del rol de desarrollo. El rol tendrá un nombre `CodeCatalystWorkflowDevelopmentRole-spaceName`. Para obtener más información sobre los roles y la política de roles, consulte [El funcionamiento del rol de servicio **CodeCatalystWorkflowDevelopmentRole-*spaceName***](#ipa-iam-roles-service-role).
**nota**  
Esta función solo se recomienda para su uso con cuentas de desarrollador y utiliza la política `AdministratorAccess` AWS gestionada, lo que le da acceso total para crear nuevas políticas y recursos en ella. Cuenta de AWS

1. Seleccione **Crear rol de desarrollo**.

1. En la página de conexiones, en la sección **Funciones de IAM disponibles para CodeCatalyst**, consulta la `CodeCatalystWorkflowDevelopmentRole-spaceName` función en la lista de funciones de IAM añadidas a tu cuenta.

1. Para volver a tu espacio, selecciona **Ir a Amazon CodeCatalyst**.

## El funcionamiento del rol de servicio **AWSRoleForCodeCatalystSupport**
<a name="ipa-iam-roles-support-role"></a>

Puede añadir una función de IAM a su espacio que CodeCatalyst los usuarios de un espacio puedan utilizar para crear casos de soporte y acceder a ellos. Esto se denomina [rol de servicio](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-role) para soporte; la forma más sencilla de crearlo consiste en añadir uno al crear el espacio y elegir la opción `AWSRoleForCodeCatalystSupport` para ese rol. Esto no solo crea la política y el rol, sino que también crea la política de confianza que permite CodeCatalyst asumir el rol en nombre de los usuarios en los proyectos del espacio. El rol de servicio se aplica al espacio, no a proyectos individuales. Para crear esta función, consulte [Creación del rol **AWSRoleForCodeCatalystSupport** para su cuenta y su espacio](#ipa-iam-roles-support-create).

La política asociada al rol `AWSRoleForCodeCatalystSupport` es una política administrada que proporciona acceso a los permisos de soporte. Para obtener más información, consulte [AWS política gestionada: AmazonCodeCatalystSupportAccess](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonCodeCatalystSupportAccess).

El rol de confianza de la política CodeCatalyst permite asumir el rol. 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": [
                    "codecatalyst.amazonaws.com",
                    "codecatalyst-runner.amazonaws.com"
                ]
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

## Creación del rol **AWSRoleForCodeCatalystSupport** para su cuenta y su espacio
<a name="ipa-iam-roles-support-create"></a>

Siga estos pasos para crear el rol `AWSRoleForCodeCatalystSupport`, que se usará en los casos de soporte de su espacio. El rol debe añadirse a la cuenta de facturación designada para el espacio.

Antes de empezar, debe disponer de privilegios administrativos para su administrador Cuenta de AWS o poder trabajar con él. Para obtener más información sobre cómo Cuentas de AWS se utilizan las funciones de IAM CodeCatalyst, consulte[Permitir el acceso a AWS los recursos con conexión Cuentas de AWS](ipa-connect-account.md).

**Para crear y añadir el CodeCatalyst **AWSRoleForCodeCatalystSupport****

1. Antes de empezar en la CodeCatalyst consola, abra el espacio y Consola de administración de AWS, a continuación, asegúrese de haber iniciado sesión con lo mismo Cuenta de AWS para su espacio.

1. Navega hasta tu CodeCatalyst espacio. Elija **Configuración** y después **Cuentas de AWS**.

1. Elija el enlace en el Cuenta de AWS que desee crear el rol. Aparecerá la página **Detalles de la Cuenta de AWS **.

1. Selecciona **Administrar roles desde Consola de administración de AWS**. 

   La página **Añadir función de IAM al CodeCatalyst espacio de Amazon** se abre en. Consola de administración de AWS Esta es la página de **Amazon CodeCatalyst Spaces**. Es posible que tenga que iniciar sesión para acceder a la página.

1. En **los detalles del CodeCatalyst espacio**, selecciona **Add CodeCatalyst Support role**. Esta opción crea un rol de servicio que contiene la política de permisos y la política de confianza del rol de desarrollo de vista previa. El rol tendrá un nombre **AWSRoleForCodeCatalystSupport** con un identificador único adjunto. Para obtener más información sobre los roles y la política de roles, consulte [El funcionamiento del rol de servicio **AWSRoleForCodeCatalystSupport**](#ipa-iam-roles-support-role).

1. En la página **Añadir función para CodeCatalyst Support**, deje seleccionada la opción predeterminada y, a continuación, elija **Crear función**.

1. En **Funciones de IAM disponibles para CodeCatalyst**, consulta la `CodeCatalystWorkflowDevelopmentRole-spaceName` función en la lista de funciones de IAM añadidas a tu cuenta.

1. Para volver a tu espacio, selecciona **Ir a Amazon CodeCatalyst**.

## Configurar las funciones de IAM para las acciones del flujo de trabajo en CodeCatalyst
<a name="ipa-iam-roles-policies"></a>

En esta sección se detallan las funciones y políticas de IAM que puede crear para utilizarlas con su CodeCatalyst cuenta. Para obtener instrucciones sobre cómo crear roles de ejemplo, consulte [Creación manual de roles para acciones de flujos de trabajo](#ipa-iam-roles-actions). Tras crear el rol de IAM, copie el ARN del rol para añadir el rol de IAM a la conexión de la cuenta y asociarlo al entorno del proyecto. Para obtener más información, consulte [Adición de roles de IAM a las conexiones de cuentas](ipa-connect-account-addroles.md).

### CodeCatalyst rol de creación para el acceso a Amazon S3
<a name="ipa-iam-rolepolicy-BuildRoleS3"></a>

Para las acciones de creación de CodeCatalyst flujos de trabajo, puede usar el rol de **CodeCatalystWorkflowDevelopmentRole-*spaceName***servicio predeterminado o puede crear un rol de IAM denominado **CodeCatalystBuildRoleforS3Access**. Este rol usa una política con permisos específicos que CodeCatalyst necesita para ejecutar tareas en CloudFormation sus recursos. Cuenta de AWS

Este rol otorga permisos para hacer lo siguiente:
+ Escribir en bucket de Amazon S3.
+ Support the building of resources with CloudFormation. Esto requiere acceso a Amazon S3.

Este rol utiliza la siguiente política:

**nota**  
La primera vez que utilice el rol para ejecutar acciones de flujo de trabajo, use el comodín en la instrucción de política de recursos y, a continuación, precise el ámbito de la política con el nombre del recurso cuando esté disponible.  

```
"Resource": "*"
```

### CodeCatalyst crear un rol para CloudFormation
<a name="ipa-iam-rolepolicy-BuildRoleCloudFormation"></a>

Para las acciones de creación de CodeCatalyst flujos de trabajo, puedes usar el rol de **CodeCatalystWorkflowDevelopmentRole-*spaceName***servicio predeterminado o puedes crear un rol de IAM con los permisos necesarios. Este rol usa una política con permisos específicos que CodeCatalyst necesita para ejecutar tareas en sus CloudFormation recursos. Cuenta de AWS

Este rol otorga permisos para hacer lo siguiente:
+ Support the building of resources with CloudFormation. Esto es obligatorio junto con la función de CodeCatalyst compilación para el acceso a Amazon S3 y la función de CodeCatalyst implementación para CloudFormation.

Se deben adjuntar a esta función las siguientes políticas AWS administradas:
+ **AWSCloudFormationFullAccess**
+ **IAMFullAcceso**
+ **Amazon S3 FullAccess**
+ **APIGatewayAdministrador de Amazon**
+ **AWSLambdaFullAccess**

### CodeCatalyst crear un rol para CDK
<a name="ipa-iam-rolepolicy-BuildRoleCDK"></a>

Para CodeCatalyst los flujos de trabajo que ejecutan acciones de creación de CDK, como una aplicación web moderna de tres niveles, puede utilizar el rol de **CodeCatalystWorkflowDevelopmentRole-*spaceName***servicio predeterminado o puede crear un rol de IAM con los permisos necesarios. Este rol usa una política con permisos específicos que CodeCatalyst necesita iniciar y ejecutar comandos de compilación de CDK para los recursos de su empresa. CloudFormation Cuenta de AWS

Este rol otorga permisos para hacer lo siguiente:
+ Escribir en bucket de Amazon S3.
+ Support la creación de construcciones de CDK y pilas de CloudFormation recursos. Esto requiere acceso a Amazon S3 para el almacenamiento de artefactos, acceso a Amazon ECR para el soporte de repositorios de imágenes y acceso a SSM para la supervisión y la gobernanza del sistema en el caso de instancias virtuales.

Este rol utiliza la siguiente política:

**nota**  
La primera vez que utilice el rol para ejecutar acciones de flujo de trabajo, use el comodín en la instrucción de política de recursos y, a continuación, precise el ámbito de la política con el nombre del recurso cuando esté disponible.  

```
"Resource": "*"
```

### CodeCatalyst implementar un rol para CloudFormation
<a name="ipa-iam-rolepolicy-DeployCloudFormation"></a>

Para las acciones de implementación del CodeCatalyst flujo de trabajo que utilizan CloudFormation, puede usar el rol de **CodeCatalystWorkflowDevelopmentRole-*spaceName***servicio predeterminado o puede usar una política con permisos específicos que CodeCatalyst necesite ejecutar tareas en CloudFormation los recursos de su Cuenta de AWS propiedad.

Este rol otorga permisos para hacer lo siguiente:
+ Permite CodeCatalyst invocar una función λ para realizar una blue/green implementación completa. CloudFormation
+  CodeCatalyst Permiten crear y actualizar pilas y conjuntos de cambios en. CloudFormation

Este rol utiliza la siguiente política:

```
{"Action": [
        "cloudformation:CreateStack",
        "cloudformation:DeleteStack",
        "cloudformation:Describe*",
        "cloudformation:UpdateStack",
        "cloudformation:CreateChangeSet",
        "cloudformation:DeleteChangeSet",
        "cloudformation:ExecuteChangeSet",
        "cloudformation:SetStackPolicy",
        "cloudformation:ValidateTemplate",
        "cloudformation:List*",
        "iam:PassRole"
    ],
    "Resource": "resource_ARN",
    "Effect": "Allow"
}
```

**nota**  
La primera vez que utilice el rol para ejecutar acciones de flujo de trabajo, use el comodín en la instrucción de política de recursos y, a continuación, precise el ámbito de la política con el nombre del recurso cuando esté disponible.  

```
"Resource": "*"
```

### CodeCatalyst rol de implementación para Amazon EC2
<a name="ipa-iam-rolepolicy-DeployEC2"></a>

CodeCatalyst las acciones de despliegue del flujo de trabajo utilizan un rol de IAM con los permisos necesarios. Esta función utiliza una política con permisos específicos que CodeCatalyst necesita para ejecutar tareas en los recursos de Amazon EC2 de su empresa. Cuenta de AWS La política predeterminada del rol **CodeCatalystWorkflowDevelopmentRole-*spaceName*** no incluye los permisos para Amazon EC2 ni Amazon EC2 Auto Scaling.

Este rol otorga permisos para hacer lo siguiente:
+ Crear implementaciones en Amazon EC2.
+ Leer las etiquetas en una instancia o identificar una instancia de Amazon EC2 mediante nombres de grupos de escalado automático. 
+ Leer, crear, actualizar y eliminar grupos de Amazon EC2 Auto Scaling, enlaces de ciclo de vida y políticas de escalado.
+ Publicar información para temas de Amazon SNS.
+ Recupere información sobre CloudWatch las alarmas.
+ Leer y actualizar Elastic Load Balancing.

Este rol utiliza la siguiente política:

**nota**  
La primera vez que utilice el rol para ejecutar acciones de flujo de trabajo, use el comodín en la instrucción de política de recursos y, a continuación, precise el ámbito de la política con el nombre del recurso cuando esté disponible.  

```
"Resource": "*"
```

### CodeCatalyst rol de implementación para Amazon ECS
<a name="ipa-iam-rolepolicy-DeployECS"></a>

Para las acciones del CodeCatalyst flujo de trabajo, puede crear un rol de IAM con los permisos necesarios. Puede usar la función de **CodeCatalystWorkflowDevelopmentRole-*spaceName***servicio predeterminada o puede crear una función de IAM para CodeCatalyst implementar acciones que se utilizarán en las implementaciones de Lambda. Esta función utiliza una política con permisos específicos que CodeCatalyst necesita para ejecutar tareas en los recursos de Amazon ECS de su Cuenta de AWS empresa.

Este rol otorga permisos para hacer lo siguiente:
+ Inicie el despliegue continuo de Amazon ECS en nombre de un CodeCatalyst usuario, en una cuenta especificada en la CodeCatalyst conexión.
+ Leer, actualizar y eliminar conjuntos de tareas de Amazon ECS.
+ Actualizar grupos de destino de Elastic Load Balancing, oyentes y reglas.
+ Invocar funciones de Lambda.
+ Acceder a archivos de revisión en buckets de Amazon S3.
+ Recupere información sobre CloudWatch las alarmas.
+ Publicar información para temas de Amazon SNS.

Este rol utiliza la siguiente política:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [{
    "Action":[
      "ecs:DescribeServices",
      "ecs:CreateTaskSet",
      "ecs:DeleteTaskSet",
      "ecs:ListClusters",
      "ecs:RegisterTaskDefinition",
      "ecs:UpdateServicePrimaryTaskSet",
      "ecs:UpdateService",
      "elasticloadbalancing:DescribeTargetGroups",
      "elasticloadbalancing:DescribeListeners",
      "elasticloadbalancing:ModifyListener",
      "elasticloadbalancing:DescribeRules",
      "elasticloadbalancing:ModifyRule",
      "lambda:InvokeFunction",
      "lambda:ListFunctions",
      "cloudwatch:DescribeAlarms",
      "sns:Publish",
      "sns:ListTopics", 
      "s3:GetObject",
      "s3:GetObjectVersion",
      "codedeploy:CreateApplication", 
      "codedeploy:CreateDeployment", 
      "codedeploy:CreateDeploymentGroup", 
      "codedeploy:GetApplication", 
      "codedeploy:GetDeployment", 
      "codedeploy:GetDeploymentGroup", 
      "codedeploy:ListApplications", 
      "codedeploy:ListDeploymentGroups", 
      "codedeploy:ListDeployments", 
      "codedeploy:StopDeployment", 
      "codedeploy:GetDeploymentTarget", 
      "codedeploy:ListDeploymentTargets", 
      "codedeploy:GetDeploymentConfig", 
      "codedeploy:GetApplicationRevision", 
      "codedeploy:RegisterApplicationRevision", 
      "codedeploy:BatchGetApplicationRevisions", 
      "codedeploy:BatchGetDeploymentGroups", 
      "codedeploy:BatchGetDeployments", 
      "codedeploy:BatchGetApplications", 
      "codedeploy:ListApplicationRevisions", 
      "codedeploy:ListDeploymentConfigs", 
      "codedeploy:ContinueDeployment"           
   ],
   "Resource":"*",
   "Effect":"Allow"
},{"Action":[
      "iam:PassRole"
   ],
   "Effect":"Allow",
   "Resource":"*",
   "Condition":{"StringLike":{"iam:PassedToService":[
            "ecs-tasks.amazonaws.com",
            "codedeploy.amazonaws.com"
         ]
      }
   }
}]
}
```

------

**nota**  
La primera vez que utilice el rol para ejecutar acciones de flujo de trabajo, use el comodín en la instrucción de política de recursos y, a continuación, precise el ámbito de la política con el nombre del recurso cuando esté disponible.  

```
"Resource": "*"
```

### CodeCatalyst rol de implementación para Lambda
<a name="ipa-iam-rolepolicy-DeployLambda"></a>

 Para las acciones CodeCatalyst del flujo de trabajo, puede crear un rol de IAM con los permisos necesarios. Puede usar la función de **CodeCatalystWorkflowDevelopmentRole-*spaceName***servicio predeterminada o crear una función de IAM para CodeCatalyst implementar acciones que se utilizarán en las implementaciones de Lambda. Esta función utiliza una política con permisos limitados que CodeCatalyst necesita para ejecutar tareas en los recursos de Lambda de su empresa. Cuenta de AWS

Este rol otorga permisos para hacer lo siguiente:
+ Leer, actualizar e invocar alias y funciones de Lambda.
+ Acceder a archivos de revisión en buckets de Amazon S3.
+ Recupere información sobre las alarmas de CloudWatch eventos.
+ Publicar información para temas de Amazon SNS.

Este rol utiliza la siguiente política:

**nota**  
La primera vez que utilice el rol para ejecutar acciones de flujo de trabajo, use el comodín en la instrucción de política de recursos y, a continuación, precise el ámbito de la política con el nombre del recurso cuando esté disponible.  

```
"Resource": "*"
```

### CodeCatalyst rol de implementación para Lambda
<a name="ipa-iam-rolepolicy-DeployLambda"></a>

Para las acciones del CodeCatalyst flujo de trabajo, puede usar el rol de **CodeCatalystWorkflowDevelopmentRole-*spaceName***servicio predeterminado o puede crear un rol de IAM con los permisos necesarios. Esta función utiliza una política con permisos limitados que CodeCatalyst necesita para ejecutar tareas en los recursos de Lambda de su empresa. Cuenta de AWS

Este rol otorga permisos para hacer lo siguiente:
+ Leer, actualizar e invocar alias y funciones de Lambda.
+ Acceder a archivos de revisión en buckets de Amazon S3.
+ Recupere información sobre CloudWatch las alarmas.
+ Publicar información para temas de Amazon SNS.

Este rol utiliza la siguiente política:

**nota**  
La primera vez que utilice el rol para ejecutar acciones de flujo de trabajo, use el comodín en la instrucción de política de recursos y, a continuación, precise el ámbito de la política con el nombre del recurso cuando esté disponible.  

```
"Resource": "*"
```

### CodeCatalyst implementar un rol para AWS SAM
<a name="ipa-iam-rolepolicy-DeploySAM"></a>

Para las acciones del CodeCatalyst flujo de trabajo, puede utilizar el rol de **CodeCatalystWorkflowDevelopmentRole-*spaceName***servicio predeterminado o puede crear un rol de IAM con los permisos necesarios. Este rol usa una política con permisos específicos que CodeCatalyst necesita para ejecutar las tareas AWS SAM y CloudFormation los recursos de su empresa. Cuenta de AWS

Este rol otorga permisos para hacer lo siguiente:
+  CodeCatalyst Permiten invocar una función Lambda para realizar el despliegue de aplicaciones CLI AWS SAM y sin servidor.
+  CodeCatalyst Permiten crear y actualizar pilas y conjuntos de cambios en. CloudFormation

Este rol utiliza la siguiente política:

**nota**  
La primera vez que utilice el rol para ejecutar acciones de flujo de trabajo, use el comodín en la instrucción de política de recursos y, a continuación, precise el ámbito de la política con el nombre del recurso cuando esté disponible.  

```
"Resource": "*"
```

### CodeCatalyst función de solo lectura para Amazon EC2
<a name="ipa-iam-rolepolicy-ReadOnlyEC2"></a>

Para las acciones CodeCatalyst del flujo de trabajo, puede crear un rol de IAM con los permisos necesarios. Esta función utiliza una política con permisos específicos que CodeCatalyst necesita para ejecutar tareas en los recursos de Amazon EC2 de su empresa. Cuenta de AWS La función **CodeCatalystWorkflowDevelopmentRole-*spaceName***de servicio no incluye los permisos para Amazon EC2 ni las acciones descritas para Amazon. CloudWatch

Este rol otorga permisos para hacer lo siguiente:
+ Obtener el estado de las instancias de Amazon EC2.
+ Obtenga CloudWatch métricas para las instancias de Amazon EC2.

Este rol utiliza la siguiente política:

**nota**  
La primera vez que utilice el rol para ejecutar acciones de flujo de trabajo, use el comodín en la instrucción de política de recursos y, a continuación, precise el ámbito de la política con el nombre del recurso cuando esté disponible.  

```
"Resource": "*"
```

### CodeCatalyst función de solo lectura para Amazon ECS
<a name="ipa-iam-rolepolicy-ReadOnlyECS"></a>

Para las acciones del CodeCatalyst flujo de trabajo, puede crear un rol de IAM con los permisos necesarios. Esta función utiliza una política con permisos específicos que CodeCatalyst necesita para ejecutar tareas en los recursos de Amazon ECS de su Cuenta de AWS empresa.

Este rol otorga permisos para hacer lo siguiente:
+ Leer conjuntos de tareas de Amazon ECS. 
+ Recupere información sobre CloudWatch las alarmas.

Este rol utiliza la siguiente política:

**nota**  
La primera vez que utilice el rol para ejecutar acciones de flujo de trabajo, use el comodín en la instrucción de política de recursos y, a continuación, precise el ámbito de la política con el nombre del recurso cuando esté disponible.  

```
"Resource": "*"
```

### CodeCatalyst función de solo lectura para Lambda
<a name="ipa-iam-rolepolicy-ReadOnlyLambda"></a>

Para las acciones CodeCatalyst del flujo de trabajo, puede crear un rol de IAM con los permisos necesarios. Esta función utiliza una política con permisos limitados que CodeCatalyst necesita para ejecutar tareas en los recursos de Lambda de su empresa. Cuenta de AWS

Este rol otorga permisos para hacer lo siguiente:
+  Leer los alias y las funciones de Lambda.
+ Acceder a archivos de revisión en buckets de Amazon S3.
+ Recupere información sobre CloudWatch las alarmas.

Este rol utiliza la siguiente política.

**nota**  
La primera vez que utilice el rol para ejecutar acciones de flujo de trabajo, use el comodín en la instrucción de política de recursos y, a continuación, precise el ámbito de la política con el nombre del recurso cuando esté disponible.  

```
"Resource": "*"
```

## Creación manual de roles para acciones de flujos de trabajo
<a name="ipa-iam-roles-actions"></a>

CodeCatalyst Las acciones del flujo de trabajo utilizan las funciones de IAM que usted cree, denominadas **función de creación**, **función de implementación** y **función de pila**.

Siga estos pasos para crear estos roles en IAM.

**Creación de un rol de implementación**

1. Cree una política para el rol del modo siguiente:

   1. Inicie sesión en. AWS

   1. Abra la consola de IAM en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

   1. En el panel de navegación, seleccione **Políticas**.

   1. Elija **Crear política**.

   1. Seleccione la pestaña **JSON**.

   1. Elimine el código existente.

   1. Pegue el siguiente código:
**nota**  
La primera vez que utilice el rol para ejecutar acciones de flujo de trabajo, use el comodín en la instrucción de política de recursos y, a continuación, precise el ámbito de la política con el nombre del recurso cuando esté disponible.  

      ```
      "Resource": "*"
      ```

   1. Elija **Siguiente: Etiquetas**.

   1. Elija **Siguiente: Revisar**.

   1. En **Nombre**, escriba:

      ```
      codecatalyst-deploy-policy
      ```

   1. Elija **Crear política**.

      Ahora ha creado una política de permisos.

1. Cree el rol de implementación de la siguiente manera:

   1. En el panel de navegación, seleccione **Roles** y luego seleccione **Crear rol**.

   1. Elija **Política de confianza personalizada**.

   1. Elimine la política de confianza personalizada existente.

   1. Añada la siguiente política de confianza personalizada:

   1. Elija **Siguiente**.

   1. En **Políticas de permisos**, busque `codecatalyst-deploy-policy` y active su casilla de verificación.

   1. Elija **Siguiente**.

   1. En **Nombre del rol**, escriba:

      ```
      codecatalyst-deploy-role
      ```

   1. En **Descripción del rol**, escriba:

      ```
      CodeCatalyst deploy role
      ```

   1. Elija **Crear rol**.

   Ahora ha creado un rol de implementación con una política de confianza y una política de permisos.

1. Obtenga el ARN del rol de implementación de la siguiente manera:

   1. Seleccione **Roles** en el panel de navegación.

   1. En el cuadro de búsqueda, introduzca el nombre del rol que acaba de crear (`codecatalyst-deploy-role`).

   1. Elija el rol de la lista.

      Aparece la página **Resumen** del rol.

   1. En la parte superior, copie el valor de **ARN**.

   Ahora ha creado el rol de implementación con los permisos adecuados y ha obtenido su ARN.

**Creación de un rol de compilación**

1. Cree una política para el rol del modo siguiente:

   1. Inicie sesión en AWS.

   1. Abra la consola de IAM en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

   1. En el panel de navegación, seleccione **Políticas**.

   1. Elija **Crear política**.

   1. Seleccione la pestaña **JSON**.

   1. Elimine el código existente.

   1. Pegue el siguiente código:
**nota**  
La primera vez que utilice el rol para ejecutar acciones de flujo de trabajo, use el comodín en la instrucción de política de recursos y, a continuación, precise el ámbito de la política con el nombre del recurso cuando esté disponible.  

      ```
      "Resource": "*"
      ```

   1. Elija **Siguiente: Etiquetas**.

   1. Elija **Siguiente: Revisar**.

   1. En **Nombre**, escriba:

      ```
      codecatalyst-build-policy
      ```

   1. Elija **Crear política**.

      Ahora ha creado una política de permisos.

1. Cree el rol de compilación de la siguiente manera:

   1. En el panel de navegación, seleccione **Roles** y luego seleccione **Crear rol**.

   1. Elija **Política de confianza personalizada**.

   1. Elimine la política de confianza personalizada existente.

   1. Añada la siguiente política de confianza personalizada:

   1. Elija **Siguiente**.

   1. En **Políticas de permisos**, busque `codecatalyst-build-policy` y active su casilla de verificación.

   1. Elija **Siguiente**.

   1. En **Nombre del rol**, escriba:

      ```
      codecatalyst-build-role
      ```

   1. En **Descripción del rol**, escriba:

      ```
      CodeCatalyst build role
      ```

   1. Elija **Crear rol**.

   Ahora ha creado un rol de compilación con una política de confianza y una política de permisos.

1. Obtenga el ARN del rol de compilación de la siguiente manera:

   1. Seleccione **Roles** en el panel de navegación.

   1. En el cuadro de búsqueda, introduzca el nombre del rol que acaba de crear (`codecatalyst-build-role`).

   1. Elija el rol de la lista.

      Aparece la página **Resumen** del rol.

   1. En la parte superior, copie el valor de **ARN**.

   Ahora ha creado el rol de compilación con los permisos adecuados y ha obtenido su ARN.

**Creación de un rol de pila**
**nota**  
No es necesario crear un rol de pila, aunque se recomienda hacerlo por motivos de seguridad. Si no crea el rol de pila, tendrá que añadir al rol de implementación las políticas de permisos que se describen más adelante en este procedimiento.

1. Inicia sesión AWS con la cuenta en la que quieres implementar tu stack.

1. Abra la consola de IAM en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. En el panel de navegación, seleccione **Roles** y luego seleccione **Crear rol**.

1. En la parte superior, seleccione **Servicio de AWS **.

1. De la lista de servicios, selecciona **CloudFormation**.

1. Elija **Siguiente: permisos**.

1. En el cuadro de búsqueda, añada las políticas necesarias para acceder a los recursos de la pila. Por ejemplo, si su pila incluye una AWS Lambda función, debe añadir una política que conceda acceso a Lambda.
**sugerencia**  
Si no está seguro de qué políticas añadir, puede omitirlas por ahora. Cuando pruebas la acción, si no tienes los permisos adecuados, CloudFormation genera errores que muestran qué permisos debes añadir.

1. Elija **Siguiente: Etiquetas**.

1. Elija **Siguiente: Revisar**.

1. En **Nombre del rol**, escriba:

   ```
   codecatalyst-stack-role
   ```

1. Elija **Crear rol**.

1. A fin de obtener el ARN del rol de pila, haga lo siguiente:

   1. Seleccione **Roles** en el panel de navegación.

   1. En el cuadro de búsqueda, introduzca el nombre del rol que acaba de crear (`codecatalyst-stack-role`).

   1. Elija el rol de la lista.

   1. En la página **Resumen**, copie el valor de **ARN de rol**.

## Se utiliza AWS CloudFormation para crear políticas y funciones en IAM
<a name="ipa-iam-roles-cfn"></a>

Puede optar por crear y utilizar AWS CloudFormation plantillas para crear las políticas y funciones que necesita para acceder a los recursos y Cuenta de AWS para sus CodeCatalyst proyectos y flujos de trabajo. CloudFormation es un servicio que le ayuda a modelar y configurar sus AWS recursos para que pueda dedicar menos tiempo a gestionarlos y más tiempo a centrarse en las aplicaciones en las que se ejecutan AWS. Si tiene la intención de crear funciones en varios Cuentas de AWS, la creación de una plantilla puede ayudarle a realizar esta tarea con mayor rapidez.

La siguiente plantilla de ejemplo crea una política y un rol para la acción de implementación.

```
Parameters:
  CodeCatalystAccountId:
    Type: String
    Description: Account ID from the connections page
  ExternalId:
    Type: String
    Description: External ID from the connections page
Resources:
  CrossAccountRole:
    Type: 'AWS::IAM::Role'
    Properties:
      AssumeRolePolicyDocument:
        Version: "2012-10-17"		 	 	 
        Statement:
          - Effect: Allow
            Principal:
              AWS:
                - !Ref CodeCatalystAccountId
            Action:
              - 'sts:AssumeRole'
            Condition:
              StringEquals:
                sts:ExternalId: !Ref ExternalId
      Path: /
      Policies:
        - PolicyName: CodeCatalyst-CloudFormation-action-policy
          PolicyDocument:
            Version: "2012-10-17"		 	 	 
            Statement:
              - Effect: Allow
                Action:
                  - 'cloudformation:CreateStack'
                  - 'cloudformation:DeleteStack'
                  - 'cloudformation:Describe*'
                  - 'cloudformation:UpdateStack'
                  - 'cloudformation:CreateChangeSet'
                  - 'cloudformation:DeleteChangeSet'
                  - 'cloudformation:ExecuteChangeSet'
                  - 'cloudformation:SetStackPolicy'
                  - 'cloudformation:ValidateTemplate'
                  - 'cloudformation:List*'
                  - 'iam:PassRole'
                Resource: '*'
```

## Creación manual del rol para el esquema de la aplicación web
<a name="ipa-iam-roles-webapp-blueprint"></a>

**El esquema de la aplicación CodeCatalyst web utiliza las funciones de IAM que usted crea, denominadas **función de creación para CDK**, función de **implementación y función** de pila.**

Observe los siguientes pasos para crear el rol en IAM.

**Creación de un rol de compilación**

1. Cree una política para el rol del modo siguiente:

   1. Inicie sesión en. AWS

   1. Abra la consola de IAM en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

   1. En el panel de navegación, seleccione **Políticas**.

   1. Seleccione **Crear política**.

   1. Seleccione la pestaña **JSON**.

   1. Elimine el código existente.

   1. Pegue el siguiente código:
**nota**  
La primera vez que utilice el rol para ejecutar acciones de flujo de trabajo, use el comodín en la instrucción de política de recursos y, a continuación, precise el ámbito de la política con el nombre del recurso cuando esté disponible.  

      ```
      "Resource": "*"
      ```

   1. Elija **Siguiente: Etiquetas**.

   1. Elija **Siguiente: Revisar**.

   1. En **Nombre**, escriba:

      ```
      codecatalyst-webapp-build-policy
      ```

   1. Elija **Crear política**.

      Ahora ha creado una política de permisos.

1. Cree el rol de compilación de la siguiente manera:

   1. En el panel de navegación, seleccione **Roles** y luego seleccione **Crear rol**.

   1. Elija **Política de confianza personalizada**.

   1. Elimine la política de confianza personalizada existente.

   1. Añada la siguiente política de confianza personalizada:

   1. Elija **Siguiente**.

   1. Asocie la política de permisos al rol de compilación. En la página **Agregar permisos**, en la sección **Políticas de permisos**, busque `codecatalyst-webapp-build-policy` y active su casilla de verificación.

   1. Elija **Siguiente**.

   1. En **Nombre del rol**, escriba:

      ```
      codecatalyst-webapp-build-role
      ```

   1. En **Descripción del rol**, escriba:

      ```
      CodeCatalyst Web app build role
      ```

   1. Elija **Crear rol**.

   Ahora ha creado un rol de compilación con una política de confianza y una política de permisos.

1. Para asociar la política de permisos al rol de compilación, haga lo siguiente:

   1. En el panel de navegación, elija **Roles** y, a continuación, busque `codecatalyst-webapp-build-role`.``

   1. Seleccione `codecatalyst-webapp-build-role` para mostrar los detalles.``

   1. En la pestaña **Permisos**, elija **Agregar permisos** y, a continuación, **Asociar políticas**.

   1. Busque `codecatalyst-webapp-build-policy`, active su casilla de verificación y elija **Asociar políticas**.

      Ya ha asociado la política de permisos al rol de compilación. Ahora, el rol de compilación tiene dos políticas: una política de permisos y una política de confianza.

1. Obtenga el ARN del rol de compilación de la siguiente manera:

   1. Seleccione **Roles** en el panel de navegación.

   1. En el cuadro de búsqueda, introduzca el nombre del rol que acaba de crear (`codecatalyst-webapp-build-role`).

   1. Elija el rol de la lista.

      Aparece la página **Resumen** del rol.

   1. En la parte superior, copie el valor de **ARN**.

   Ahora ha creado el rol de compilación con los permisos adecuados y ha obtenido su ARN.

## Creación manual de roles para el esquema de SAM
<a name="ipa-iam-roles-SAM-blueprint"></a>

El blueprint de CodeCatalyst SAM utiliza las funciones de IAM que usted crea, denominadas **función de creación CloudFormation** y **función de implementación para** SAM.

Observe los siguientes pasos para crear los roles en IAM.

**Para crear un rol de creación para CloudFormation**

1. Cree una política para el rol del modo siguiente:

   1. Inicie sesión en AWS.

   1. Abra la consola de IAM en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

   1. En el panel de navegación, seleccione **Políticas**.

   1. Seleccione **Crear política**.

   1. Seleccione la pestaña **JSON**.

   1. Elimine el código existente.

   1. Pegue el siguiente código:

------
#### [ JSON ]

****  

      ```
      {
          "Version":"2012-10-17",		 	 	 
          "Statement": [
              {
                  "Effect": "Allow",
                  "Action": [
                      "s3:*",
                      "cloudformation:*"
                  ],
                  "Resource": "*"
              }
          ]
      }
      ```

------
**nota**  
La primera vez que utilice el rol para ejecutar acciones de flujo de trabajo, use el comodín en la instrucción de política de recursos y, a continuación, precise el ámbito de la política con el nombre del recurso cuando esté disponible.  

      ```
      "Resource": "*"
      ```

   1. Elija **Siguiente: Etiquetas**.

   1. Elija **Siguiente: Revisar**.

   1. En **Nombre**, escriba:

      ```
      codecatalyst-SAM-build-policy
      ```

   1. Elija **Crear política**.

      Ahora ha creado una política de permisos.

1. Cree el rol de compilación de la siguiente manera:

   1. En el panel de navegación, seleccione **Roles** y luego seleccione **Crear rol**.

   1. Elija **Política de confianza personalizada**.

   1. Elimine la política de confianza personalizada existente.

   1. Añada la siguiente política de confianza personalizada:

   1. Elija **Siguiente**.

   1. Asocie la política de permisos al rol de compilación. En la página **Agregar permisos**, en la sección **Políticas de permisos**, busque `codecatalyst-SAM-build-policy` y active su casilla de verificación.

   1. Elija **Siguiente**.

   1. En **Nombre del rol**, escriba:

      ```
      codecatalyst-SAM-build-role
      ```

   1. En **Descripción del rol**, escriba:

      ```
      CodeCatalyst SAM build role
      ```

   1. Elija **Crear rol**.

   Ahora ha creado un rol de compilación con una política de confianza y una política de permisos.

1. Para asociar la política de permisos al rol de compilación, haga lo siguiente:

   1. En el panel de navegación, elija **Roles** y, a continuación, busque `codecatalyst-SAM-build-role`.``

   1. Seleccione `codecatalyst-SAM-build-role` para mostrar los detalles.``

   1. En la pestaña **Permisos**, elija **Agregar permisos** y, a continuación, **Asociar políticas**.

   1. Busque `codecatalyst-SAM-build-policy`, active su casilla de verificación y elija **Asociar políticas**.

      Ya ha asociado la política de permisos al rol de compilación. Ahora, el rol de compilación tiene dos políticas: una política de permisos y una política de confianza.

1. Obtenga el ARN del rol de compilación de la siguiente manera:

   1. Seleccione **Roles** en el panel de navegación.

   1. En el cuadro de búsqueda, introduzca el nombre del rol que acaba de crear (`codecatalyst-SAM-build-role`).

   1. Elija el rol de la lista.

      Aparece la página **Resumen** del rol.

   1. En la parte superior, copie el valor de **ARN**.

   Ahora ha creado el rol de compilación con los permisos adecuados y ha obtenido su ARN.

**Creación de un rol de implementación para SAM**

1. Cree una política para el rol del modo siguiente:

   1. Inicie sesión en AWS.

   1. Abra la consola de IAM en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

   1. En el panel de navegación, seleccione **Políticas**.

   1. Seleccione **Crear política**.

   1. Seleccione la pestaña **JSON**.

   1. Elimine el código existente.

   1. Pegue el siguiente código:
**nota**  
La primera vez que utilice el rol para ejecutar acciones de flujo de trabajo, use el comodín en la instrucción de política de recursos y, a continuación, precise el ámbito de la política con el nombre del recurso cuando esté disponible.  

      ```
      "Resource": "*"
      ```

   1. Elija **Siguiente: Etiquetas**.

   1. Elija **Siguiente: Revisar**.

   1. En **Nombre**, escriba:

      ```
      codecatalyst-SAM-deploy-policy
      ```

   1. Elija **Crear política**.

      Ahora ha creado una política de permisos.

1. Cree el rol de compilación de la siguiente manera:

   1. En el panel de navegación, seleccione **Roles** y luego seleccione **Crear rol**.

   1. Elija **Política de confianza personalizada**.

   1. Elimine la política de confianza personalizada existente.

   1. Añada la siguiente política de confianza personalizada:

   1. Elija **Siguiente**.

   1. Asocie la política de permisos al rol de compilación. En la página **Agregar permisos**, en la sección **Políticas de permisos**, busque `codecatalyst-SAM-deploy-policy` y active su casilla de verificación.

   1. Elija **Siguiente**.

   1. En **Nombre del rol**, escriba:

      ```
      codecatalyst-SAM-deploy-role
      ```

   1. En **Descripción del rol**, escriba:

      ```
      CodeCatalyst SAM deploy role
      ```

   1. Elija **Crear rol**.

   Ahora ha creado un rol de compilación con una política de confianza y una política de permisos.

1. Para asociar la política de permisos al rol de compilación, haga lo siguiente:

   1. En el panel de navegación, elija **Roles** y, a continuación, busque `codecatalyst-SAM-deploy-role`.``

   1. Seleccione `codecatalyst-SAM-deploy-role` para mostrar los detalles.``

   1. En la pestaña **Permisos**, elija **Agregar permisos** y, a continuación, **Asociar políticas**.

   1. Busque `codecatalyst-SAM-deploy-policy`, active su casilla de verificación y elija **Asociar políticas**.

      Ya ha asociado la política de permisos al rol de compilación. Ahora, el rol de compilación tiene dos políticas: una política de permisos y una política de confianza.

1. Obtenga el ARN del rol de compilación de la siguiente manera:

   1. Seleccione **Roles** en el panel de navegación.

   1. En el cuadro de búsqueda, introduzca el nombre del rol que acaba de crear (`codecatalyst-SAM-deploy-role`).

   1. Elija el rol de la lista.

      Aparece la página **Resumen** del rol.

   1. En la parte superior, copie el valor de **ARN**.

   Ahora ha creado el rol de compilación con los permisos adecuados y ha obtenido su ARN.