Etapa 2: criar um perfil do IAM para o AWS Glue
Você precisa conceder à sua função do IAM as permissões que o AWS Glue pode assumir ao chamar outros serviços em seu nome. Isso inclui acesso do Amazon S3 a quaisquer fontes, destinos, scripts e diretórios temporários utilizados com o AWS Glue. Crawlers, trabalhos e endpoints de desenvolvimento precisam dessa permissão.
Você concede essas permissões usando o AWS Identity and Access Management (IAM). Adicione uma política à função do IAM que você transmitir ao AWS Glue.
Para criar um perfil do IAM para o AWS Glue
Faça login no AWS Management Console e abra o console do IAM em https://console.aws.amazon.com/iam/
. -
No painel de navegação à esquerda, escolha Roles.
-
Selecione Criar função.
-
Em tipo de perfil, escolha Serviço da AWS, localize e escolha Glue e depois escolha Próximo: permissões.
-
Na página Attach permissions policy (Anexar política de permissões), escolha as políticas que contenham as permissões necessárias. Por exemplo, a política gerenciadas pela AWS
AWSGlueServiceRole
para permissões gerais do AWS Glue e a política gerenciada pela AWS AmazonS3FullAccess para acesso aos recursos do Amazon S3. Então, escolha Próximo: Análise.nota
Verifique se uma das políticas nessa função concede permissões aos seus destinos e fontes do Amazon S3. Convém fornecer sua própria política de acesso a recursos específicos do Amazon S3. As fontes de dados exigem permissões
s3:ListBucket
es3:GetObject
. Os destinos de dados exigem permissõess3:ListBucket
,s3:PutObject
es3:DeleteObject
. Para obter mais informações sobre como criar uma política do Amazon S3 para os seus recursos, consulte Especificar recursos em uma política. 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. Se você pretende acessar as fontes e os destinos do Amazon S3 que foram criptografados com SSE-KMS, anexe uma política que permita que os crawlers, os trabalhos e os endpoints de desenvolvimento do AWS Glue descriptografem os dados. Para obter mais informações, consulte Proteção de dados usando criptografia do lado do servidor com chaves gerenciadas pelo AWS KMS (SSE-KMS).
Veja um exemplo a seguir.
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "kms:Decrypt" ], "Resource":[ "arn:aws:kms:*:
account-id-without-hyphens
:key/key-id
" ] } ] } -
Para Role name (Nome da função), digite um nome para sua função, por exemplo,
AWSGlueServiceRoleDefault
. Crie a função com um nome que tenha a stringAWSGlueServiceRole
como prefixo para permitir que a função seja transmitida dos usuários do console para o serviço. As políticas fornecidas pelo AWS Glue esperam que as funções de serviço do IAM comecem comAWSGlueServiceRole
. Caso contrário, você precisará adicionar uma política para conceder aos seus usuários a permissãoiam:PassRole
para que as funções do IAM correspondam às suas conversões de nomenclatura. Selecione Criar perfil.nota
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.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::090000000210:role/<role_name>" } ] }