

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.

# ¿Cómo AWS CodeDeploy funciona con IAM
<a name="security_iam_service-with-iam"></a>

Antes de utilizar IAM para gestionar el acceso CodeDeploy, debe saber qué funciones de IAM están disponibles para su uso. CodeDeploy Para obtener más información, consulte [Servicios de AWS que funcionan con IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html) en la *Guía del usuario de IAM*.

**Topics**
+ [CodeDeploy políticas basadas en la identidad](#security_iam_service-with-iam-id-based-policies)
+ [CodeDeploy políticas basadas en recursos](#security_iam_service-with-iam-resource-based-policies)
+ [Autorización basada en etiquetas CodeDeploy](#security_iam_service-with-iam-tags)
+ [CodeDeploy Funciones de IAM](#security_iam_service-with-iam-roles)

## CodeDeploy políticas basadas en la identidad
<a name="security_iam_service-with-iam-id-based-policies"></a>

Con las políticas de IAM basadas en la identidad, puede especificar las acciones y los recursos permitidos o denegados y las condiciones en las que se permiten o deniegan las acciones. CodeDeploy admite las acciones, los recursos y las claves de condición. Para obtener información sobre los elementos que utiliza en una política 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*.

### Acciones
<a name="security_iam_service-with-iam-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é **entidad principal** puede realizar **acciones** 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. Incluya acciones en una política para conceder permisos y así llevar a cabo la operación asociada.

Las acciones políticas CodeDeploy utilizan el `codedeploy:` prefijo antes de la acción. Por ejemplo, el permiso `codedeploy:GetApplication` concede al usuario permiso para realizar la operación `GetApplication`. Las declaraciones de política deben incluir un `NotAction` elemento `Action` o. CodeDeploy define su propio conjunto de acciones que describen las tareas que puede realizar con este servicio.

Para especificar varias acciones en una única instrucción, sepárelas con comas del siguiente modo:

```
"Action": [
      "codedeploy:action1",
      "codedeploy:action2"
```

Puede utilizar caracteres comodín para especificar varias acciones (\$1). Por ejemplo, incluya la acción siguiente para especificar todas las acciones que comiencen por la palabra `Describe`:

```
"Action": "ec2:Describe*"
```



Para obtener una lista de CodeDeploy acciones, consulte [las acciones definidas por AWS CodeDeploy](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awscodedeploy.html#awscodedeploy-actions-as-permissions) en la *Guía del usuario de IAM*.

Para ver una tabla en la que se enumeran todas las acciones de la CodeDeploy API y los recursos a los que se aplican, consulte[CodeDeploy referencia de permisos](auth-and-access-control-permissions-reference.md).

### Recursos
<a name="security_iam_service-with-iam-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é **entidad principal** puede realizar **acciones** 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. Como práctica recomendada, especifique un recurso utilizando el [Nombre de recurso de Amazon (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html). En el caso de las acciones que no admiten permisos por recurso, utilice un carácter comodín (\$1) para indicar que la instrucción se aplica a todos los recursos.

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



Por ejemplo, puede indicar un grupo de despliegue (*myDeploymentGroup*) en su declaración mediante su ARN de la siguiente manera:

```
"Resource": "arn:aws:codedeploy:us-west-2:123456789012:deploymentgroup:myApplication/myDeploymentGroup"
```

También puede especificar todos los grupos de implementación que pertenezcan a una cuenta mediante el carácter comodín (\$1) del modo siguiente:

```
"Resource": "arn:aws:codedeploy:us-west-2:123456789012:deploymentgroup:*"
```

Para especificar todos los recursos, o si una acción de la API no es compatible ARNs, utiliza el carácter comodín (\$1) en el `Resource` elemento de la siguiente manera:

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

Algunas acciones de la CodeDeploy API aceptan varios recursos (por ejemplo,`BatchGetDeploymentGroups`). Para especificar varios recursos en una sola sentencia, sepárelos ARNs con comas, de la siguiente manera:

```
"Resource": ["arn1", "arn2"]
```

CodeDeploy proporciona un conjunto de operaciones para trabajar con los CodeDeploy recursos. Para ver la lista de las operaciones disponibles, consulte [CodeDeploy referencia de permisos](auth-and-access-control-permissions-reference.md).

Para obtener una lista de los tipos de CodeDeploy recursos y sus correspondientes ARNs, consulte [los recursos definidos por AWS CodeDeploy](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awscodedeploy.html) en la *Guía del usuario de IAM*. Para obtener información sobre las acciones en las que puede especificar el ARN de cada recurso, consulte [Acciones definidas por AWS CodeDeploy](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awscodedeploy.html#awscodedeploy-actions-as-permissions).

#### CodeDeploy recursos y operaciones
<a name="arn-formats"></a>

En CodeDeploy, el recurso principal es un grupo de despliegues. En una política, se utiliza un nombre de recurso de Amazon (ARN) para identificar el recurso al que se aplica la política. CodeDeploy admite otros recursos que se pueden utilizar con los grupos de despliegues, incluidas las aplicaciones, las configuraciones de despliegue y las instancias. Estos elementos se denominan subrecursos. Estos recursos y subrecursos tienen ARNs asociados únicos. Para obtener más información, consulte [los nombres de recursos de Amazon (ARNs)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) en *Referencia general de Amazon Web Services*.


| Tipo de recurso | Formato de ARN | 
| --- | --- | 
| Grupo de implementación |  `arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/deployment-group-name`  | 
| Aplicación |  `arn:aws:codedeploy:region:account-id:application:application-name`  | 
| Configuración de implementación |  `arn:aws:codedeploy:region:account-id:deploymentconfig:deployment-configuration-name`   | 
| Instancia |  `arn:aws:codedeploy:region:account-id:instance/instance-ID`  | 
|  Todos los CodeDeploy recursos  |  `arn:aws:codedeploy:*`  | 
|  Todos CodeDeploy los recursos que pertenecen a la cuenta especificada en la región especificada  |  `arn:aws:codedeploy:region:account-id:*`  | 

**nota**  
La mayoría de los AWS servicios utilizan dos puntos (:)) o una barra diagonal (/) como el mismo carácter en ARNs. Sin embargo, CodeDeploy utiliza una coincidencia exacta en las reglas y patrones de recursos. Asegúrese de utilizar los caracteres de ARN correctos cuando cree patrones de eventos para que coincidan con la sintaxis de ARN en el recurso.

### Claves de condición
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

CodeDeploy no proporciona ninguna clave de condición específica del servicio, pero admite el uso de algunas claves de condición globales. Para obtener más información, 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
<a name="security_iam_service-with-iam-id-based-policies-examples"></a>



Para ver ejemplos de políticas CodeDeploy basadas en la identidad, consulte. [AWS CodeDeploy ejemplos de políticas basadas en la identidad](security_iam_id-based-policy-examples.md)

## CodeDeploy políticas basadas en recursos
<a name="security_iam_service-with-iam-resource-based-policies"></a>

CodeDeploy no admite políticas basadas en recursos. Para ver un ejemplo de una página detallada de políticas basadas en recursos, consulte [Uso](https://docs.aws.amazon.com/lambda/latest/dg/access-control-resource-based.html) de políticas basadas en recursos para. AWS Lambda

## Autorización basada en etiquetas CodeDeploy
<a name="security_iam_service-with-iam-tags"></a>

CodeDeploy no admite el etiquetado de los recursos ni el control del acceso en función de las etiquetas.

## CodeDeploy Funciones de IAM
<a name="security_iam_service-with-iam-roles"></a>

Un [rol de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) es una entidad de tu AWS cuenta que tiene permisos específicos.

### Usar credenciales temporales con CodeDeploy
<a name="security_iam_service-with-iam-roles-tempcreds"></a>

Puede utilizar credenciales temporales para iniciar sesión con federación, asumir un rol de IAM o asumir un rol de acceso entre cuentas. Las credenciales de seguridad temporales se obtienen llamando a operaciones de AWS STS API como [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html)o [GetFederationToken](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetFederationToken.html). 

CodeDeploy admite el uso de credenciales temporales. 

### Roles vinculados a servicios
<a name="security_iam_service-with-iam-roles-service-linked"></a>

CodeDeploy no admite funciones vinculadas a servicios.

### Roles de servicio
<a name="security_iam_service-with-iam-roles-service"></a>

Esta característica permite que un servicio asuma un [rol de servicio](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-role) en su nombre. Este rol permite que el servicio obtenga acceso a los recursos de otros servicios para completar una acción en su nombre. Los roles de servicio aparecen en su AWS cuenta y son propiedad de la cuenta. Esto significa que un usuario puede cambiar los permisos de este rol. Sin embargo, hacerlo podría deteriorar la funcionalidad del servicio.

CodeDeploy admite funciones de servicio. 

### Elegir un rol de IAM en CodeDeploy
<a name="security_iam_service-with-iam-roles-choose"></a>

Al crear un recurso de grupo de despliegues en CodeDeploy, debe elegir un rol que le permita acceder CodeDeploy a Amazon EC2 en su nombre. Si ha creado previamente un rol de servicio o un rol vinculado a servicios, CodeDeploy le proporciona una lista de roles para elegir. Es importante seleccionar un rol que permita el acceso para iniciar y detener una instancia EC2.