

# Configurar permissões do IAM para o AWS Glue
<a name="set-up-iam"></a>

As instruções neste tópico ajudam você a configurar rapidamente as permissões AWS Identity and Access Management (IAM) para o AWS Glue. Você concluirá as seguintes tarefas:
+ Conceda às suas identidades do IAM acesso aos recursos do AWS Glue.
+ Crie um perfil de serviço para executar trabalhos, acessar dados e executar tarefas de qualidade do AWS Glue Data Quality.

Para obter instruções detalhadas que você pode usar para personalizar as permissões do IAM para o AWS Glue, consulte [Configurar permissões do KMS para o AWS Glue](configure-iam-for-glue.md).

**Para configurar as permissões do IAM para AWS Glue no Console de gerenciamento da AWS**

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

1. Escolha **Conceitos básicos**.

1. Em **Preparar sua conta para o AWS Glue**, escolha **Configurar permissões do IAM**.

1. Escolha as identidades do IAM (perfis ou usuários) às quais você deseja conceder permissões do AWS Glue. O AWS Glue anexa a política gerenciada `[AWSGlueConsoleFullAccess](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/AWSGlueConsoleFullAccess)` a essas identidades. Você pode pular essa etapa se quiser definir essas permissões manualmente ou se quiser definir apenas um perfil de serviço padrão.

1. Escolha **Próximo**.

1. Escolha o nível de acesso ao Amazon S3 de que os perfis e usuários precisam. As opções escolhidas nessa etapa são aplicadas a todas as identidades selecionadas.

   1. Em **Escolher locais do S3**, escolha os locais do Amazon S3 aos quais você deseja conceder acesso.

   1. Em seguida, selecione se as identidades devem ter acesso de **Somente leitura (recomendado)** ou de **Leitura e gravação** aos locais que você selecionou anteriormente. O AWS Glue adiciona políticas de permissões às identidades com base na combinação dos locais e das permissões de leitura ou gravação que você seleciona.

      A tabela a seguir mostra as permissões que o AWS Glue anexa para acesso ao Amazon S3.  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/glue/latest/dg/set-up-iam.html)

1. Escolha **Próximo**.

