¿Cómo AWS CodeDeploy funciona con IAM - AWS CodeDeploy

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

Antes de administrar el acceso a CodeDeploy, debe comprender qué IAM funciones están disponibles para su uso CodeDeploy. IAM Para obtener más información, consulte AWS los servicios con los que funciona IAM en la Guía del IAM usuario.

Políticas de CodeDeploy basadas en identidades

Con las políticas basadas en identidades de IAM, puede especificar las acciones permitidas o denegadas, así como los recursos y las condiciones en las que se permiten o deniegan las acciones. CodeDeploy admite acciones, recursos y claves de condiciones. Para obtener información sobre los elementos que se utilizan en una JSON política, consulte la referencia a los elementos de la IAM JSON política en la Guía del IAM usuario.

Acciones

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

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

Incluya acciones en una política para conceder permisos y así llevar a cabo la operación asociada.

En las acciones políticas se CodeDeploy utiliza 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 (*). 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 en la Guía del IAM usuario.

Para ver una tabla en la que se enumeran todas las CodeDeploy API acciones y los recursos a los que se aplican, consulteReferencia de permisos de CodeDeploy.

Recursos

Los administradores pueden usar AWS JSON políticas 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 JSON de política especifica el objeto o los 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 mediante su nombre de recurso de Amazon (ARN). 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 (*) para indicar que la instrucción se aplica a todos los recursos.

"Resource": "*"

Por ejemplo, puede indicar un grupo de despliegues (myDeploymentGroup) en su declaración de la ARN 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 (*) del modo siguiente:

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

Para especificar todos los recursos, o si una API acción no es compatibleARNs, utilice el carácter comodín (*) en el Resource elemento de la siguiente manera:

"Resource": "*"

Algunas CodeDeploy API acciones 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 Referencia de permisos de CodeDeploy.

Para obtener una lista de los tipos de CodeDeploy recursos y sus ARNs respectivos tipos, consulte los recursos definidos por AWS CodeDeploy en la Guía del IAM usuario. Para obtener información sobre las acciones en las que puede especificar las acciones ARN de cada recurso, consulte Acciones definidas por AWS CodeDeploy.

CodeDeploy recursos y operaciones

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) en Referencia general de Amazon Web Services.

Tipo de recurso Formato 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 enARNs. Sin embargo, CodeDeploy utiliza una coincidencia exacta en las reglas y patrones de recursos. Asegúrese de utilizar los ARN caracteres correctos al crear patrones de eventos para que coincidan con la ARN sintaxis del recurso.

Claves de condición

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 las claves de contexto de las condiciones AWS globales en la Guía del IAMusuario.

Ejemplos

Para ver ejemplos de políticas CodeDeploy basadas en la identidad, consulte. AWS CodeDeploy ejemplos de políticas basadas en identidad de

CodeDeploy políticas basadas en recursos

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 de políticas basadas en recursos para. AWS Lambda

Autorización basada en etiquetas de CodeDeploy

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

Roles de CodeDeploy IAM

Un IAMrol es una entidad de tu AWS cuenta que tiene permisos específicos.

Usar credenciales temporales con CodeDeploy

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 AWS STS API operaciones como AssumeRoleo GetFederationToken.

CodeDeploy admite el uso de credenciales temporales.

Roles vinculados a servicios

CodeDeploy no admite funciones vinculadas a servicios.

Roles de servicio

Esta característica permite que un servicio asuma un rol de servicio 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 IAM rol en CodeDeploy

Al crear un recurso de grupo de despliegue 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 le permita el acceso para iniciar y detener una instancia EC2.