

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Modification des contrôles d'accès pour l'intégration des tables S3
<a name="manage-s3tables-catalog-integration"></a>

Après avoir intégré les tables Amazon S3 au AWS Glue Data Catalog, vous pouvez modifier la façon dont l'accès aux ressources de votre catalogue est contrôlé. Cette section explique comment modifier le contrôle d'accès en fonction du modèle de contrôle d'accès actuel et souhaité. L'activation de Lake Formation vous permet d'utiliser des autorisations détaillées telles que la sécurité au niveau des colonnes et au niveau des lignes grâce aux subventions de Lake Formation, et permet à Lake Formation de vendre des informations d'identification temporaires au nom des principaux via un rôle enregistré. Le passage du contrôle d'accès AWS Lake Formation à IAM ramène le contrôle d'accès aux politiques IAM standard, ce qui peut être approprié si vos charges de travail ne nécessitent pas un accès précis et si vous préférez gérer les autorisations entièrement via IAM. Les deux voies de migration impliquent la mise à jour des valeurs par défaut du catalogue de données, l'ajustement des enregistrements des ressources auprès de Lake Formation et la coordination des autorisations accordées pour éviter les interruptions d'accès pendant la transition.

**Topics**
+ [Activez Lake Formation grâce à l'intégration des tables S3 au catalogue de données](change-access-iam-to-lf.md)
+ [Passer du contrôle d'accès AWS Lake Formation à IAM](change-access-lf-to-iam.md)

# Activez Lake Formation grâce à l'intégration des tables S3 au catalogue de données
<a name="change-access-iam-to-lf"></a>

Cette section décrit le flux de travail permettant de migrer le contrôle d'accès des privilèges IAM vers IAM avec AWS Lake Formation des autorisations pour les tables Amazon S3 intégrées au. AWS Glue Data Catalog

**Important**  
 AWS Lake Formation L'activation du contrôle d'accès révoquera tous les accès existants basés sur IAM à vos ressources S3 Tables. Une fois l'étape 1 terminée, les utilisateurs et les rôles qui avaient précédemment accédé aux données via des autorisations IAM en perdront immédiatement l'accès. Vous devez accorder les autorisations de Lake Formation à l'étape 2 avant que les utilisateurs puissent à nouveau interroger des données. Planifiez cette migration pendant une période de maintenance et coordonnez-la avec votre équipe chargée des données.

## Conditions préalables
<a name="w2aac13c29b7b7"></a>

Pour read/write accéder aux tables S3, en plus des autorisations Lake Formation, les directeurs doivent également disposer de l'autorisation `lakeformation:GetDataAccess` IAM. Avec cette autorisation, Lake Formation accède à la demande d'informations d'identification temporaires pour accéder aux données.

## En utilisant AWS CLI
<a name="w2aac13c29b7b9"></a>

1. **Étape 1 : enregistrer un bucket auprès de Lake Formation à l'aide du rôle IAM**

   Enregistrez la ressource S3 Tables auprès de Lake Formation.
**Note**  
Si vous avez déjà un rôle, assurez-vous que l'accès hybride est faux.

   ```
   aws lakeformation register-resource \
     --resource-arn "arn:aws:s3tables:us-east-1:AWSAccountID:bucket/*" \
     --role-arn "arn:aws:iam::AWSAccountID:role/service-role/LFAccessRole" \
     --with-federation
   ```

1. **Étape 2 : Mettre à jour le AWS Glue catalogue pour activer le contrôle d'accès à Lake Formation**

   Mettez à jour le catalogue avec un `CreateDatabaseDefaultPermissions` champ vide et `CreateTableDefaultPermissions` (défini sur`[]`) et défini `OverwriteChildResourcePermissionsWithDefault` sur`Accept`. Cela supprime l'accès basé sur l'IAM à toutes les ressources enfants existantes et permet de gérer le catalogue et ses objets à l'aide des subventions de Lake Formation.

   ```
   aws glue update-catalog \
     --catalog-id "s3tablescatalog" \
     --catalog-input '{
       "FederatedCatalog": {
           "Identifier": "arn:aws:s3tables:us-east-1:AWSAccountID:bucket/*",
           "ConnectionName": "aws:s3tables"
       },
       "CreateDatabaseDefaultPermissions": [],
       "CreateTableDefaultPermissions": [],
       "OverwriteChildResourcePermissionsWithDefault": "Accept",
       "AllowFullTableExternalDataAccess": "True"
     }'
   ```

1. **Étape 3 : Accordez les autorisations de Lake Formation à votre équipe chargée des données**

   Accordez des autorisations de Lake Formation aux principaux (rôles, utilisateurs ou groupes) qui ont besoin d'un accès. Par exemple, pour accorder à un rôle un accès en lecture complète au tableau :

   ```
   aws lakeformation grant-permissions \
     --principal DataLakePrincipalIdentifier=arn:aws:iam::AWSAccountID:role/DataTeamRole \
     --resource '{
       "Table": {
           "CatalogId": "AWSAccountID",
           "DatabaseName": "s3tablescatalog/table-bucket-name/namespace",
           "TableWildcard": {}
       }
     }' \
     --permissions "SELECT" "DESCRIBE"
   ```

   Répétez l'opération pour chaque combinaison principale et ressource selon les besoins.

# Passer du contrôle d'accès AWS Lake Formation à IAM
<a name="change-access-lf-to-iam"></a>

Cette section décrit le flux de travail permettant de passer du contrôle d'accès AWS Lake Formation des autorisations aux privilèges IAM pour les tables Amazon S3 intégrées au AWS Glue Data Catalog.

**Important**  
La modification du contrôle d'accès AWS Lake Formation des autorisations à IAM révoquera tous les accès existants basés sur Lake Formation à vos ressources S3 Tables. Une fois l'étape 2 terminée, les utilisateurs et les rôles qui accédaient auparavant aux données par le biais des subventions de Lake Formation perdront immédiatement leur accès. Vous devez accorder l'accès IAM à l'étape 1 avant de mettre à jour le catalogue. Planifiez cette migration pendant une période de maintenance et coordonnez-la avec votre équipe chargée des données.

**Important**  
Les contrôles d'accès précis, tels que l'accès au niveau des colonnes et les filtres de cellules de données, avec les objets du catalogue de données sont disponibles uniquement en cas d'utilisation. AWS Lake Formation Avant de procéder à la migration des contrôles d'accès AWS Lake Formation vers IAM, vérifiez vos autorisations Lake Formation existantes à l'aide de politiques IAM équivalentes `aws lakeformation list-permissions` et déterminez si des politiques IAM équivalentes peuvent fournir l'accès dont vos utilisateurs ont besoin. Tout directeur qui s'est appuyé sur des subventions détaillées de Lake Formation aura besoin d'un accès IAM complet au niveau de la table après la migration du contrôle d'accès.

## Conditions préalables
<a name="w2aac13c29b9b9"></a>

Avant de commencer, assurez-vous de ce qui suit :
+ Vous avez identifié toutes les subventions de Lake Formation actuellement en vigueur pour les ressources en cours de migration. Courez `aws lakeformation list-permissions --resource-type TABLE` pour les examiner.
+ Vous avez préparé des politiques IAM qui fournissent un accès équivalent à tous les principaux concernés.
+ Le rôle IAM enregistré auprès de Lake Formation existe toujours `lakeformation:GetDataAccess` (nécessaire pendant la période de transition hybride).

## En utilisant AWS CLI
<a name="w2aac13c29b9c11"></a>

1. **Étape 1 : octroyer des autorisations IAM aux principaux**

   Associez des politiques IAM aux utilisateurs ou aux rôles qui ont besoin d'un accès. La politique doit inclure à la fois les autorisations AWS Glue relatives aux métadonnées et les autorisations relatives aux données des tables S3.
**Note**  
L'exemple de politique suivant fournit uniquement un accès en lecture.

   ```
   aws iam put-user-policy \
     --user-name GlueIAMAccessUser \
     --policy-name S3TablesIAMAccessPolicy \
     --policy-document '{
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "GlueMetadataAccess",
               "Effect": "Allow",
               "Action": [
                   "glue:GetCatalog",
                   "glue:GetDatabase",
                   "glue:GetTable"
               ],
               "Resource": [
                   "arn:aws:glue:us-east-1:AWSAccountID:catalog/s3tablescatalog",
                   "arn:aws:glue:us-east-1:AWSAccountID:database/s3tablescatalog/table-bucket-name/namespace",
                   "arn:aws:glue:us-east-1:AWSAccountID:table/s3tablescatalog/table-bucket-name/namespace/*"
               ]
           },
           {
               "Sid": "S3TablesDataAccess",
               "Effect": "Allow",
               "Action": [
                   "s3tables:GetTableBucket",
                   "s3tables:GetTable",
                   "s3tables:GetTableMetadataLocation",
                   "s3tables:GetTableData"
               ],
               "Resource": [
                   "arn:aws:s3tables:us-east-1:AWSAccountID:bucket/table-bucket-name",
                   "arn:aws:s3tables:us-east-1:AWSAccountID:bucket/table-bucket-name/table/*"
               ]
           }
       ]
     }'
   ```

   Vérifiez que tous les utilisateurs et rôles concernés peuvent accéder aux tables attendues à l'aide de leurs informations d'identification IAM avant de continuer.

1. **Étape 2 : mettre à jour le catalogue pour restaurer les autorisations par défaut d'IAM**

   Mettez à jour le catalogue en conséquence `CreateDatabaseDefaultPermissions` et `CreateTableDefaultPermissions` `ALL` accordez-le à`IAM_ALLOWED_PRINCIPALS`. Définissez cette `OverwriteChildResourcePermissionsWithDefault` option pour `Accept` que la modification se propage à toutes les ressources enfants existantes, et pas seulement à celles qui viennent d'être créées.

   ```
   aws glue update-catalog \
     --catalog-id "s3tablescatalog" \
     --catalog-input '{
       "FederatedCatalog": {
           "Identifier": "arn:aws:s3tables:us-east-1:AWSAccountID:bucket/*",
           "ConnectionName": "aws:s3tables"
       },
       "CreateDatabaseDefaultPermissions": [{
           "Principal": {"DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS"},
           "Permissions": ["ALL"]
       }],
       "CreateTableDefaultPermissions": [{
           "Principal": {"DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS"},
           "Permissions": ["ALL"]
       }],
       "OverwriteChildResourcePermissionsWithDefault": "Accept"
     }'
   ```

1. **Étape 3 : Désenregistrer la ressource de Lake Formation**

   Une fois que vous avez confirmé que tous les accès fonctionnent conformément aux politiques IAM et qu'aucun principe ne dépend des subventions de Lake Formation, vous pouvez annuler l'enregistrement de la ressource auprès de Lake Formation pour terminer la migration.

   ```
   aws lakeformation deregister-resource \
     --resource-arn "arn:aws:s3tables:us-east-1:AWSAccountID:bucket/*"
   ```
**Note**  
Après avoir annulé l'enregistrement de la ressource, supprimez `lakeformation:GetDataAccess` de l'IAM les principaux qui n'en ont plus besoin.

Aucune `revoke-permissions` étape n'est requise.