

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.

# Seguridad en Amazon CodeCatalyst
<a name="security"></a>

La seguridad en la nube AWS es la máxima prioridad. Como AWS cliente, usted se beneficia de una arquitectura de centro de datos y red diseñada para cumplir con los requisitos de los espacios más sensibles a la seguridad.

La seguridad es una responsabilidad compartida entre usted AWS y usted. El [modelo de responsabilidad compartida](https://aws.amazon.com/compliance/shared-responsibility-model/) la describe como seguridad de la nube y seguridad en la nube:
+ **Seguridad de la nube**: AWS es responsable de proteger la infraestructura que ejecuta AWS los servicios en la Nube de AWS. AWS también le proporciona servicios que puede utilizar de forma segura. Los auditores externos prueban y verifican periódicamente la eficacia de nuestra seguridad como parte de los [AWS programas](https://aws.amazon.com/compliance/programs/) de de . Para obtener más información sobre los programas de cumplimiento aplicables CodeCatalyst, consulte [AWS Servicios incluidos en el ámbito de aplicación por programa de conformidad y AWS servicios incluidos](https://aws.amazon.com/compliance/services-in-scope/) .
+ **Seguridad en la nube**: su responsabilidad viene determinada por los AWS servicios que utilice. También es responsable de otros factores, incluida la confidencialidad de los datos, los requisitos de la empresa y la legislación y los reglamentos aplicables 

Esta documentación te ayuda a entender cómo aplicar el modelo de responsabilidad compartida cuando utilizas Amazon CodeCatalyst. Le muestra cómo configurarlo para CodeCatalyst cumplir sus objetivos de seguridad y conformidad. También aprenderá a utilizar otros AWS servicios que le ayudan a supervisar y proteger sus CodeCatalyst recursos.

**Topics**
+ [Privacidad de datos](data-privacy.md)
+ [Protección de datos](data-protection.md)
+ [CodeCatalyst e Identity and Access Management](security-iam.md)
+ [Validación de conformidad](compliance-validation.md)
+ [Resiliencia](disaster-recovery-resiliency.md)
+ [Seguridad de infraestructuras](infrastructure-security.md)
+ [Configuración y análisis de vulnerabilidades](vulnerability-analysis-and-management.md)
+ [Datos y privacidad en Amazon CodeCatalyst](your-data-privacy.md)
+ [Prácticas recomendadas para acciones de flujo de trabajo](security-best-practices-for-actions.md)
+ [Entender el modelo de CodeCatalyst confianza](trust-model.md)

# Privacidad de datos en Amazon CodeCatalyst
<a name="data-privacy"></a>

CodeCatalyst recopila información agregada en IAM Identity Center. CodeCatalyst utiliza estos datos agregados para proporcionar acceso a espacios y proyectos en CodeCatalyst. Se recopila la siguiente información agregada:
+ Nombre completo del usuario
+ Dirección de correo electrónico del usuario
+ Nombre de usuario del usuario

Los datos de CodeCatalyst se cifran automáticamente en reposo. No se requiere ninguna acción por parte del cliente. Cuando se elimina un usuario, un centro de identidad o un espacio, CodeCatalyst elimina los datos del cliente en un plazo de 24 horas.

CodeCatalyst utiliza claves de AWS KMS propiedad de AWS. CodeCatalyst no admite el cifrado en reposo mediante claves KMS administradas por el cliente para los atributos de identidad obtenidos del IAM Identity Center.

Para obtener más información acerca de las claves de AWS KMS, consulte la documentación de usuario en [claves de AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html).

# Protección de datos en Amazon CodeCatalyst
<a name="data-protection"></a>

La seguridad y el cumplimiento son una responsabilidad compartida entre Amazon CodeCatalyst y el cliente, del AWS mismo modo que el [modelo](https://aws.amazon.com/compliance/shared-responsibility-model/) de se aplica al uso de AWS los recursos utilizados en un flujo de trabajo. Como se describe en este modelo, CodeCatalyst es responsable de proteger la infraestructura global del servicio. Eres responsable de mantener el control sobre el contenido alojado en esta infraestructura. Este modelo de responsabilidad compartida se aplica a la protección de datos en CodeCatalyst.

Con el fin de proteger los datos, le recomendamos que proteja las credenciales de su cuenta y que configure la autenticación multifactor al iniciar sesión. Para obtener más información, consulte [Configura tu AWS Builder ID para iniciar sesión con autenticación multifactor (MFA)](mfa.md). 

No introduzca información confidencial o sensible, como las direcciones de correo electrónico de los clientes, en etiquetas o campos de formato libre, como el campo **Nombre**. Esto incluye los nombres de los recursos y cualquier otro identificador que introduzcas, CodeCatalyst además de los que estén conectados Cuentas de AWS. Por ejemplo, no introduzca información confidencial o sensible como parte de los nombres de los espacios, proyectos o flotas de implementación. Los datos que introduce en etiquetas o campos de formato libre utilizados para los nombres se pueden utilizar para los registros de facturación o diagnóstico, o se pueden incluir en rutas URL. Esto se aplica al uso de la consola, la API AWS CLI, el CodeCatalyst Action Development Kit o cualquier otro AWS SDKs. 

Si proporciona una URL a un servidor externo, le recomendamos encarecidamente que no incluya información de credenciales en la URL a fin de validar la solicitud para ese servidor.

CodeCatalyst Los repositorios de origen se cifran automáticamente cuando están inactivos. No es necesaria ninguna acción por parte del cliente. CodeCatalyst también cifra los datos del repositorio en tránsito mediante el protocolo HTTPS. 

CodeCatalyst no admite el cifrado en reposo mediante claves KMS administradas por el cliente para los atributos de identidad recuperados del Centro de Identidad de IAM.

CodeCatalyst es compatible con MFA. Para obtener más información, consulte [Configura tu AWS Builder ID para iniciar sesión con autenticación multifactor (MFA)](mfa.md).

## Cifrado de datos
<a name="data-encryption"></a>

CodeCatalyst almacena y transfiere datos de forma segura dentro del servicio. Todos los datos se cifran en tránsito y en reposo. Todos los datos creados o almacenados por el servicio, incluidos los metadatos del servicio, se almacenan de forma nativa en el servicio y se cifran.

**nota**  
Aunque la información sobre los problemas se almacena de forma segura en el servicio, la información sobre los problemas pendientes también se almacena en la memoria caché local del navegador, donde se consultaban los paneles de temas, los trabajos pendientes y los problemas individuales. Para una seguridad óptima, asegúrese de borrar la memoria caché del navegador para eliminar esta información. 

Si utiliza recursos vinculados CodeCatalyst, como una conexión de cuenta a un recurso vinculado Cuenta de AWS o a un repositorio vinculado GitHub, los datos en tránsito desde CodeCatalyst ese recurso vinculado se cifran, pero el tratamiento de los datos en ese recurso vinculado lo administra ese servicio vinculado. Para obtener más información, consulte la documentación del servicio vinculado y [Prácticas recomendadas para acciones de flujo de trabajo en Amazon CodeCatalyst](security-best-practices-for-actions.md).

### Administración de claves
<a name="key-management"></a>

CodeCatalystutiliza claves AWS de KMS que le pertenecen. Esto significa que las claves son administradas por el cliente AWS y no necesita crearlas ni administrarlas directamente. Esto simplifica la administración de claves para los escenarios de cifrado habituales en AWS. 

## Privacidad del tráfico entre redes
<a name="inter-network-traffic-privacy"></a>

Cuando creas un espacio CodeCatalyst, eliges Región de AWS dónde se almacenarán los datos y los recursos de ese espacio. Los datos y metadatos del proyecto nunca salen de esa Región de AWS. Sin embargo, para permitir la navegación interna CodeCatalyst, se replica un conjunto limitado de metadatos de espacio, proyecto y usuario Regiones de AWS en toda la [partición](https://docs.aws.amazon.com/whitepapers/latest/aws-fault-isolation-boundaries/partitions.html). No se replicarán Regiones de AWS fuera de esa partición. Por ejemplo, si elige **Oeste de EE. UU. (Oregón)** como la Región de AWS para crear su espacio, sus datos no se replicarán en las regiones de China ni AWS GovCloud (US). Para obtener más información, consulte [Administración Regiones de AWS](https://docs.aws.amazon.com/general/latest/gr/rande-manage.html), [infraestructura AWS global](https://aws.amazon.com/about-aws/global-infrastructure) y puntos [finales AWS de servicio](https://docs.aws.amazon.com/general/latest/gr/rande.html#region-names-codes).

Los datos replicados Regiones de AWS dentro de una partición incluyen:
+ Un valor hash cifrado que representa el nombre del espacio para garantizar la exclusividad de los nombres de los espacios. Este valor no es legible por humanos y no expone los nombres reales de los espacios.
+ El ID exclusivo del espacio
+ Metadatos del espacio que ayudan a desplazarse por los espacios
+ El Región de AWS lugar donde se encuentra el espacio
+ El único IDs de todos los proyectos del espacio
+ El ID de rol que indica el rol de un usuario en un espacio o proyecto
+ Al registrarse CodeCatalyst, datos y metadatos sobre el proceso de registro, que incluyen:
  + El identificador único del ID de creador de AWS
  + El nombre para mostrar del usuario en su ID de creador de AWS
  + El alias del usuario en su ID de creador de AWS
  + La dirección de correo electrónico utilizada cuando el usuario se registró en su ID de creador de AWS
  + El progreso del proceso de registro
  + Si crea un espacio como parte del proceso de registro, el Cuenta de AWS ID que se utiliza como cuenta de facturación del espacio

Los nombres de los espacios son únicos en todos los espacios CodeCatalyst. Asegúrese de no incluir información confidencial en el nombre del espacio.

Al trabajar con recursos enlazados y cuentas conectadas, como una conexión a un repositorio Cuenta de AWS o a un GitHub repositorio, recomendamos configurar las ubicaciones de origen y destino con el nivel de seguridad más alto compatible con cada una de ellas. CodeCatalyst asegura la conexión entre Cuentas de AWS las zonas de disponibilidad y las zonas de disponibilidad mediante el uso de Transport Layer Security (TLS) 1.2. Regiones de AWS



# Identity and Access Management y Amazon CodeCatalyst
<a name="security-iam"></a>

En Amazon CodeCatalyst, creas y utilizas un ID de AWS constructor para iniciar sesión y acceder a tus espacios y proyectos. Un AWS Builder ID no es una identidad en AWS Identity and Access Management (IAM) ni existe en un Cuenta de AWS. Sin CodeCatalyst embargo, se integra con IAM cuando se verifica un espacio con fines de facturación y cuando se conecta a un espacio Cuenta de AWS para crear y usar recursos en él. Cuenta de AWS

AWS Identity and Access Management (IAM) es una herramienta Servicio de AWS que ayuda al administrador a controlar de forma segura el acceso a los recursos. AWS Los administradores de IAM controlan quién puede estar *autenticado* (ha iniciado sesión) y *autorizado* (tiene permisos) para utilizar recursos. La IAM es una Servicio de AWS herramienta que puede utilizar sin coste adicional.

Al crear un espacio en Amazon CodeCatalyst, debes conectarlo Cuenta de AWS como cuenta de facturación de tu espacio. Debes tener permisos de administrador en el espacio Cuenta de AWS para verificar el CodeCatalyst espacio o tener el permiso. También tiene la opción de añadir una función de IAM a su espacio que CodeCatalyst podrá utilizar para crear y acceder a los recursos del espacio 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). Puede optar por crear conexiones con más de una cuenta Cuenta de AWS y crear funciones de servicio para CodeCatalyst cada una de esas cuentas. 

**nota**  
La facturación CodeCatalyst se realiza en la cuenta Cuenta de AWS designada como cuenta de facturación. Sin embargo, si crea un rol de CodeCatalyst servicio en esa función Cuenta de AWS o en cualquier otra conexión Cuenta de AWS, los recursos creados y utilizados por la función de CodeCatalyst servicio se facturarán en esa función conectada Cuenta de AWS. Para obtener más información, consulta [Gestión de la facturación](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-billing.html) en la Guía del CodeCatalyst administrador de Amazon.

**Topics**
+ [Políticas basadas en identidad en IAM](#id-based-policies)
+ [Acciones de políticas en IAM](#id-based-policies-actions)
+ [Recursos de políticas en IAM](#id-based-policies-resources)
+ [Claves de condición de política en IAM](#id-based-policies-conditionkeys)
+ [Ejemplos de políticas de conexiones basadas en la identidad CodeCatalyst](#id-based-policy-examples)
+ [Uso de etiquetas para controlar el acceso a recursos de conexión de cuenta](id-based-policy-examples-tags.md)
+ [CodeCatalyst referencia de permisos](#permissions-reference)
+ [Uso de roles vinculados a servicios para CodeCatalyst](using-service-linked-roles.md)
+ [AWS políticas gestionadas para Amazon CodeCatalyst](security-iam-awsmanpol.md)
+ [Otorgue acceso a AWS los recursos del proyecto con funciones de IAM](ipa-iam-roles.md)

## Políticas basadas en identidad en IAM
<a name="id-based-policies"></a>

Las políticas basadas en identidad son documentos de políticas de permisos JSON que puede asociar a una identidad. Esa identidad puede ser un usuario, un grupo de usuarios o un rol. Estas políticas controlan qué acciones pueden realizar los usuarios y los roles, en qué recursos y en qué condiciones. Para obtener más información sobre cómo crear una política basada en identidad, consulte [Creación de políticas de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) en la *Guía del usuario de IAM*.

Con las políticas basadas en identidades de IAM, puede especificar las acciones y los recursos permitidos o denegados, así como las condiciones en las que se permiten o deniegan las acciones. No es posible especificar la entidad principal en una política basada en identidad porque se aplica al usuario o rol al que está asociada. Para obtener más información sobre los elementos que puede utilizar en una política de JSON, consulte [Referencia de los elementos de las políticas de JSON de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html) en la *Guía del usuario de IAM*.

### Ejemplos de políticas basadas en la identidad para CodeCatalyst
<a name="id-based-policies-examples"></a>



Para ver ejemplos de políticas CodeCatalyst basadas en la identidad, consulte. [Ejemplos de políticas de conexiones basadas en la identidad CodeCatalyst](#id-based-policy-examples)

## Acciones de políticas en IAM
<a name="id-based-policies-actions"></a>

Los administradores pueden usar las políticas de AWS JSON para especificar quién tiene acceso a qué. Es decir, qué **acciones** puede realizar cada **entidad principal** en qué **recursos** y en qué **condiciones**.

El elemento `Action` de una política JSON describe las acciones que puede utilizar para conceder o denegar el acceso en una política. Las acciones políticas suelen tener el mismo nombre que la operación de AWS API asociada. Hay algunas excepciones, como *acciones de solo permiso* que no tienen una operación de API coincidente. También hay algunas operaciones que requieren varias acciones en una política. Estas acciones adicionales se denominan *acciones dependientes*.

Para especificar varias acciones en una única instrucción, sepárelas con comas.

```
"Action": [
      "prefix:action1",
      "prefix:action2"
         ]
```

## Recursos de políticas en IAM
<a name="id-based-policies-resources"></a>

Los administradores pueden usar las políticas de AWS JSON para especificar quién tiene acceso a qué. Es decir, qué **acciones** puede realizar cada **entidad principal** en qué **recursos** y en qué **condiciones**.

El elemento `Resource` de la política JSON especifica el objeto u objetos a los que se aplica la acción. Las instrucciones deben contener un elemento `Resource` o `NotResource`. Como práctica recomendada, especifique un recurso utilizando el [Nombre de recurso de Amazon (ARN)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). Puedes hacerlo para acciones que admitan un tipo de recurso específico, conocido como *permisos de nivel de recurso*.

Para las acciones que no admiten permisos de nivel de recurso, como las operaciones de descripción, utiliza un carácter comodín (\$1) para indicar que la instrucción se aplica a todos los recursos.

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

## Claves de condición de política en IAM
<a name="id-based-policies-conditionkeys"></a>

Los administradores pueden usar las políticas de AWS JSON para especificar quién tiene acceso a qué. Es decir, qué **acciones** puede realizar cada **entidad principal** en qué **recursos** y en qué **condiciones**.

El elemento `Condition` (o *bloque* de `Condition`) permite especificar condiciones en las que entra en vigor una instrucción. El elemento `Condition` es opcional. Puedes crear expresiones condicionales que utilizan [operadores de condición](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html), tales como igual o menor que, para que la condición de la política coincida con los valores de la solicitud. 

Si especifica varios elementos de `Condition` en una instrucción o varias claves en un único elemento de `Condition`, AWS las evalúa mediante una operación `AND` lógica. Si especifica varios valores para una única clave de condición, AWS evalúa la condición con una operación lógica `OR`. Se deben cumplir todas las condiciones antes de que se concedan los permisos de la instrucción.

 También puedes utilizar variables de marcador de posición al especificar condiciones. Para obtener más información, consulte [Elementos de la política de IAM: variables y etiquetas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_variables.html) en la *Guía del usuario de IAM*. 

AWS admite claves de condición globales y claves de condición específicas del servicio. Para ver todas las claves de condición globales de AWS , consulte [Claves de contexto de condición globales de AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) en la *Guía del usuario de IAM*.

## Ejemplos de políticas de conexiones basadas en la identidad CodeCatalyst
<a name="id-based-policy-examples"></a>

En CodeCatalyst, Cuentas de AWS son necesarios para gestionar la facturación de un espacio y acceder a los recursos de los flujos de trabajo del proyecto. La conexión de una cuenta se utiliza para autorizar la adición de Cuentas de AWS en un espacio. Las políticas basadas en identidad se usan en las Cuentas de AWS conectadas. 

De forma predeterminada, los usuarios y roles no tienen permiso para crear, ver ni modificar recursos de CodeCatalyst. Tampoco pueden realizar tareas mediante la Consola de administración de AWS, AWS Command Line Interface (AWS CLI) o la AWS API. Un administrador de IAM debe crear políticas de IAM que concedan a los usuarios y a los roles permiso para realizar acciones en los recursos que necesitan. El administrador debe asociar esas políticas a los usuarios que las necesiten.

Las siguientes políticas de IAM de ejemplo conceden permisos para llevar a cabo acciones relacionadas con las conexiones de cuentas. Úsalas para limitar el acceso a las cuentas conectadas a CodeCatalyst.

### Ejemplo 1: permitir que un usuario acepte solicitudes de conexión de una sola vez Región de AWS
<a name="id-based-policy-examples-accept-only"></a>

La siguiente política de permisos solo permite a los usuarios ver y aceptar solicitudes de conexiones entre CodeCatalyst y Cuentas de AWS. Además, la política utiliza una condición para permitir solo las acciones en la región us-west-2 y no desde otras. Regiones de AWS Para ver y aprobar la solicitud, el usuario inicia sesión en ella Consola de administración de AWS con la misma cuenta que se especifica en la solicitud. 

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "codecatalyst:AcceptConnection",
        "codecatalyst:GetPendingConnection"
      ],
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "aws:RequestedRegion": "us-west-2"
        }
      }
    }
  ]
}
```

------

### Ejemplo 2: permitir administrar las conexiones en la consola para una sola Región de AWS
<a name="id-based-policy-examples-allow"></a>

La siguiente política de permisos permite a los usuarios administrar las conexiones entre CodeCatalyst y Cuentas de AWS dentro de una sola región. La política utiliza una condición para permitir solo las acciones en la región us-west-2 y no desde otras. Regiones de AWS Tras crear una conexión, puede crear el rol **CodeCatalystWorkflowDevelopmentRole-*spaceName*** seleccionando la opción en la Consola de administración de AWS. En la política de ejemplo, la condición de la `iam:PassRole` acción incluye los principios de servicio de. CodeCatalyst Solo se crearán en la Consola de administración de AWS los roles con ese acceso.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "codecatalyst:*"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestedRegion": "us-west-2"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "iam:CreateRole",
                "iam:CreatePolicy",
                "iam:AttachRolePolicy",
                "iam:ListRoles"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "iam:PassRole"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": [
                        "codecatalyst.amazonaws.com",
                        "codecatalyst-runner.amazonaws.com"
                    ]
                }
            }
        }
    ]
}
```

------

### Ejemplo 3: Denegación de la administración de conexiones
<a name="id-based-policy-examples-deny"></a>

La siguiente política de permisos niega a los usuarios la posibilidad de administrar las conexiones entre CodeCatalyst y Cuentas de AWS.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Deny",
            "Action": [
                "codecatalyst:*"
            ],
            "Resource": "*"
        }
    ]
}
```

------

# Uso de etiquetas para controlar el acceso a recursos de conexión de cuenta
<a name="id-based-policy-examples-tags"></a>

Las etiquetas se pueden asociar al recurso o pasarse dentro de la solicitud a los servicios que admiten etiquetado. Los recursos en las políticas pueden tener etiquetas y algunas acciones en las políticas puede incluir etiquetas. Las claves de condición de etiquetado incluyen las claves de condición `aws:RequestTag` y `aws:ResourceTag`. Cuando crea una política de IAM, puede utilizar claves de condición de etiqueta para controlar lo siguiente:
+ Qué usuarios pueden realizar acciones en un recurso de conexión, según las etiquetas que ya tiene.
+ Qué etiquetas se pueden pasar en la solicitud de una acción.
+ Si se pueden utilizar claves de etiqueta específicas en una solicitud.

Los siguientes ejemplos muestran cómo especificar las condiciones de las etiquetas en las políticas para los usuarios de conexiones de CodeCatalyst cuentas. Para obtener más información acerca de las claves de condición, consulte [Claves de condición de política en IAM](security-iam.md#id-based-policies-conditionkeys).

## Ejemplo 1: Permitir acciones en función de las etiquetas en la solicitud
<a name="id-based-policy-examples-tags-request"></a>

La siguiente política concede a los usuarios permiso para aprobar conexiones de cuentas.

Para ello, permite las acciones `AcceptConnection` y `TagResource` si la solicitud especifica una etiqueta denominada `Project` con el valor `ProjectA`. (La clave de condición `aws:RequestTag` se utiliza para controlar qué etiquetas se pueden pasar en una solicitud de IAM). La condición `aws:TagKeys` garantiza la distinción entre mayúsculas y minúsculas de las claves de etiqueta.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "codecatalyst:AcceptConnection",
        "codecatalyst:TagResource"
      ],
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "aws:RequestTag/Project": "ProjectA"
        },
        "ForAllValues:StringEquals": {
          "aws:TagKeys": ["Project"]
        }
      }
    }
  ]
}
```

------

## Ejemplo 2: Permitir acciones en función de etiquetas de recursos
<a name="id-based-policy-examples-tags-resource"></a>

La siguiente política concede a los usuarios permiso para realizar acciones en los recursos de conexiones de cuentas y obtener información sobre ellos.

Para ello, permite realizar determinadas acciones si la conexión tiene una etiqueta denominada `Project` con el valor `ProjectA`. (La clave de condición `aws:ResourceTag` se utiliza para controlar qué etiquetas se pueden pasar en una solicitud de IAM).

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "codecatalyst:GetConnection",
        "codecatalyst:DeleteConnection",
        "codecatalyst:AssociateIamRoleToConnection",
        "codecatalyst:DisassociateIamRoleFromConnection",
        "codecatalyst:ListIamRolesForConnection",
        "codecatalyst:PutBillingAuthorization"
      ],
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "aws:ResourceTag/Project": "ProjectA"
        }
      }
    }
  ]
}
```

------

## CodeCatalyst referencia de permisos
<a name="permissions-reference"></a>

En esta sección se proporciona una referencia de permisos para las acciones utilizadas con el recurso de conexión de la cuenta al Cuentas de AWS que se está conectado CodeCatalyst. En la siguiente sección, se describen las acciones que solo pueden llevarse a cabo con permisos y que están relacionadas con la conexión de cuentas.

### Permisos necesarios para las conexiones de cuentas
<a name="permissions-reference-connections"></a>

 Los siguientes permisos son necesarios para trabajar con conexiones de cuentas.


****  

| CodeCatalyst permisos para las conexiones de cuentas | Permisos necesarios | Recursos | 
| --- | --- | --- | 
| AcceptConnection | Necesarios para aceptar una solicitud de conexión de esta cuenta a un CodeCatalyst espacio. Se trata únicamente de un permiso de política de IAM, no de una acción de API. |  Solo admite un carácter comodín (\$1) en el elemento `Resource` de la política.  | 
| AssociateIamRoleToConnection | Necesario para asociar un rol de IAM a una conexión de cuenta. Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/connections/connection\$1ID | 
| DeleteConnection | Necesario para eliminar una conexión de cuenta. Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/connections/connection\$1ID | 
| DisassociateIamRoleFromConnection | Necesario para desasociar un rol de IAM de una conexión de cuenta. Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/connections/connection\$1ID | 
| GetBillingAuthorization | Necesario para describir la autorización de facturación de una conexión de cuenta. Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/connections/connection\$1ID | 
| GetConnection | Necesario para obtener una conexión de cuenta. Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/connections/connection\$1ID | 
| GetPendingConnection | Necesario para obtener una solicitud pendiente para conectar esta cuenta a un CodeCatalyst espacio. Se trata únicamente de un permiso de política de IAM, no de una acción de API. |  Solo admite un carácter comodín (\$1) en el elemento `Resource` de la política.  | 
| ListConnections | Necesario para enumerar las conexiones de cuentas que no estén pendientes. Se trata únicamente de un permiso de política de IAM, no de una acción de API. |  Solo admite un carácter comodín (\$1) en el elemento `Resource` de la política.  | 
| ListIamRolesForConnection | Necesario para enumerar los roles de IAM asociados con una conexión de cuenta. Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/connections/connection\$1ID | 
| ListTagsForResource | Necesario para enumerar las etiquetas asociadas con una conexión de cuenta. Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/connections/connection\$1ID | 
| PutBillingAuthorization | Necesario para crear o actualizar la autorización de facturación de una conexión de cuenta. Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/connections/connection\$1ID | 
| RejectConnection | Necesario para rechazar una solicitud de conexión de esta cuenta a un CodeCatalyst espacio. Se trata únicamente de un permiso de política de IAM, no de una acción de API. |  Solo admite un carácter comodín (\$1) en el elemento `Resource` de la política.  | 
| TagResource | Necesario para crear o editar las etiquetas asociadas con una conexión de cuenta. Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/connections/connection\$1ID | 
| UntagResource | Necesario para eliminar las etiquetas asociadas con una conexión de cuenta. Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/connections/connection\$1ID | 

### Permisos necesarios para las aplicaciones de IAM Identity Center
<a name="permissions-reference-applications"></a>

 Se requieren los siguientes permisos para trabajar con aplicaciones de IAM Identity Center.


****  

| CodeCatalyst permisos para las aplicaciones del IAM Identity Center | Permisos necesarios | Recursos | 
| --- | --- | --- | 
| AssociateIdentityCenterApplicationToSpace | Necesario para asociar una aplicación del centro de identidad de IAM a un CodeCatalyst espacio. Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/identity-center-applications/identity-center-application\$1ID | 
| AssociateIdentityToIdentityCenterApplication | Necesario para asociar una identidad a una solicitud del Centro de Identidad de IAM para un CodeCatalyst espacio. Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/identity-center-applications/identity-center-application\$1ID | 
| BatchAssociateIdentitiesToIdentityCenterApplication | Necesario para asociar varias identidades a una aplicación del Centro de Identidad de IAM para un CodeCatalyst espacio. Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/identity-center-applications/identity-center-application\$1ID | 
| BatchDisassociateIdentitiesFromIdentityCenterApplication | Necesario para desasociar varias identidades de una aplicación del Centro de Identidad de IAM para un espacio. CodeCatalyst Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/identity-center-applications/identity-center-application\$1ID | 
| CreateIdentityCenterApplication | Necesario para crear una aplicación de IAM Identity Center. Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/identity-center-applications/identity-center-application\$1ID | 
| CreateSpaceAdminRoleAssignment | Necesario para crear una asignación de funciones de administrador para un CodeCatalyst espacio y una aplicación del Centro de Identidad de IAM determinados. Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/identity-center-applications/identity-center-application\$1ID | 
| DeleteIdentityCenterApplication | Necesario para eliminar una aplicación de IAM Identity Center. Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/identity-center-applications/identity-center-application\$1ID | 
| DisassociateIdentityCenterApplicationFromSpace | Necesario para desasociar una aplicación del IAM Identity Center de un espacio. CodeCatalyst Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/identity-center-applications/identity-center-application\$1ID | 
| DisassociateIdentityFromIdentityCenterApplication | Necesario para desasociar una identidad de una solicitud del Centro de Identidad de IAM para un espacio. CodeCatalyst Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/identity-center-applications/identity-center-application\$1ID | 
| GetIdentityCenterApplication | Necesario para obtener más información sobre una aplicación de IAM Identity Center. Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/identity-center-applications/identity-center-application\$1ID | 
| ListIdentityCenterApplications | Necesario para ver una lista de todas las aplicaciones de IAM Identity Center de la cuenta. Se trata únicamente de un permiso de política de IAM, no de una acción de API. |  Solo admite un carácter comodín (\$1) en el elemento `Resource` de la política.  | 
| ListIdentityCenterApplicationsForSpace | Necesario para ver una lista de las aplicaciones del IAM Identity Center por espacio. CodeCatalyst Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/identity-center-applications/identity-center-application\$1ID | 
| ListSpacesForIdentityCenterApplication | Necesario para ver una lista de CodeCatalyst espacios por aplicación del IAM Identity Center. Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/identity-center-applications/identity-center-application\$1ID | 
| SynchronizeIdentityCenterApplication | Necesario para sincronizar una aplicación de IAM Identity Center con el almacén de identidades de respaldo. Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/identity-center-applications/identity-center-application\$1ID | 
| UpdateIdentityCenterApplication | Necesario para actualizar una aplicación de IAM Identity Center. Se trata únicamente de un permiso de política de IAM, no de una acción de API. | arn:aws:codecatalyst:region:account\$1ID:/identity-center-applications/identity-center-application\$1ID | 

# Uso de roles vinculados a servicios para CodeCatalyst
<a name="using-service-linked-roles"></a>

Amazon CodeCatalyst usa roles AWS Identity and Access Management vinculados a [servicios (IAM).](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role) Un rol vinculado a un servicio es un tipo único de rol de IAM al que se vincula directamente. CodeCatalyst Los roles vinculados al servicio están predefinidos CodeCatalyst e incluyen todos los permisos que el servicio requiere para llamar a otros AWS servicios en su nombre. 

Un rol vinculado a un servicio facilita la configuración CodeCatalyst , ya que no es necesario añadir manualmente los permisos necesarios. CodeCatalyst define los permisos de sus funciones vinculadas al servicio y, a menos que se defina lo contrario, solo CodeCatalyst puede asumir sus funciones. Los permisos definidos incluyen las políticas de confianza y de permisos, y que la política de permisos no se pueda adjuntar a ninguna otra entidad de IAM.

Solo es posible eliminar un rol vinculado a un servicio después de eliminar sus recursos relacionados. Esto protege sus CodeCatalyst recursos porque no puede eliminar inadvertidamente el permiso de acceso a los recursos.

**Para obtener información sobre otros servicios que admiten funciones vinculadas a servicios, consulte los [AWS servicios que funcionan con IAM y busque los servicios con](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html) la palabra **Sí** en la columna Funciones vinculadas a servicios.** Elija una opción **Sí** con un enlace para ver la documentación acerca del rol vinculado al servicio en cuestión.

## Permisos de roles vinculados al servicio para CodeCatalyst
<a name="slr-permissions"></a>

CodeCatalyst usa el rol vinculado al servicio denominado **AmazonCodeCatalystServiceRoleForIdentityCenterApplicationSynchronization**— Permite a Amazon acceder de CodeCatalyst solo lectura a los perfiles de las instancias de la aplicación y a los usuarios y grupos del directorio asociado en su nombre.

El rol vinculado al servicio AmazonCodeCatalystServiceRoleForIdentityCenterApplicationSynchronization depende de los siguientes servicios para asumir el rol:
+ `codecatalyst.amazonaws.com`

La política de permisos de roles denominada AmazonCodeCatalystServiceRoleForIdentityCenterApplicationSynchronizationPolicy permite CodeCatalyst realizar las siguientes acciones en los recursos especificados:
+ Acción: `View application instance profiles and associated directory users and groups` para `CodeCatalyst spaces that support identity federation and SSO users and groups`

Debe configurar los permisos para permitir a sus usuarios, grupos o funciones, crear, editar o eliminar la descripción de un rol vinculado al servicio. Para obtener más información, consulte [Permisos de roles vinculados a servicios](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions) en la *Guía del usuario de IAM*.

## Crear un rol vinculado a un servicio para CodeCatalyst
<a name="create-slr"></a>

No necesita crear manualmente un rol vinculado a servicios. Al crear un espacio en la Consola de administración de AWS, la o la AWS API AWS CLI, se CodeCatalyst crea automáticamente el rol vinculado al servicio. 

**importante**  
Este rol vinculado a servicios puede aparecer en su cuenta si se ha completado una acción en otro servicio que utilice las características compatibles con este rol. Además, si utilizabas el CodeCatalyst servicio antes del 17 de noviembre de 2023, cuando comenzó a admitir roles vinculados al servicio, entonces CodeCatalyst creaste el AmazonCodeCatalystServiceRoleForIdentityCenterApplicationSynchronization rol en tu cuenta. Para obtener más información, consulte [Apareció un nuevo puesto en mi](https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_roles.html#troubleshoot_roles_new-role-appeared). Cuenta de AWS

Si elimina este rol vinculado a servicios y necesita crearlo de nuevo, puede utilizar el mismo proceso para volver a crear el rol en su cuenta. Al crear un espacio, vuelve a CodeCatalyst crear el rol vinculado al servicio para usted. 

También puede utilizar la consola de IAM para crear un rol vinculado al servicio con el caso de uso **Ver perfiles de instancias de aplicación y usuarios y grupos de directorios asociados**. En la API AWS CLI o en la AWS API, cree un rol vinculado al servicio con el nombre del servicio. `codecatalyst.amazonaws.com` Para obtener más información, consulte [Crear un rol vinculado a un servicio](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#create-service-linked-role) en la *Guía del usuario de IAM*. Si elimina este rol vinculado al servicio, puede utilizar este mismo proceso para volver a crear el rol.

## Edición de un rol vinculado a un servicio para CodeCatalyst
<a name="edit-slr"></a>

CodeCatalyst no permite editar el rol vinculado al AmazonCodeCatalystServiceRoleForIdentityCenterApplicationSynchronization servicio. Después de crear un rol vinculado al servicio, no podrá cambiar el nombre del rol, ya que varias entidades podrían hacer referencia al rol. Sin embargo, sí puede editar la descripción del rol con IAM. Para obtener más información, consulte [Editar un rol vinculado a servicios](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role) en la *Guía del usuario de IAM*.

## Eliminar un rol vinculado a un servicio para CodeCatalyst
<a name="delete-slr"></a>

No es necesario eliminar manualmente el rol de AmazonCodeCatalystServiceRoleForIdentityCenterApplicationSynchronization. Al eliminar un espacio en la Consola de administración de AWS, la API o la AWS API AWS CLI, se CodeCatalyst limpian los recursos y se elimina el rol vinculado al servicio.

También puedes usar la consola de IAM AWS CLI o la AWS API para eliminar manualmente el rol vinculado al servicio. Para ello, primero debe limpiar manualmente los recursos del rol vinculado al servicio para poder eliminarlo después manualmente.

**nota**  
Si el CodeCatalyst servicio utiliza el rol cuando intentas eliminar los recursos, es posible que la eliminación no se realice correctamente. En tal caso, espere unos minutos e intente de nuevo la operación.

**Para eliminar CodeCatalyst los recursos utilizados por el AmazonCodeCatalystServiceRoleForIdentityCenterApplicationSynchronization**
+ [Eliminación del espacio](https://docs.aws.amazon.com/codecatalyst/latest/userguide/spaces-delete.htm).

**Para eliminar manualmente el rol vinculado a servicios mediante IAM**

Utilice la consola de IAM AWS CLI, la o la AWS API para eliminar la función vinculada al AmazonCodeCatalystServiceRoleForIdentityCenterApplicationSynchronization servicio. Para obtener más información, consulte [Eliminación de un rol vinculado a servicios](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role) en la *Guía del usuario de IAM*.

## Regiones compatibles para los roles vinculados al servicio CodeCatalyst
<a name="slr-regions"></a>

CodeCatalyst admite el uso de funciones vinculadas al servicio en todas las regiones en las que el servicio está disponible. Para obtener más información, consulte [Puntos de conexión y Regiones de AWS](https://docs.aws.amazon.com/general/latest/gr/rande.html).

CodeCatalyst no admite el uso de funciones vinculadas al servicio en todas las regiones en las que el servicio está disponible. Puede usar el rol AmazonCodeCatalystServiceRoleForIdentityCenterApplicationSynchronization en las siguientes regiones.


****  

| Nombre de la región | Identidad de la región | Support en CodeCatalyst | 
| --- | --- | --- | 
| Este de EE. UU. (Norte de Virginia) | us-east-1 | No | 
| Este de EE. UU. (Ohio) | us-east-2 | No | 
| Oeste de EE. UU. (Norte de California) | us-west-1 | No | 
| Oeste de EE. UU. (Oregón) | us-west-2 | Sí | 
| África (Ciudad del Cabo) | af-south-1 | No | 
| Asia-Pacífico (Hong Kong) | ap-east-1 | No | 
| Asia-Pacífico (Yakarta) | ap-southeast-3 | No | 
| Asia-Pacífico (Mumbai) | ap-south-1 | No | 
| Asia-Pacífico (Osaka) | ap-northeast-3 | No | 
| Asia-Pacífico (Seúl) | ap-northeast-2 | No | 
| Asia-Pacífico (Singapur) | ap-southeast-1 | No | 
| Asia-Pacífico (Sídney) | ap-southeast-2 | No | 
| Asia-Pacífico (Tokio) | ap-northeast-1 | No | 
| Canadá (centro) | ca-central-1 | No | 
| Europa (Fráncfort) | eu-central-1 | No | 
| Europa (Irlanda) | eu-west-1 | Sí | 
| Europa (Londres) | eu-west-2 | No | 
| Europa (Milán) | eu-south-1 | No | 
| Europa (París) | eu-west-3 | No | 
| Europa (Estocolmo) | eu-north-1 | No | 
| Medio Oriente (Baréin) | me-south-1 | No | 
| Medio Oriente (EAU) | me-central-1 | No | 
| América del Sur (São Paulo) | sa-east-1 | No | 
| AWS GovCloud (Este de EE. UU.) | us-gov-east-1 | No | 
| AWS GovCloud (Estados Unidos-Oeste) | us-gov-west-1 | No | 

# AWS políticas gestionadas para Amazon CodeCatalyst
<a name="security-iam-awsmanpol"></a>





Una política AWS administrada es una política independiente creada y administrada por AWS. AWS Las políticas administradas están diseñadas para proporcionar permisos para muchos casos de uso comunes, de modo que pueda empezar a asignar permisos a usuarios, grupos y funciones.

Ten en cuenta que es posible que las políticas AWS administradas no otorguen permisos con privilegios mínimos para tus casos de uso específicos, ya que están disponibles para que los usen todos los AWS clientes. Se recomienda definir [políticas administradas por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies) específicas para sus casos de uso a fin de reducir aún más los permisos.

No puedes cambiar los permisos definidos en AWS las políticas administradas. Si AWS actualiza los permisos definidos en una política AWS administrada, la actualización afecta a todas las identidades principales (usuarios, grupos y roles) a las que está asociada la política. AWS es más probable que actualice una política AWS administrada cuando Servicio de AWS se lance una nueva o cuando estén disponibles nuevas operaciones de API para los servicios existentes.

Para obtener más información, consulte [Políticas administradas por AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) en la *Guía del usuario de IAM*.













## AWS política gestionada: AmazonCodeCatalystSupportAccess
<a name="security-iam-awsmanpol-AmazonCodeCatalystSupportAccess"></a>





Se trata de una política que concede permisos a todos los administradores y miembros del espacio para utilizar el plan de soporte premium Business o Enterprise asociado a la cuenta de facturación del espacio. Estos permisos permiten a los administradores y miembros del espacio utilizar el plan de soporte premium para los recursos para los que tienen permisos dentro de las políticas de CodeCatalyst permisos.



**Detalles de los permisos**

Esta política incluye los siguientes permisos.




+ `support`— Otorga permisos para permitir a los usuarios buscar, crear y resolver casos de AWS Support. También otorga permisos para describir las comunicaciones, los niveles de gravedad, los archivos adjuntos y los detalles de los casos de soporte relacionados.



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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "support:DescribeAttachment",
        "support:DescribeCaseAttributes",
        "support:DescribeCases",
        "support:DescribeCommunications",
        "support:DescribeIssueTypes",
        "support:DescribeServices",
        "support:DescribeSeverityLevels",
        "support:DescribeSupportLevel",
        "support:SearchForCases",
        "support:AddAttachmentsToSet",
        "support:AddCommunicationToCase",
        "support:CreateCase",
        "support:InitiateCallForCase",
        "support:InitiateChatForCase",
        "support:PutCaseAttributes",
        "support:RateCaseCommunication",
        "support:ResolveCase"
      ],
      "Resource": "*"
    }
  ]
}
```

