

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Como AWS CodeDeploy funciona com o IAM
<a name="security_iam_service-with-iam"></a>

Antes de usar o IAM para gerenciar o acesso CodeDeploy, você deve entender quais recursos do IAM estão disponíveis para uso CodeDeploy. Para obter mais informações, consulte [Serviços da AWS que funcionam com o IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html) no *Guia do usuário do IAM*.

**Topics**
+ [CodeDeploy políticas baseadas em identidade](#security_iam_service-with-iam-id-based-policies)
+ [CodeDeploy políticas baseadas em recursos](#security_iam_service-with-iam-resource-based-policies)
+ [Autorização baseada em CodeDeploy tags](#security_iam_service-with-iam-tags)
+ [CodeDeploy Funções do IAM](#security_iam_service-with-iam-roles)

## CodeDeploy políticas baseadas em identidade
<a name="security_iam_service-with-iam-id-based-policies"></a>

Com as políticas baseadas em identidade do IAM, você pode especificar ações e recursos permitidos ou negados e as condições sob as quais as ações são permitidas ou negadas. CodeDeploy suporta ações, recursos e chaves de condição. Para obter informações sobre os elementos usados em uma política JSON, consulte [Referência de elementos de política JSON do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html) no *Guia do usuário do IAM*.

### Ações
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>

Os administradores podem usar políticas AWS JSON para especificar quem tem acesso ao quê. Ou seja, qual **entidade principal** pode executar **ações** em quais **recursos** e em que **condições**.

O elemento `Action` de uma política JSON descreve as ações que podem ser usadas para permitir ou negar acesso em uma política. Incluem ações em uma política para conceder permissões para executar a operação associada.

As ações de política CodeDeploy usam o `codedeploy:` prefixo antes da ação. Por exemplo, a permissão `codedeploy:GetApplication` concede ao usuário permissões para executar a operação `GetApplication`. As declarações de política devem incluir um `NotAction` elemento `Action` ou. CodeDeploy define seu próprio conjunto de ações que descrevem as tarefas que você pode executar com esse serviço.

Para especificar várias ações em uma única instrução, separe-as com vírgulas, como segue:

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

Você também pode especificar várias ações usando caracteres curinga (\$1). Por exemplo, inclua a seguinte ação para especificar todas as ações que começam com a palavra `Describe`:

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



Para ver uma lista de CodeDeploy ações, consulte [Ações definidas por AWS CodeDeploy](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awscodedeploy.html#awscodedeploy-actions-as-permissions) no *Guia do usuário do IAM*.

Para ver uma tabela que lista todas as ações da CodeDeploy API e os recursos aos quais elas se aplicam, consulte[CodeDeploy referência de permissões](auth-and-access-control-permissions-reference.md).

### Recursos
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>

Os administradores podem usar políticas AWS JSON para especificar quem tem acesso ao quê. Ou seja, qual **entidade principal** pode executar **ações** em quais **recursos** e em que **condições**.

O elemento de política JSON `Resource` especifica o objeto ou os objetos aos quais a ação se aplica. Como prática recomendada, especifique um recurso usando seu [nome do recurso da Amazon (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html). Para ações que não oferecem compatibilidade com permissões em nível de recurso, use um curinga (\$1) para indicar que a instrução se aplica a todos os recursos.

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



Por exemplo, você pode indicar um grupo de implantação (*myDeploymentGroup*) em sua declaração usando seu ARN da seguinte forma:

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

Também é possível especificar todos os grupos de implantação que pertencem a uma conta usando o caractere curinga (\$1) da seguinte maneira:

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

Para especificar todos os recursos, ou se uma ação de API não for compatível ARNs, use o caractere curinga (\$1) no `Resource` elemento da seguinte forma:

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

Algumas ações CodeDeploy da API aceitam vários recursos (por exemplo,`BatchGetDeploymentGroups`). Para especificar vários recursos em uma única instrução, separe-os ARNs com vírgulas, da seguinte forma:

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

CodeDeploy fornece um conjunto de operações para trabalhar com os CodeDeploy recursos. Para ver uma lista das operações disponíveis, consulte [CodeDeploy referência de permissões](auth-and-access-control-permissions-reference.md).

Para ver uma lista dos tipos de CodeDeploy recursos e seus ARNs, consulte [Resources Defined by AWS CodeDeploy](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awscodedeploy.html) no *Guia do usuário do IAM*. Para obter informações sobre as ações nas quais é possível especificar o ARN de cada recurso, consulte [Ações definidas pelo AWS CodeDeploy](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awscodedeploy.html#awscodedeploy-actions-as-permissions).

#### CodeDeploy recursos e operações
<a name="arn-formats"></a>

Em CodeDeploy, o recurso principal é um grupo de implantação. Em uma política, você usa um Amazon Resource Name (ARN) para identificar o recurso ao qual a política se aplica. CodeDeploy oferece suporte a outros recursos que podem ser usados com grupos de implantação, incluindo aplicativos, configurações de implantação e instâncias. Estes são chamados de sub-recursos. Esses recursos e sub-recursos têm uma ARNs associação exclusiva com eles. Para obter mais informações, consulte [os nomes de recursos da Amazon (ARNs)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) no *Referência geral da Amazon Web Services*.


| Tipo de atributo | Formato ARN | 
| --- | --- | 
| Grupo de implantação |  `arn:aws:codedeploy:region:account-id:deploymentgroup:application-name/deployment-group-name`  | 
| Aplicação |  `arn:aws:codedeploy:region:account-id:application:application-name`  | 
| Configuração de implantação |  `arn:aws:codedeploy:region:account-id:deploymentconfig:deployment-configuration-name`   | 
| Instância |  `arn:aws:codedeploy:region:account-id:instance/instance-ID`  | 
|  Todos os CodeDeploy recursos  |  `arn:aws:codedeploy:*`  | 
|  Todos os CodeDeploy recursos pertencentes à conta especificada na região especificada  |  `arn:aws:codedeploy:region:account-id:*`  | 

**nota**  
A maioria dos serviços em AWS trata dois pontos (:) ou uma barra invertida (/) como o mesmo caractere em. ARNs No entanto, CodeDeploy usa uma correspondência exata nos padrões e regras dos recursos. Use os caracteres corretos do ARN ao criar padrões de evento, de modo que eles correspondam à sintaxe do ARN no recurso.

### Chaves de condição
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

CodeDeploy não fornece nenhuma chave de condição específica do serviço, mas oferece suporte ao uso de algumas chaves de condição globais. Para obter mais informações, consulte [Chaves de contexto de condição global da AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) no *Guia do usuário do IAM*.



### Exemplos
<a name="security_iam_service-with-iam-id-based-policies-examples"></a>



Para ver exemplos de políticas CodeDeploy baseadas em identidade, consulte. [AWS CodeDeploy exemplos de políticas baseadas em identidade](security_iam_id-based-policy-examples.md)

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

CodeDeploy não oferece suporte a políticas baseadas em recursos. Para ver um exemplo de uma página detalhada de políticas baseadas em recursos, consulte [Usando políticas baseadas em recursos](https://docs.aws.amazon.com/lambda/latest/dg/access-control-resource-based.html) para. AWS Lambda

## Autorização baseada em CodeDeploy tags
<a name="security_iam_service-with-iam-tags"></a>

CodeDeploy não oferece suporte à marcação de recursos ou ao controle de acesso com base em tags.

## CodeDeploy Funções do IAM
<a name="security_iam_service-with-iam-roles"></a>

Uma [função do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) é uma entidade na sua AWS conta que tem permissões específicas.

### Usando credenciais temporárias com CodeDeploy
<a name="security_iam_service-with-iam-roles-tempcreds"></a>

É possível usar credenciais temporárias para fazer login com federação, assumir um perfil do IAM ou assumir um perfil entre contas. Você obtém credenciais de segurança temporárias chamando operações de AWS STS API, como [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html)ou [GetFederationToken](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetFederationToken.html). 

CodeDeploy suporta o uso de credenciais temporárias. 

### Perfis vinculados ao serviço
<a name="security_iam_service-with-iam-roles-service-linked"></a>

CodeDeploy não oferece suporte a funções vinculadas a serviços.

### Perfis de serviço
<a name="security_iam_service-with-iam-roles-service"></a>

Esse atributo permite que um serviço assuma um [perfil de serviço](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-role) em seu nome. O perfil permite que o serviço acesse recursos em outros serviços para concluir uma ação em seu nome. As funções de serviço aparecem na sua AWS conta e são de propriedade da conta. Isso significa que um usuário pode alterar as permissões para esse perfil. Porém, fazer isso pode alterar a funcionalidade do serviço.

CodeDeploy suporta funções de serviço. 

### Escolha de uma função do IAM em CodeDeploy
<a name="security_iam_service-with-iam-roles-choose"></a>

Ao criar um recurso de grupo de implantação em CodeDeploy, você deve escolher uma função para permitir o acesso CodeDeploy ao Amazon EC2 em seu nome. Caso já tenha criado uma função de serviço ou uma função vinculada ao serviço, o CodeDeploy fornecerá uma lista das funções para que você escolha. É importante escolher uma função que conceda acesso para iniciar e interromper instâncias do EC2.