1. Escolha perfil de serviço padrão do AWS Glue para sua conta. Um perfil de serviço é um perfil do IAM que é o AWS Glue usada para acessar recursos em outros serviços da AWS em seu nome. Para obter mais informações, consulte [Perfis de serviço do AWS Glue](security_iam_service-with-iam.md#security_iam_service-with-iam-roles-service).
   + Ao escolher perfil de serviço padrão do AWS Glue, o AWS Glue cria um novo perfil do IAM na sua Conta da AWS denominado `AWSGlueServiceRole` com as seguintes políticas gerenciadas anexadas. Se sua conta já tiver um perfil do IAM denomiado `AWSGlueServiceRole`, o AWS Glue anexa essas políticas ao perfil existente.
     +  [AWSGlueServiceRole](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/service-role/AWSGlueServiceRole): esta política gerenciada é necessária para que o AWS Glue possa acessar e gerenciar recursos em seu nome. Ela permite ao AWS Glue criar, atualizar e excluir vários recursos, como AWS Glue trabalhos, crawlers e conexões. Também concede permissões ao AWS Glue para acessar logs Amazon CloudWatch para fins de registro em log. Para começar, recomendamos usar essa política para aprender a usar o AWS Glue. À medida que você se familiarizar com o AWS Glue, poderá criar políticas que permitem ajustar o acesso aos recursos conforme necessário. 
     +  [AWSGlueConsoleFullAccess](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/AWSGlueConsoleFullAccess): esta política gerenciada concede acesso total ao serviço do AWS Glue por meio do Console de gerenciamento da AWS. Esta política concede permissões para realizar qualquer operação dentro do AWS Glue, permitindo que você crie, modifique e exclua qualquer recurso do AWS Glue conforme necessário. No entanto, é importante observar que ela não concede permissões para acessar os armazenamentos de dados subjacentes ou outros serviços da AWS que possam estar envolvidos no processo de ETL. Devido ao amplo escopo das permissões concedidas pela política do `AWSGlueConsoleFullAccess`, ela deve ser atribuída com cautela e seguindo o princípio do privilégio mínimo. Geralmente, é recomendável criar e usar políticas mais granulares adaptadas a casos de uso e requisitos específicos sempre que possível. 
     +  [ AWSGlueConsole-S3-read-only-policy](https://console.aws.amazon.com/iam/home#policies/details/arn:aws:iam:aws:policy/AWSGlueConsole-S3-read-only-policy): esta política permite que o AWS Glue leia dados de buckets específicos do Amazon S3, mas não concede permissões para gravar ou modificar dados no Amazon S3 ou 

        [ AWSGlueConsole-S3-read-and-write](https://console.aws.amazon.com/iam/home#policies/details/arn:aws:iam:aws:policy/AWSGlueConsole-S3-read-and-write): esta política permite que o AWS Glue leia e grave dados em buckets específicos do Amazon S3 como parte do processo de ETL. 
   +  Quando você escolhe um perfil do IAM existente, o AWS Glue o define como padrão, mas não adiciona a ele nenhuma permissão do `AWSGlueServiceRole`. Verifique se você configurou o perfil a ser usado como um perfil de serviço do AWS Glue. Para obter mais informações, consulte [Etapa 1: criar uma política do IAM para o serviço AWS Glue](create-service-policy.md) e [Etapa 2: criar um perfil do IAM para o AWS Glue](create-an-iam-role.md). 

1. Escolha **Próximo**.

1. Por fim, revise as permissões que você selecionou e escolha **Aplicar alterações**. Ao aplicar as alterações, o AWS Glue adiciona permissões do IAM às identidades que você selecionou. Você pode visualizar ou modificar as novas permissões no console do IAM em [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

Você agora concluiu a configuração de permissões mínimas do IAM para o AWS Glue. Em um ambiente de produção, recomendamos que você se familiarize com o [Segurança no AWS Glue](security.md) e o [Gerenciamento de identidade e acesso do AWS Glue](security-iam.md) para ajudar a proteger os recursos da AWS para seu caso de uso.

## Próximas etapas
<a name="set-up-iam-next-steps"></a>

Agora que tem as permissões do IAM configuradas, você pode explorar os seguintes tópicos para começar a usar o AWS Glue:
+ [Introdução ao AWS Glue no AWS Skill Builder](https://explore.skillbuilder.aws/learn/course/external/view/elearning/8171/getting-started-with-aws-glue)
+ [Conceitos básicos do AWS Glue Data Catalog](start-data-catalog.md)

# Configuração do AWS Glue Studio
<a name="setting-up-studio"></a>

Conclua as tarefas nesta seção ao usar o AWS Glue para o Visual ETL pela primeira vez:

**Topics**
+ [Revisar as permissões do IAM necessárias para o usuário do AWS Glue Studio](getting-started-min-privs.md)
+ [Revisar as permissões do IAM necessárias para trabalhos de ETL](getting-started-min-privs-job.md)
+ [Configurar permissões do IAM para o AWS Glue Studio](getting-started-iam-permissions.md)
+ [Configurar uma VPC para seu trabalho de ETL](getting-started-vpc-config.md)

# Revisar as permissões do IAM necessárias para o usuário do AWS Glue Studio
<a name="getting-started-min-privs"></a>

Para usar AWS Glue Studio, o usuário deve ter acesso a vários recursos da AWS. O usuário deve ser capaz de visualizar e selecionar buckets do Amazon S3, políticas e funções do IAM e objetos do AWS Glue Data Catalog.

## AWS GluePermissões de serviço do
<a name="getting-started-min-privs-glue"></a>

O AWS Glue Studio usa as ações e recursos do serviço do AWS Glue. Seu usuário precisa de permissões sobre essas ações e recursos para usar com eficiência o AWS Glue Studio. Você pode conceder ao usuário do AWS Glue Studio a política gerenciada `AWSGlueConsoleFullAccess` ou criar uma política personalizada com um conjunto menor de permissões.

**Importante**  
De acordo com as práticas recomendadas de segurança, recomenda-se restringir o acesso enrijecendo políticas para restringir ainda mais o acesso ao bucket do Amazon S3 e grupos de logs do Amazon CloudWatch. Para obter um exemplo de política do Amazon S3, consulte [Gravar políticas do IAM: como conceder acesso a um bucket do Amazon S3](https://aws.amazon.com/blogs/security/writing-iam-policies-how-to-grant-access-to-an-amazon-s3-bucket/). 

## Criação de políticas do IAM personalizadas para o AWS Glue Studio
<a name="getting-started-all-gs-privs"></a>

Você pode criar uma política personalizada com um conjunto menor de permissões para o AWS Glue Studio. A política pode conceder permissões para um subconjunto de objetos ou ações. Use as seguintes informações ao criar uma política personalizada. 

 Para usar as APIs do AWS Glue Studio, inclua `glue:UseGlueStudio` na política de ação em suas permissões do IAM. O uso de `glue:UseGlueStudio` permitirá que você acesse todas as ações do AWS Glue Studio mesmo quando mais ações forem adicionadas à API no decorrer do tempo. 

 Para obter mais informações sobre as ações definidas pelo AWS Glue, consulte [Ações definidas pelo AWS Glue](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsglue.html). 

 **Preparação de dados em autoria de ações** 
+ SendRecipeAction
+ GetRecipeAction

 **Ações do gráfico acíclico dirigido (DAG** 
+ CreateDag
+ UpdateDag
+ GetDag
+ DeleteDag

 **Ações de trabalho** 
+ SaveJob
+ GetJob
+ CreateJob
+ DeleteJob
+ GetJobs
+ UpdateJob

 **Ações de execução de trabalho** 
+ StartJobRun
+ GetJobRuns
+ BatchStopJobRun
+ GetJobRun
+ QueryJobRuns
+ QueryJobs
+ QueryJobRunsAggregated

 **Ações do esquema** 
+ GetSchema
+ GetInferredSchema

 **Ações de banco de dados** 
+ GetDatabases

 **Ações de planejamento** 
+ GetPlan

 **Ações de tabela** 
+ SearchTables
+ GetTables
+ GetTables

 **Ações de conexão** 
+ CreateConnection
+ DeleteConnection
+ UpdateConnection
+ GetConnections
+ GetConnection

 **Ações de mapeamento** 
+ GetMapping

 **Ações do proxy do S**
+ ListBuckets
+ ListObjectsV2
+ GetBucketLocation

**Ações de configuração de segurança**
+ GetSecurityConfigurations 

**Ações de script**
+ CreateScript (diferente da API de mesmo nome no AWS Glue)

## Acesso às APIs do AWS Glue Studio
<a name="getting-started-glue-studio-apis"></a>

 Para acessar o AWS Glue Studio, adicione `glue:UseGlueStudio` na lista de políticas de ações nas permissões do IAM. 

 No exemplo abaixo, `glue:UseGlueStudio` está incluído na política de ação, mas as APIs do AWS Glue Studio não estão identificadas individualmente. Isso ocorre porque ao incluir `glue:UseGlueStudio`, você recebe automaticamente acesso às APIs internas sem precisar especificar as APIs individuais do AWS Glue Studio nas permissões do IAM. 

 No exemplo, as políticas adicionais de ação listadas (p. ex., `glue:SearchTables`) não são APIs do AWS Glue Studio, portanto, será necessário incluí-las nas permissões do IAM, conforme necessário. Você também pode incluir ações do Amazon S3 Proxy para especificar o nível de acesso do Amazon S3 a ser concedido. O exemplo de política abaixo fornece acesso para abrir o AWS Glue Studio, criar um trabalho visual e salvá-lo/executá-lo se o perfil do IAM selecionado tiver acesso suficiente. 

## Permissões de visualização de dados e caderno
<a name="getting-started-data-preview-perms"></a>

As visualizações de dados e os cadernos permitem que você veja uma amostra dos seus dados em qualquer estágio do trabalho (leitura, transformação, gravação), sem precisar executar o trabalho. Você especifica uma função do AWS Identity and Access Management (IAM) para a AWS Glue Studio para usar ao acessar os dados. As funções do IAM destinam-se a poder ser assumidas e não têm credenciais de longo prazo padrão, como uma senha ou chaves de acesso, associadas a ela. Em vez disso, quando o AWS Glue Studio assume a função, o IAM fornece credenciais de segurança temporárias. 

Para garantir que as visualizações de dados e os comandos do caderno funcionem corretamente, use uma função que tenha um nome que comece com a string `AWSGlueServiceRole`. Se você escolher usar um nome diferente para a função, será necessário adicionar a permissão `iam:passrole` e configurar uma política para a função no IAM. Para obter mais informações, consulte [Criar uma política do IAM para funções não nomeadas “AWSGlueServiceRole\$1”](getting-started-iam-permissions.md#create-iam-policy).

**Atenção**  
Se uma função conceder a permissão `iam:passrole` a um caderno e você implementar o encadeamento de funções, um usuário pode inadvertidamente obter acesso ao caderno. No momento, não há auditoria implementada que permita monitorar quais usuários receberam acesso ao caderno.

Caso queira negar a uma identidade do IAM a capacidade de criar sessões de pré-visualização de dados, consulte o exemplo para [Negação da capacidade de criar sessões de pré-visualização de dados para uma identidade](security_iam_id-based-policy-examples.md#deny-data-preview-sessions-per-identity).

## Amazon CloudWatchPermissões do
<a name="getting-started-min-privs-cloudwatch"></a>

É possível monitorar os trabalhos do AWS Glue Studio usando o Amazon CloudWatch, o qual coleta e processa dados brutos do AWS Glue e os transforma em métricas legíveis quase em tempo real. Por padrão, os dados de métricas do AWS Glue são enviados para o CloudWatch automaticamente. Para obter mais informações, consulte [O que é o Amazon CloudWatch?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/WhatIsCloudWatch.html) no *Manual do usuário do Amazon CloudWatch* e [Métricas do AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/monitoring-awsglue-with-cloudwatch-metrics.html#awsglue-metrics) no *Guia do desenvolvedor do AWS Glue*. 

Para acessar os painéis do CloudWatch, o usuário que acessa o AWS Glue Studio precisa de um dos seguintes:
+ A política `AdministratorAccess`
+ A política `CloudWatchFullAccess`
+ Uma política personalizada que inclui uma ou mais destas permissões específicas:
  + `cloudwatch:GetDashboard` e `cloudwatch:ListDashboards` para visualizar painéis
  + `cloudwatch:PutDashboard` para criar ou modificar painéis
  + `cloudwatch:DeleteDashboards` para excluir painéis

Para obter mais informações sobre como alterar as permissões de um usuário do IAM usando políticas, consulte [Alterar permissões de um usuário do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_change-permissions.html) no *Manual do usuário do IAM*. 

# Revisar as permissões do IAM necessárias para trabalhos de ETL
<a name="getting-started-min-privs-job"></a>

Quando você cria um trabalho usando o AWS Glue Studio, o trabalho assume as permissões da função do IAM que você especificou ao criá-lo. Essa função do IAM precisa ter permissão para extrair dados da sua origem dos dados, gravá-los no destino e acessar recursos do AWS Glue. 

O nome da função que você cria para o trabalho deve começar com a string `AWSGlueServiceRole` para que ele seja usado corretamente pelo AWS Glue Studio. Por exemplo, você pode nomear sua função `AWSGlueServiceRole-FlightDataJob`.

## Permissões de origem e destino dos dados
<a name="getting-started-min-privs-data"></a>

Um trabalho do AWS Glue Studio deve ter acesso ao Amazon S3 para quaisquer origens, destinos, scripts e diretórios temporários utilizados no trabalho. Você pode criar uma política para fornecer acesso minucioso a recursos específicos do Amazon S3. 
+ As fontes de dados exigem permissões `s3:ListBucket` e `s3:GetObject`. 
+ Os destinos de dados exigem permissões `s3:ListBucket`, `s3:PutObject` e `s3:DeleteObject`.

**nota**  
 Sua política de IAM precisa permitir `s3:GetObject` para os buckets específicos usados para hospedar as transformações do AWS Glue.   
 Os buckets a seguir pertencem à conta do serviço da AWS e podem ser lidos em todo o mundo. Esses buckets servem como um repositório para o código-fonte referente a um subconjunto de transformações acessíveis por meio do editor visual do AWS Glue Studio. As permissões no bucket são configuradas para negar qualquer outra ação de API no bucket. Qualquer pessoa pode ler os scripts que fornecemos para as transformações, mas ninguém fora da nossa equipe de serviço pode "colocar" nada neles. Quando seu trabalho do AWS Glue é executado, esse arquivo é extraído como uma importação local para que o arquivo seja baixado para o contêiner local. Depois disso, não há mais comunicação com essa conta. 

 Região: Nome do bucket 
+ af-south-1: aws-glue-studio-transforms-762339736633-prod-af-south-1
+ ap-east-1: aws-glue-studio-transforms-125979764932-prod-ap-east-1
+ ap-northeast-2: aws-glue-studio-transforms-673535381443-prod-ap-northeast-2
+ ap-northeast-3: aws-glue-studio-transforms-149976050262-prod-ap-northeast-3
+ ap-south-1: aws-glue-studio-transforms-584702181950-prod-ap-south-1
+ ap-south-2: aws-glue-studio-transforms-380279651983-prod-ap-south-2
+ ap-southeast-1: aws-glue-studio-transforms-737106620487-prod-ap-southeast-1
+ ap-southeast-2: aws-glue-studio-transforms-234881715811-prod-ap-southeast-2
+ ap-southeast-3: aws-glue-studio-transforms-151265630221-prod-ap-southeast-3
+ ap-southeast-4: aws-glue-studio-transforms-052235663858-prod-ap-southeast-4
+ ca-central-1: aws-glue-studio-transforms-622716468547-prod-ca-central-1
+ ca-west-1: aws-glue-studio-transforms-915795495192-prod-ca-west-1
+ eu-central-1: aws-glue-studio-transforms-560373232017-prod-eu-central-1
+ eu-central-2: aws-glue-studio-transforms-907358657121-prod-eu-central-2
+ eu-north-1: aws-glue-studio-transforms-312557305497-prod-eu-north-1
+ eu-south-1: aws-glue-studio-transforms-939684186351-prod-eu-south-1
+ eu-south-2: aws-glue-studio-transforms-239737454084-prod-eu-south-2
+ eu-west-1: aws-glue-studio-transforms-244479516193-prod-eu-west-1
+ eu-west-2: aws-glue-studio-transforms-804222392271-prod-eu-west-2
+ eu-west-3: aws-glue-studio-transforms-371299348807-prod-eu-west-3
+ il-central-1: aws-glue-studio-transforms-806964611811-prod-il-central-1
+ me-central-1: aws-glue-studio-transforms-733304270342-prod-me-central-1
+ me-south-1: aws-glue-studio-transforms-112120182341-prod-me-south-1
+ sa-east-1: aws-glue-studio-transforms-881619130292-prod-sa-east-1
+ us-east-1: aws-glue-studio-transforms-510798373988-prod-us-east-1
+ us-east-2: aws-glue-studio-transforms-251189692203-prod-us-east-2
+ us-west-1: aws-glue-studio-transforms-593230150239-prod-us-west-1
+ us-west-2: aws-glue-studio-transforms-818035625594-prod-us-west-2
+ ap-northeast-1: aws-glue-studio-transforms-200493242866-prod-ap-northeast-1
+ cn-north-1: aws-glue-studio-transforms-071033555442-prod-cn-north-1
+ cn-northwest-1: aws-glue-studio-transforms-070947029561-prod-cn-northwest-1
+ us-gov-west-1: aws-glue-studio-transforms-227493901923-prod-us-gov-west-1-2604
+ eusc-de-east-1: aws-glue-studio-transforms-780995497573-prod-eusc-de-east-1-555

Se escolher Amazon Redshift como sua origem dos dados, você poderá fornecer uma função para permissões de cluster. Trabalhos que são executados em um cluster do Amazon Redshift emitem comandos que acessam o Amazon S3 para armazenamento temporário usando credenciais temporárias. Se o trabalho for executado por mais de uma hora, essas credenciais expirarão, fazendo com que o trabalho falhe. Para evitar esse problema, você pode atribuir uma função ao próprio cluster do Amazon Redshift que concede as permissões necessárias aos trabalhos utilizando credenciais temporárias. Para obter mais informações, consulte [Mover dados de e para o Amazon RedShift](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-redshift.html) no *Guia do desenvolvedor do AWS Glue*.

Se o trabalho usar origens ou destinos de dados diferentes do Amazon S3, você deve anexar as permissões necessárias à função do IAM usada pelo trabalho para acessar essas origens e destinos de dados. Para obter mais informações, consulte [Configurar seu ambiente para acessar armazenamentos de dados](https://docs.aws.amazon.com/glue/latest/dg/start-connecting.html) no *Guia do desenvolvedor do AWS Glue*.

Se você estiver usando conectores e conexões para seu armazenamento de dados, precisará de permissões adicionais, conforme descrito em [Permissões necessárias para usar conectores](#getting-started-min-privs-connectors).

## Permissões necessárias para excluir trabalhos
<a name="getting-started-min-privs-delete-job"></a>

No AWS Glue Studio, você pode selecionar vários trabalhos no console para excluir. Para executar essa ação, você deve ter a permissão `glue:BatchDeleteJob`. Isso é diferente do console do AWS Glue, que requer a permissão `glue:DeleteJob` para excluir trabalhos.

## AWS Key Management ServicePermissões do
<a name="getting-started-min-privs-kms"></a>

Se você planeja acessar origens e destinos do Amazon S3 que usam criptografia do lado do servidor com AWS Key Management Service (AWS KMS), anexe uma política à função do AWS Glue Studio usada pelo trabalho que permita que ele descriptografe os dados. A função de trabalho precisa das permissões `kms:ReEncrypt`, `kms:GenerateDataKey` e `kms:DescribeKey`. Além disso, a função de trabalho precisa da permissão `kms:Decrypt` para carregar ou baixar um objeto do Amazon S3 criptografado com uma chave mestra do cliente do AWS KMS (CMK).

Há custos adicionais pelo uso de CMKs do AWS KMS. Para obter mais informações, consulte [Conceitos do AWS Key Management Service: chaves mestras de cliente (CMKs)](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#master_keys) em [Preços do AWS Key Management Service](https://aws.amazon.com/kms/pricing) no *Guia do desenvolvedor do AWS Key Management Service*.

## Permissões necessárias para usar conectores
<a name="getting-started-min-privs-connectors"></a>

Se você estiver usando um conector personalizado e uma conexão do AWS Glue para acessar um armazenamento de dados, a função usada para executar o trabalho de ETL do AWS Glue precisa de permissões adicionais anexadas:
+ A política gerenciada pela AWS `AmazonEC2ContainerRegistryReadOnly` para acessar conectores comprados no AWS Marketplace.
+ As permissões `glue:GetJob` e `glue:GetJobs`.
+ AWS Secrets ManagerPermissões do para acessar segredos que são usados com conexões. Consulte [Exemplo: permissão para recuperar valores de segredos](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_examples.html#auth-and-access_examples_read) para obter exemplos de políticas do IAM.

Se seus trabalhos de ETL do AWS Glue são executados em uma VPC executando a Amazon VPC, então a VPC deve ser configurada conforme descrito em [Configurar uma VPC para seu trabalho de ETL](getting-started-vpc-config.md).

# Configurar permissões do IAM para o AWS Glue Studio
<a name="getting-started-iam-permissions"></a>

Você pode criar as funções e atribuir políticas a usuários e a funções de trabalho usando o usuário administrador da AWS. 

Você pode usar a política gerenciada pela AWS **AWSGlueConsoleFullAccess** para fornecer as permissões necessárias para usar o console do AWS Glue Studio. 

Para criar sua própria política, siga as etapas documentadas em [Criar uma política do IAM para o serviço do AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/create-service-policy.html) no *Guia do desenvolvedor do AWS Glue*. Inclua as permissões do IAM descritas anteriormente em [Revisar as permissões do IAM necessárias para o usuário do AWS Glue Studio](getting-started-min-privs.md).

**Topics**
+ [Anexar políticas ao usuário do AWS Glue Studio](#attach-iam-policy)
+ [Criar uma política do IAM para funções não nomeadas “AWSGlueServiceRole\$1”](#create-iam-policy)

## Anexar políticas ao usuário do AWS Glue Studio
<a name="attach-iam-policy"></a>

Qualquer usuário do AWS que fizer login no console do AWS Glue Studio deverá ter permissões para acessar recursos específicos. Você fornece essas permissões associando políticas do IAM ao usuário. 

**Para anexar a política gerenciada **AWSGlueConsoleFullAccess** a um usuário**

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

1. No painel de navegação, selecione **Políticas**. 

1. Na lista de políticas, marque a caixa de seleção ao lado da política **AWSGlueConsoleFullAccess**. Você pode usar o menu **Filtro** e a caixa de pesquisa para filtrar a lista de políticas. 

1. Selecione **Ações da política** e escolha **Anexar**. 

1. Escolha o usuário ao qual a política será anexada. Você pode usar o menu **Filter** (Filtro) e a caixa de pesquisa para filtrar a lista de entidades principais. Depois de escolher o usuário ao qual a política será anexada, selecione **Attach policy**. 

1. Repita as etapas anteriores para anexar políticas adicionais ao usuário conforme necessário.

## Criar uma política do IAM para funções não nomeadas “AWSGlueServiceRole\$1”
<a name="create-iam-policy"></a>

**Para configurar uma política do IAM para funções usadas pelo AWS Glue Studio**

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

1. Adicione uma nova política do IAM. É possível adicionar a uma política existente ou criar uma nova política em linha do IAM. Para criar uma política do IAM:

   1. Escolha **Policies** (Políticas) e depois **Create Policy** (Criar política). Se aparecer um botão **Get Started**, selecione-o e, em seguida, **Create Policy**.

   1. Próximo a **Create Your Own Policy**, escolha **Select**.

   1. Em **Nome da política**, digite qualquer valor que seja mais fácil para você consultar mais tarde. Você também pode digitar um texto descritivo em **Descrição**.

   1. Em **Documento de política**, digite uma instrução com o seguinte formato e escolha **Criar política**:

1. Copie e cole os blocos a seguir na política na matriz “Statement”, substituindo *my-interactive-session-role-prefix* pelo prefixo de todos os perfis comuns a serem associados com as permissões para o AWS Glue.

   ```
   {
       "Action": [
           "iam:PassRole"
       ],
       "Effect": "Allow",
       "Resource": "arn:aws:iam::*:role/my-interactive-session-role-prefix*",
       "Condition": {
           "StringLike": {
               "iam:PassedToService": [
                   "glue.amazonaws.com "
               ]
           }
       }
   }
   ```

    Aqui está o exemplo completo com os arrays Version and Statement incluídos na política 

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

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Action": [
           "iam:PassRole"
         ],
         "Effect": "Allow",
         "Resource": "arn:aws:iam::*:role/my-interactive-session-role-prefix*",
         "Condition": {
           "StringLike": {
             "iam:PassedToService": [
               "glue.amazonaws.com "
             ]
           }
         }
       }
     ]
   }
   ```

------

1. Para habilitar a política para um usuário, escolha **Usuários**.

1. Escolha o usuário do para o qual você deseja anexar a política.

# Configurar uma VPC para seu trabalho de ETL
<a name="getting-started-vpc-config"></a>

O Amazon Virtual Private Cloud (Amazon VPC) permite definir uma rede virtual em sua própria área isolada logicamente na Nuvem AWS, conhecida como uma *nuvem privada virtual (VPC)*. Você pode iniciar os recursos da AWS, como as instâncias, na VPC. Sua VPC assemelha-se a uma rede tradicional que você poderia operar no seu próprio data center, com os benefícios de usar a infraestrutura escalável da AWS. É possível configurar seu VPC, selecionar o intervalo de endereços IP dele, criar sub-redes e definir tabelas de rotas, gateways de rede e configurações de segurança. Você pode se conectar às suas instâncias na VPC. É possível conectar a VPC a seu próprio data center corporativo, tornando a Nuvem AWS uma extensão do seu data center. Para proteger os recursos em cada sub-rede, você pode usar várias camadas de segurança, incluindo grupos de segurança e listas de controle de acesso de rede. Para obter mais informações, consulte o [Manual do usuário da Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/).

Você pode configurar os trabalhos de ETL do AWS Glue para serem executados em uma VPC ao usar conectores. Você deve configurar a VPC para o seguinte, conforme necessário:
+ Acesso à rede pública para armazenamentos de dados fora da AWS. Todos os armazenamentos de dados acessados pelo trabalho devem estar disponíveis na sub-rede da VPC. 
+ Se o seu trabalho precisar acessar recursos da VPC e a Internet pública, a VPC precisará conter uma instância de gateway de conversão de endereços de rede (NAT). 

  Para obter mais informações, consulte [Configurar seu ambiente para acessar armazenamentos de dados](https://docs.aws.amazon.com/glue/latest/dg/start-connecting.html) no *Guia do desenvolvedor do AWS Glue*.

# Conceitos básicos de cadernos no AWS Glue Studio
<a name="notebook-getting-started"></a>

 Ao iniciar um caderno por meio do AWS Glue Studio, todas as etapas de configuração são feitas para você, para que você possa explorar seus dados e começar a desenvolver seu script de trabalho após apenas alguns segundos. 

 As seções a seguir descrevem como criar um perfil e conceder as permissões apropriadas para usar cadernos do AWS Glue Studio para trabalhos de ETL. 

 Para obter mais informações sobre as ações definidas pelo AWS Glue, consulte [Ações definidas pelo AWS Glue](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsglue.html). 

**Topics**
+ [Conceder permissões para a função do IAM](#studio-notebook-permissions)

## Conceder permissões para a função do IAM
<a name="studio-notebook-permissions"></a>

 A configuração do AWS Glue Studio é um pré-requisito para usar cadernos. 

Para usar cadernos no AWS Glue, seu perfil exige o seguinte:
+  Uma relação de confiança com o AWS Glue para a ação `sts:AssumeRole`, além de `sts:TagSession` se você quiser usar marcação. 
+  Uma política do IAM contendo todas as permissões para cadernos, AWS Glue e sessões interativas. 
+  Uma política do IAM para uma função de transmissão, pois a função precisa ser capaz de repassar ela própria do caderno para sessões interativas. 

 Por exemplo, ao criar um novo perfil, você pode adicionar uma política gerenciada padrão do AWS como `AWSGlueConsoleFullAccessRole` a função, e depois adicionar uma nova política para as operações do caderno e outra para a política PassRole do IAM. 

### Ações necessárias para uma relação de confiança com o AWS Glue
<a name="create-notebook-permissions-trust"></a>

 Ao iniciar uma sessão de caderno, deve adicionar `sts:AssumeRole` ao relacionamento de confiança da função que é repassada ao caderno. Se a sessão incluir etiquetas, você também deve repassar a ação `sts:TagSession`. Sem essas ações, a sessão do caderno não pode começar. 

 Por exemplo: 

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "glue.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

------

### Políticas contendo permissões do IAM para cadernos
<a name="create-notebook-permissions-operations"></a>

 O exemplo de política a seguir descreve as permissões necessárias do AWS IAM para os cadernos. Se você estiver criando um novo perfil, crie uma política que contenha o seguinte: 

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "glue:StartNotebook",
        "glue:TerminateNotebook",
        "glue:GlueNotebookRefreshCredentials",
        "glue:DeregisterDataPreview",
        "glue:GetNotebookInstanceStatus",
        "glue:GlueNotebookAuthorize"
      ],
      "Resource": "*"
    }
  ]
}
```

------

 É possível usar as seguintes políticas do IAM para permitir acesso a recursos específicos: 
+  *AwsGlueSessionUserRestrictedNotebookServiceRole*: fornece acesso total a todos os recursos do AWS Glue, exceto para sessões. Permite que os usuários criem e usem somente as sessões de caderno que estejam associadas ao usuário. Essa política também inclui outras permissões exigidas pelo AWS Glue para gerenciar recursos do AWS Glue em outros serviços da AWS. 
+  *AwsGlueSessionUserRestrictedNotebookPolicy*: fornece permissões que permitem que os usuários criem e usem somente as sessões de caderno associadas ao usuário. Essa política também inclui permissões para permitir explicitamente que os usuários transmitam uma função de sessão restrita do AWS Glue. 

### Política do IAM para uma aprovar um perfil
<a name="create-notebook-permissions-pass-role"></a>

 Quando você cria um caderno com uma função, essa função é transmitida para sessões interativas, de modo que a mesma função possa ser usada em ambos os lugares. Por isso, a permissão `iam:PassRole` precisa fazer parte da política da função. 

 Crie uma nova política para seu perfil usando o exemplo a seguir. Substitua o número da conta e pelo seu próprio e pelo nome do perfil. 

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "iam:PassRole",
      "Resource": "arn:aws:iam::111122223333:role/<role_name>"
    }
  ]
}
```

------