------

## AWS política gestionada: AmazonCodeCatalystFullAccess
<a name="security-iam-awsmanpol-AmazonCodeCatalystFullAccess"></a>





Se trata de una política que concede permisos para gestionar tu CodeCatalyst espacio y tus cuentas conectadas en la página Amazon CodeCatalyst Spaces del Consola de administración de AWS. Esta aplicación se utiliza para configurar los espacios en los Cuentas de AWS que están conectados CodeCatalyst.



**Detalles de los permisos**

Esta política incluye los siguientes permisos.




+ `codecatalyst`— Otorga todos los permisos para acceder a la página Amazon CodeCatalyst Spaces en Consola de administración de AWS.



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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "CodeCatalystResourceAccess",
            "Effect": "Allow",
            "Action": [
                "codecatalyst:*",
                "iam:ListRoles"
            ],
            "Resource": "*"
        },
        {
            "Sid": "CodeCatalystAssociateIAMRole",
            "Effect": "Allow",
            "Action": [
                "iam:PassRole"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": [
                        "codecatalyst.amazonaws.com",
                        "codecatalyst-runner.amazonaws.com"
                    ]
                }
            }
        }
    ]
}
```

------

## AWS política gestionada: AmazonCodeCatalystReadOnlyAccess
<a name="security-iam-awsmanpol-AmazonCodeCatalystReadOnlyAccess"></a>





Se trata de una política que concede permisos para ver y enumerar la información de los espacios y las cuentas conectadas en la página Amazon CodeCatalyst Spaces del Consola de administración de AWS. Esta aplicación se utiliza para configurar los espacios Cuentas de AWS que están conectados a su espacio en CodeCatalyst.



**Detalles de los permisos**

Esta política incluye los siguientes permisos.




+ `codecatalyst`— Otorga permisos de solo lectura a la página Amazon CodeCatalyst Spaces en. Consola de administración de AWS



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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "codecatalyst:Get*",
                "codecatalyst:List*"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## AWS política gestionada: AmazonCodeCatalystServiceRoleForIdentityCenterApplicationSynchronizationPolicy
<a name="security-iam-awsmanpol-AmazonCodeCatalystServiceRoleForIdentityCenterApplicationSynchronizationPolicy"></a>



No puede asociar AmazonCodeCatalystServiceRoleForIdentityCenterApplicationSynchronizationPolicy; a sus entidades de IAM. Esta política está asociada a un rol vinculado al servicio que permite CodeCatalyst realizar acciones en su nombre. Para obtener más información, consulte [Uso de roles vinculados a servicios para CodeCatalyst](using-service-linked-roles.md).



Esta política permite a los clientes ver los perfiles de las instancias de la aplicación y los usuarios y grupos del directorio asociado al administrar los espacios en ellos. CodeCatalyst Los clientes verán estos recursos cuando administren espacios que admitan la federación de identidades y los usuarios y grupos con SSO.



**Detalles de los permisos**

Esta política incluye los siguientes permisos.




+ `sso`— Otorga permisos que permiten a los usuarios ver los perfiles de instancias de aplicaciones que se administran en el Centro de Identidad de IAM para los espacios asociados. CodeCatalyst



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

****  

```
{
	"Version":"2012-10-17",		 	 	 
	"Statement": [
		{
			"Sid": "AmazonCodeCatalystServiceRoleForIdentityCenterApplicationSynchronizationPolicy",
			"Effect": "Allow",
			"Action": [
				"sso:ListInstances",
				"sso:ListApplications",
				"sso:ListApplicationAssignments",
				"sso:DescribeInstance",
				"sso:DescribeApplication"
			],
			"Resource": "*"
		}
	]
}
```

------

## CodeCatalyst actualizaciones de las políticas AWS gestionadas
<a name="security-iam-awsmanpol-updates"></a>



Consulte los detalles sobre las actualizaciones de las políticas AWS administradas CodeCatalyst desde que este servicio comenzó a rastrear estos cambios. Para recibir alertas automáticas sobre los cambios en esta página, suscríbase a la fuente RSS de la página del [historial del CodeCatalyst documento](doc-history.md).




| Cambio | Descripción | Fecha | 
| --- | --- | --- | 
|  [AmazonCodeCatalystServiceRoleForIdentityCenterApplicationSynchronizationPolicy](#security-iam-awsmanpol-AmazonCodeCatalystServiceRoleForIdentityCenterApplicationSynchronizationPolicy): política nueva  |  CodeCatalyst agregó la política. Otorga permisos que permiten a CodeCatalyst los usuarios ver los perfiles de las instancias de la aplicación y los usuarios y grupos del directorio asociado.  | 17 de noviembre de 2023 | 
|  [AmazonCodeCatalystSupportAccess](#security-iam-awsmanpol-AmazonCodeCatalystSupportAccess): política nueva  |  CodeCatalyst agregó la política. Otorga permisos que permiten a CodeCatalyst los usuarios buscar, crear y resolver casos de asistencia, así como ver las comunicaciones y los detalles relacionados.  | 20 de abril de 2023 | 
|  [AmazonCodeCatalystFullAccess](#security-iam-awsmanpol-AmazonCodeCatalystFullAccess): política nueva  |  CodeCatalyst agregó la política. Otorga acceso completo a CodeCatalyst.  | 20 de abril de 2023 | 
|  [AmazonCodeCatalystReadOnlyAccess](#security-iam-awsmanpol-AmazonCodeCatalystReadOnlyAccess): política nueva  |  CodeCatalyst agregó la política. Otorga acceso de solo lectura a. CodeCatalyst  | 20 de abril de 2023 | 
|  CodeCatalyst comenzó a rastrear los cambios  |  CodeCatalyst comenzó a realizar un seguimiento de los cambios de sus políticas AWS gestionadas.  | 20 de abril de 2023 | 



# 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.

# Validación del cumplimiento de Amazon CodeCatalyst
<a name="compliance-validation"></a>

Para saber si un Servicio de AWS está incluido en el ámbito de programas de conformidad específicos, consulte [Servicios de AWS incluidos por programa de conformidad](https://aws.amazon.com/compliance/services-in-scope/) y escoja el programa de conformidad que le interese. Para obtener información general, consulte [Programas de conformidad de AWS](https://aws.amazon.com/compliance/programs/).

Puedes descargar los informes de auditoría de terceros utilizando AWS Artifact. Para obtener más información, consulte [Descarga de informes en AWS Artifact](https://docs.aws.amazon.com/artifact/latest/ug/downloading-documents.html).

Su responsabilidad de conformidad al utilizar Servicios de AWS se determina en función de la confidencialidad de los datos, los objetivos de conformidad de su empresa, así como de la legislación y los reglamentos aplicables. Para obtener más información sobre la responsabilidad de conformidad al usar Servicios de AWS, consulte la [Documentación de seguridad de AWS](https://docs.aws.amazon.com/security/).

# Resiliencia en Amazon CodeCatalyst
<a name="disaster-recovery-resiliency"></a>

La infraestructura global de AWS se construye en torno a las Regiones de AWS y a las zonas de disponibilidad. Las regiones proporcionan varias zonas de disponibilidad físicamente independientes y aisladas que se encuentran conectadas mediante redes con un alto nivel de rendimiento y redundancia, además de baja demora. Con las zonas de disponibilidad, puede diseñar y utilizar aplicaciones y bases de datos que realizan una conmutación por error automática entre las zonas sin interrupciones. Las zonas de disponibilidad tienen una mayor disponibilidad, tolerancia a errores y escalabilidad que las infraestructuras tradicionales de uno o varios centros de datos.

Para obtener más información sobre las Regiones de AWS y las zonas de disponibilidad, consulte la [Infraestructura global de AWS](https://aws.amazon.com/about-aws/global-infrastructure/). Para obtener más información sobre los datos de CodeCatalyst que se replican en Regiones de AWS, consulte [Protección de datos en Amazon CodeCatalyst](data-protection.md).

# Seguridad de la infraestructura en Amazon CodeCatalyst
<a name="infrastructure-security"></a>

Como servicio administrado, Amazon CodeCatalyst está protegido por la seguridad de red global de AWS. Para obtener información sobre los servicios de seguridad de AWS y sobre cómo AWS protege la infraestructura, consulte [Seguridad en la nube de AWS](https://aws.amazon.com/security/). Para diseñar su entorno de AWS siguiendo las prácticas recomendadas de seguridad de infraestructura, consulte [Protección de la infraestructura](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/infrastructure-protection.html) en *Portal de seguridad de AWS Well‐Architected Framework*.

Puede utilizar llamadas a la API publicadas en AWS para acceder a CodeCatalyst a través de la red. Los clientes deben admitir lo siguiente:
+ Seguridad de la capa de transporte (TLS). Exigimos TLS 1.2 y recomendamos TLS 1.3.
+ Conjuntos de cifrado con confidencialidad directa total (PFS) como DHE (Ephemeral Diffie-Hellman) o ECDHE (Elliptic Curve Ephemeral Diffie-Hellman). La mayoría de los sistemas modernos como Java 7 y posteriores son compatibles con estos modos.

# Configuración y análisis de vulnerabilidades en Amazon CodeCatalyst
<a name="vulnerability-analysis-and-management"></a>

La configuración y los controles de TI son una responsabilidad compartida entre AWS y usted, nuestro cliente. Para obtener más información, consulte el [modelo de responsabilidad compartida](https://aws.amazon.com/compliance/shared-responsibility-model/) de AWS.

# Datos y privacidad en Amazon CodeCatalyst
<a name="your-data-privacy"></a>

Amazon CodeCatalyst se toma muy en serio su privacidad y la seguridad de su información es nuestra principal prioridad. Puede obtener más información sobre cómo administramos su información en el [Aviso de privacidad de AWS](https://aws.amazon.com/privacy/). 

Para solicitar y ver sus datos, consulte [Solicitar los datos](https://docs.aws.amazon.com/general/latest/gr/privacy-aws_builder_id.html#request-delete-aws_builder_id) en la Referencia general de AWS.

## Eliminación de un perfil de ID de creador de AWS
<a name="id-delete-profile"></a>

La eliminación de un perfil es una acción permanente que no se puede deshacer. El proceso de eliminación comienza inmediatamente después de seleccionar **Eliminar**. Amazon CodeCatalyst comienza a eliminar su perfil y toda la información personal asociada. Este proceso puede tardar hasta 90 días en completarse.

Cuando se elimine su perfil, no podrá acceder a sus datos ni recuperarlos en Amazon CodeCatalyst. Esto incluye los tokens de acceso personal, los roles, las condiciones de miembro de los usuarios y cualquier espacio de Amazon CodeCatalyst del que usted sea el único miembro. Ya no podrá iniciar sesión en Amazon CodeCatalyst.

Para obtener información sobre cómo eliminar su perfil de ID de creador de AWS, consulte [Deleting your AWS Builder ID](https://docs.aws.amazon.com/general/latest/gr/delete-aws_builder_id.html) en la Referencia general de AWS.

# Prácticas recomendadas para acciones de flujo de trabajo en Amazon CodeCatalyst
<a name="security-best-practices-for-actions"></a>

Hay varias prácticas recomendadas de seguridad que deben tenerse en cuenta a la hora de desarrollar flujos de trabajo en CodeCatalyst. Estas son directrices generales y no constituyen una solución de seguridad completa. Puesto que es posible que estas prácticas recomendadas no sean adecuadas o suficientes para el entorno, plantéeselas como consideraciones útiles en lugar de como normas.

**Topics**
+ [Información confidencial](#sensitive-info)
+ [Términos de licencia](#licensing-terms)
+ [Código que no sea de confianza](#untrusted-code)
+ [GitHub Actions](#github-actions)

## Información confidencial
<a name="sensitive-info"></a>

No inserte información confidencial en YAML. En lugar de incrustar credenciales, claves o tokens en YAML, le recomendamos que utilice secretos de CodeCatalyst. Los secretos proporcionan una forma sencilla de almacenar y hacer referencia a información confidencial desde YAML.

## Términos de licencia
<a name="licensing-terms"></a>

Preste atención a las condiciones de licencia de la acción que decida utilizar.

## Código que no sea de confianza
<a name="untrusted-code"></a>

Por lo general, las acciones son módulos autónomos de un solo propósito que se pueden compartir en un proyecto, un espacio o la comunidad en general. El uso de código de otros usuarios puede suponer una gran ventaja en términos de comodidad y eficiencia, pero también introduce un nuevo vector de amenazas. Revise las siguientes secciones para asegurarse de seguir las prácticas recomendadas para mantener seguros sus flujos de trabajo de integración y entrega continuas.

## GitHub Actions
<a name="github-actions"></a>

Las GitHub Actions son de código abierto, desarrolladas y mantenidas por la comunidad. Seguimos el [modelo de responsabilidad compartida](https://aws.amazon.com/compliance/shared-responsibility-model/) y consideramos el código fuente de GitHub Actions como datos de clientes de los que usted es responsable. A las GitHub Actions se les puede conceder acceso a secretos, tokens de repositorios, código fuente, enlaces de cuentas y tiempo de computación. Asegúrese de poder confiar en la fiabilidad y la seguridad de las GitHub Actions que vaya a ejecutar.

Guía más específica y mejores prácticas de seguridad para GitHub Actions:
+ [Refuerzo de la seguridad](https://docs.github.com/en/actions/security-guides/security-hardening-for-github-actions)
+ [Prevención de solicitudes propias](https://securitylab.github.com/research/github-actions-preventing-pwn-requests/)
+ [Entrada que no es de confianza](https://securitylab.github.com/research/github-actions-untrusted-input/)
+ [Cómo confiar en los componentes básicos](https://securitylab.github.com/research/github-actions-building-blocks/)

# Entender el modelo de CodeCatalyst confianza
<a name="trust-model"></a>

El modelo de CodeCatalyst confianza de Amazon CodeCatalyst permite asumir el rol de servicio en lo conectado Cuenta de AWS. El modelo conecta la función de IAM, los principios del CodeCatalyst servicio y el CodeCatalyst espacio. La política de confianza utiliza la clave de `aws:SourceArn` condición para conceder permisos al CodeCatalyst espacio especificado en la clave de condición. Para obtener más información sobre esta clave de condición, consulte [aws: SourceArn](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn) en la *Guía del usuario de IAM*.

Una política de confianza es un documento de política JSON en el que define las entidades principales en las que confía para asumir el rol. Una política de confianza de rol es una política basada en recursos requerida que se adjunta a un rol en IAM. Para obtener más información, consulte los [Términos y conceptos](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) en la *Guía del usuario de IAM*. Para obtener más información sobre los principios de servicio de CodeCatalyst, consulte. [Principios de servicio para CodeCatalyst](#service-principals)

En la siguiente política de confianza, las entidades principales de servicio que figuran en el elemento `Principal` reciben permisos desde la política basada en recursos, y el bloque `Condition` se utiliza para limitar el acceso al recurso limitado.

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

****  

```
{
    "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/*"
                }
            }
        }
    ]
}
```

------

En la política de confianza, los directores del CodeCatalyst servicio tienen acceso a través de la clave de `aws:SourceArn` condición, que contiene el nombre de recurso de Amazon (ARN) del ID CodeCatalyst del espacio. El ARN utiliza el siguiente formato:

```
arn:aws:codecatalyst:::space/spaceId/project/*
```

**importante**  
Utilice el ID del espacio únicamente en las claves de condición, como `aws:SourceArn`. No utilice el ID del espacio en las instrucciones de política de IAM como ARN de recurso.

Como práctica recomendada, limite el ámbito de los permisos tanto como sea posible en la política.
+ Puede utilizar el comodín (\$1) en la clave de condición `aws:SourceArn` para especificar todos los proyectos del espacio con `project/*`.
+ Puede especificar los permisos en el nivel del recurso en la clave de condición `aws:SourceArn` para un proyecto específico en el espacio con `project/projectId`.

## Principios de servicio para CodeCatalyst
<a name="service-principals"></a>

Utilice el elemento `Principal` en una política de JSON basada en recursos para especificar la entidad principal que tiene acceso permitido o denegado a un recurso. Las entidades principales que puede especificar en la política de confianza incluyen usuarios, roles, cuentas y servicios. No puede utilizar el elemento `Principal` en una política basada en identidades; del mismo modo, no es posible identificar un grupo de usuarios como una entidad principal en una política (como una política basada en recursos) porque los grupos están relacionados con los permisos, no con la autenticación, y las entidades principales son entidades de IAM autenticadas.

En la política de confianza, puede especificar Servicios de AWS en el `Principal` elemento de una política basada en recursos o en condiciones las claves que respalden a los principales. El servicio define las entidades principales de servicio. Los principios de servicio definidos para: CodeCatalyst
+ **codecatalyst.amazonaws.com**: este principio de servicio se utiliza para un rol al que se concederá el acceso. CodeCatalyst AWS
+ **codecatalyst-runner.amazonaws.com**: este principio de servicio se utiliza para un rol que permitirá el acceso a los recursos en las implementaciones de los flujos de trabajo. CodeCatalyst AWS CodeCatalyst 

Para obtener más información, consulte [Elementos de la política de JSON de AWS : entidad principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html) en la *Guía del usuario de IAM*.