

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

# Requisitos para conectar o Data Catalog a fontes de dados externas
<a name="connect-data-source-prerequisites"></a>

Para AWS Glue Data Catalog conectar-se a fontes de dados externas, registrar a conexão com o Lake Formation e configurar catálogos federados, você precisa preencher os seguintes requisitos:
**nota**  
Recomendamos que um administrador de data lake do Lake Formation crie as AWS Glue conexões para se conectar a fontes de dados externas e criar os catálogos federados. 

1. 

**Crie perfis do IAM.**
   +  Crie uma função que tenha as permissões necessárias para implantar os recursos (função Lambda, repositório de vazamento do Amazon S3, função do IAM e AWS Glue a conexão) necessários para criar uma conexão com a fonte de dados externa. 
   + Crie uma função que tenha as permissões mínimas necessárias para acessar as propriedades da AWS Glue conexão (a função Lambda e o bucket de vazamento do Amazon S3). Esse é o perfil que você incluirá ao registrar a conexão no Lake Formation.

     Para usar o Lake Formation para gerenciar e proteger os dados em seu data lake, você deve registrar a AWS Glue conexão com o Lake Formation. Com isso, o Lake Formation pode fornecer credenciais ao Amazon Athena para consultar as fontes de dados federadas. 

     O perfil deve ter as permissões `Select` ou `Describe` no bucket do Amazon S3 e na função do Lambda.
     +  s3: ListBucket 
     + s3: GetObject
     +  lambda: InvokeFunction 

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

****  

     ```
     {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
         {
           "Effect": "Allow",
           "Action": [
             "s3:*"
           ],
           "Resource": [
             "arn:aws:s3:::amzn-s3-demo-bucket1/object/*",
             "arn:aws:s3:::amzn-s3-demo-bucket1/object"
           ]
         },
         {
           "Sid": "lambdainvoke",
           "Effect": "Allow",
           "Action": "lambda:InvokeFunction",
           "Resource": "arn:aws:lambda:us-east-1:123456789012:function:example-lambda-function"
         },
         {
           "Sid": "gluepolicy",
           "Effect": "Allow",
           "Action": "glue:*",
           "Resource": "*"
         }
       ]
     }
     ```

------
   + Adicione a política de confiança a seguir ao perfil do IAM que é usado para registrar a conexão:

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

****  

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

------
   + O administrador do data lake que registra a conexão deve ter a permissão `iam:PassRole` no perfil.

     A seguir está uma política embutida que concede essa permissão. *<account-id>*Substitua por um número de AWS conta válido e *<role-name>* substitua pelo nome da função.

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

****  

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

------
   +  Para criar catálogos federados no Data Catalog, verifique se o perfil do IAM que você está usando é administrador de data lake do Lake Formation, conferindo as configurações do data lake (`aws lakeformation get-data-lake-settings`).

      Se você não for administrador de data lake, precisará da permissão `CREATE_CATALOG` do Lake Formation para criar um catálogo. O exemplo a seguir mostra como conceder as permissões necessárias para criar catálogos. 

     ```
     aws lakeformation grant-permissions \
     --cli-input-json \
             '{
                 "Principal": {
                  "DataLakePrincipalIdentifier":"arn:aws:iam::123456789012:role/non-admin"
                 },
                 "Resource": {
                     "Catalog": {
                     }
                 },
                 "Permissions": [
                     "CREATE_CATALOG",
                     "DESCRIBE"
                 ]
             }'
     ```

1. Adicione a seguinte política de chaves à AWS KMS chave se você estiver usando uma chave gerenciada pelo cliente para criptografar os dados na fonte de dados. Substitua o número da conta por um número de AWS conta válido e especifique o nome da função. Por padrão, os dados são criptografados usando uma chave do KMS. O Lake Formation oferece uma opção para criar sua chave do KMS personalizada para criptografia. Se você estiver usando uma chave gerenciada pelo cliente, deverá adicionar políticas de chave específicas à chave. 

   Para obter mais informações sobre como gerenciar as permissões de uma chave gerenciada pelo cliente, consulte [Chaves gerenciadas pelo cliente](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk).

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "kms:Encrypt",
                   "kms:Decrypt",
                   "kms:ReEncrypt*",
                   "kms:GenerateDataKey*",
                   "kms:DescribeKey"
               ],
               "Resource": "arn:aws:kms:us-east-1:123456789012:key/key-1"
           }
       ]
   }
   ```

------