

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

# Personalização de perfis do IAM com o Amazon EMR
<a name="emr-iam-roles-custom"></a>

Talvez seja útil personalizar as permissões e os perfis de serviço do IAM para limitar os privilégios de acordo com seus requisitos de segurança. Para personalizar as permissões, recomendamos que você crie novas funções e políticas. Comece com as permissões nas políticas gerenciadas para as funções padrão (por exemplo, `AmazonElasticMapReduceforEC2Role` e `AmazonElasticMapReduceRole`). Em seguida, copie e cole o conteúdo em novas declarações de política, modifique as permissões conforme apropriado e anexe as políticas de permissões modificadas às funções que criar. Você deve ter as permissões apropriadas do IAM para trabalhar com perfis e políticas. Para obter mais informações, consulte [Permitir que usuários e grupos criem e modifiquem perfis](emr-iam-roles-create-permissions.md).

Se você criar um perfil personalizado do EMR para o EC2, siga o fluxo de trabalho básico, que criará automaticamente um perfil de instância com o mesmo nome. O Amazon EC2 permite criar perfis e perfis de instância com nomes diferentes, mas o Amazon EMR não oferece suporte a essa configuração, o que resulta em um erro de “perfil de instância inválido” quando você cria o cluster. 

**Importante**  
As políticas em linha não são atualizadas automaticamente quando os requisitos do serviço são alterados. Se você criar e anexar políticas em linha, lembre-se de que podem ocorrer atualizações de serviço que causem erros de permissão repentinamente. Para obter mais informações, consulte [Políticas gerenciadas e em linha](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies_managed-vs-inline.html) no *Guia do usuário do IAM* e em [Especificar perfis personalizados do IAM ao criar um cluster](#emr-iam-roles-launch-jobflow).

Para obter mais informações sobre como trabalhar com perfis do IAM, consulte os seguintes tópicos no *Guia do usuário do IAM*:
+  [Criação de uma função para delegar permissões a um serviço AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html) 
+  [Modificar uma função](https://docs.aws.amazon.com/IAM/latest/UserGuide/modifying-role.html) 
+  [Excluir um perfil](https://docs.aws.amazon.com/IAM/latest/UserGuide/deleting-roles.html) 

## Especificar perfis personalizados do IAM ao criar um cluster
<a name="emr-iam-roles-launch-jobflow"></a>

Você especifica o perfil de serviço para o Amazon EMR e o perfil para o perfil de instância do Amazon EC2 ao criar um cluster. O usuário que está criando clusters precisa de permissões para recuperar e atribuir perfis a instâncias do EC2 e ao Amazon EMR. Caso contrário, ocorrerá um erro **account is not authorized to call EC2**. Para obter mais informações, consulte [Permitir que usuários e grupos criem e modifiquem perfis](emr-iam-roles-create-permissions.md).

### Usar o console para especificar perfis personalizados
<a name="emr-iam-roles-launch-console"></a>

Ao criar um cluster, você pode especificar um perfil de serviço personalizado para o Amazon EMR, um perfil personalizado para o perfil de instância do EC2 e um perfil do Auto Scaling personalizado usando as **Opções avançadas**. Quando você usa **Quick options (Opções avançadas)**, a função de serviço padrão e a função padrão para o perfil de instância do EC2 são especificadas. Para obter mais informações, consulte [Perfis de serviço do IAM usados pelo Amazon EMR](emr-iam-service-roles.md).

------
#### [ Console ]

**Para especificar perfis do IAM personalizados usando o console**

Ao criar um cluster usando o console, é necessário especificar um perfil de serviço personalizado para o Amazon EMR e um perfil personalizado para o perfil de instância do EC2. Para obter mais informações, consulte [Perfis de serviço do IAM usados pelo Amazon EMR](emr-iam-service-roles.md).

1. [Faça login no e abra Console de gerenciamento da AWS o console do Amazon EMR em https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr)

1. Em **EMR no EC2**, no painel de navegação esquerdo, escolha **Clusters** e depois **Criar cluster**.

1. Em **Configuração e permissões de segurança**, encontre os campos **Perfil do IAM para o perfil de instância** e **Perfil de serviço para o Amazon EMR**. Para cada tipo de função, selecione uma função na lista. Apenas as funções em sua conta que têm a política de confiança apropriada para esse tipo de função são listadas.

1. Escolha qualquer outra opção que se aplique ao cluster. 

1. Para iniciar o cluster, escolha **Criar cluster**.

------

### Use o AWS CLI para especificar funções personalizadas
<a name="emr-iam-roles-launch-cli"></a>

É possível especificar um perfil de serviço do Amazon EMR e um perfil de serviço para instâncias de cluster do EC2 usando explicitamente opções com o comando `create-cluster` na AWS CLI. Use a opção `--service-role` para especificar a função de serviço. Use o argumento `InstanceProfile` da opção `--ec2-attributes` para especificar a função para o perfil de instância do EC2.

O perfil do Auto Scaling é especificado usando uma opção separada, `--auto-scaling-role`. Para obter mais informações, consulte [Uso do ajuste de escala automático com uma política personalizada para grupos de instâncias no Amazon EMR](emr-automatic-scaling.md).

**Para especificar funções personalizadas do IAM usando o AWS CLI**
+ O comando a seguir especifica o perfil de serviço personalizado, *MyCustomServiceRoleForEMR*, e um perfil personalizado para o perfil da instância do EC2, *MyCustomServiceRoleForClusterEC2Instances*, ao iniciar um cluster. Este exemplo usa o perfil padrão do Amazon EMR.
**nota**  
Os caracteres de continuação de linha do Linux (\$1) são incluídos para facilitar a leitura. Eles podem ser removidos ou usados ​​em comandos do Linux. No Windows, remova-os ou substitua-os por um sinal de interpolação (^).

  ```
  aws emr create-cluster --name "Test cluster" --release-label emr-7.12.0 \
  --applications Name=Hive Name=Pig --service-role MyCustomServiceRoleForEMR \
  --ec2-attributes InstanceProfile=MyCustomServiceRoleForClusterEC2Instances,\
  KeyName=myKey --instance-type m5.xlarge --instance-count 3
  ```

Você pode usar essas opções para especificar funções padrão explicitamente em vez de usar a opção `--use-default-roles`. A opção `--use-default-roles` especifica a função de serviço e a função do perfil de instância do EC2 definidas no arquivo `config` para a AWS CLI.

O exemplo a seguir demonstra o conteúdo de um `config` arquivo para as funções personalizadas especificadas para AWS CLI o Amazon EMR. Com esse arquivo de configuração, quando a `--use-default-roles` opção é especificada, o cluster é criado usando *MyCustomServiceRoleForEMR* e *MyCustomServiceRoleForClusterEC2Instances*. Por padrão, o arquivo `config` especifica a `service_role` padrão como `AmazonElasticMapReduceRole` e o `instance_profile` padrão como `EMR_EC2_DefaultRole`.

```
[default]
output = json
region = us-west-1
aws_access_key_id = myAccessKeyID
aws_secret_access_key = mySecretAccessKey
emr =
     service_role = MyCustomServiceRoleForEMR
     instance_profile = MyCustomServiceRoleForClusterEC2Instances
```