

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.

# Mise à niveau AWS Glue des autorisations de données vers le AWS Lake Formation modèle
<a name="upgrade-glue-lake-formation"></a>

AWS Lake Formation les autorisations permettent un contrôle d'accès précis pour les données de votre lac de données. Vous pouvez utiliser le modèle d'autorisations de Lake Formation pour gérer vos AWS Glue Data Catalog objets et emplacements de données existants dans Amazon Simple Storage Service (Amazon S3).

Le modèle d'autorisations de Lake Formation utilise des autorisations grossières Gestion des identités et des accès AWS (IAM) pour l'accès aux services d'API. Lake Formation utilise des [Filtrage des données et sécurité au niveau des cellules dans Lake Formation](data-filtering.md) fonctionnalités pour restreindre l'accès aux tables au niveau des colonnes, des lignes et des cellules pour les utilisateurs et leurs applications. En comparaison, le AWS Glue modèle accorde l'accès aux données via des [politiques IAM basées sur l'identité et basées sur les ressources](https://docs.aws.amazon.com/glue/latest/dg/security_iam_service-with-iam.html#security_iam_service-with-iam-id-based-policies). 

Pour effectuer le changement, suivez les étapes décrites dans ce guide.

Pour de plus amples informations, veuillez consulter [Vue d'ensemble des autorisations relatives à Lake Formation](lf-permissions-overview.md).

## À propos des autorisations par défaut
<a name="upgrade-glue-lake-formation-background"></a>

Pour maintenir la rétrocompatibilité avecAWS Glue, AWS Lake Formation accorde par défaut l'`Super`autorisation au `IAMAllowedPrincipals` groupe sur toutes les ressources du catalogue de AWS Glue données existantes, et accorde l'`Super`autorisation sur les nouvelles ressources du catalogue de données si les paramètres de **contrôle d'accès Utiliser uniquement IAM** sont activés. Ainsi, l'accès aux ressources du catalogue de données et aux emplacements Amazon S3 est contrôlé uniquement par des politiques Gestion des identités et des accès AWS (IAM). Le `IAMAllowedPrincipals` groupe inclut tous les utilisateurs et rôles IAM autorisés à accéder aux objets de votre catalogue de données par vos politiques IAM. L'`Super`autorisation permet au principal d'effectuer toutes les opérations de Lake Formation prises en charge sur la base de données ou la table pour laquelle elle est accordée.

Vous pouvez commencer à utiliser Lake Formation pour gérer l'accès à vos données en enregistrant les emplacements des ressources du catalogue de données existantes dans Lake Formation ou en utilisant le mode d'accès hybride. Lorsque vous enregistrez l'emplacement Amazon S3 en mode d'accès hybride, vous pouvez activer les autorisations de Lake Formation en optant pour les principes pour les bases de données et les tables situées sous cet emplacement.

Pour faciliter la transition des autorisations de lac de données d'un modèle IAM et Amazon S3 vers les autorisations de Lake Formation, nous vous recommandons d'utiliser le mode d'accès hybride pour Data Catalog. Avec le mode d'accès hybride, vous disposez d'un chemin incrémentiel qui vous permet d'activer les autorisations de Lake Formation pour un ensemble spécifique d'utilisateurs sans interrompre les autres utilisateurs ou charges de travail existants.

Pour de plus amples informations, veuillez consulter [Mode d'accès hybride](hybrid-access-mode.md).

Désactivez les paramètres par défaut du catalogue de données pour déplacer tous les utilisateurs existants d'une table vers Lake Formation en une seule étape.

Pour commencer à utiliser les autorisations de Lake Formation avec vos bases de AWS Glue données et tables de catalogue de données existantes, vous devez effectuer les opérations suivantes :

1. Déterminez les autorisations IAM existantes de vos utilisateurs pour chaque base de données et chaque table.

1. Répliquez ces autorisations dans Lake Formation.

1. Pour chaque site Amazon S3 contenant des données :

   1. Révoquez l'`Super`autorisation accordée au `IAMAllowedPrincipals` groupe sur chaque ressource du catalogue de données qui fait référence à cet emplacement.

   1. Enregistrez l'emplacement auprès de Lake Formation.

1. Nettoyez les politiques précises de contrôle d'accès IAM existantes.

**Important**  
Pour ajouter de nouveaux utilisateurs pendant le processus de transition de votre catalogue de données, vous devez configurer des AWS Glue autorisations granulaires dans IAM comme auparavant. Vous devez également reproduire ces autorisations dans Lake Formation, comme décrit dans cette section. Si les nouveaux utilisateurs disposent des politiques IAM grossières décrites dans ce guide, ils peuvent répertorier toutes les bases de données ou tables auxquelles l'autorisation est accordée. `Super` `IAMAllowedPrincipals` Ils peuvent également consulter les métadonnées de ces ressources.

Suivez les étapes décrites dans cette section pour passer au modèle d'autorisations Lake Formation.

**Topics**
+ [À propos des autorisations par défaut](#upgrade-glue-lake-formation-background)
+ [Étape 1 : Répertorier les autorisations existantes des utilisateurs et des rôles](#upgrade-glue-lake-formation-step1)
+ [Étape 2 : configurer des autorisations équivalentes pour Lake Formation](#upgrade-glue-lake-formation-step2)
+ [Étape 3 : Donnez aux utilisateurs l'autorisation IAM d'utiliser Lake Formation](#upgrade-glue-lake-formation-step3)
+ [Étape 4 : Basculez vos magasins de données vers le modèle d'autorisations Lake Formation](#upgrade-glue-lake-formation-step4)
+ [Étape 5 : Sécuriser les nouvelles ressources du catalogue de données](#upgrade-glue-lake-formation-step5)
+ [Étape 6 : Donnez aux utilisateurs une nouvelle politique IAM pour l'accès futur au data lake](#upgrade-glue-lake-formation-step6)
+ [Étape 7 : Nettoyer les politiques IAM existantes](#upgrade-glue-lake-formation-step7)

## Étape 1 : Répertorier les autorisations existantes des utilisateurs et des rôles
<a name="upgrade-glue-lake-formation-step1"></a>

Pour commencer à utiliser AWS Lake Formation les autorisations avec vos AWS Glue bases de données et tables existantes, vous devez d'abord déterminer les autorisations existantes de vos utilisateurs.

**Important**  
Avant de commencer, assurez-vous d'avoir terminé les tâches dans[Débuter avec Lake Formation](getting-started-setup.md).

**Topics**
+ [Utilisation de l'opération API](#upgrade-glue-lake-formation-step1-api)
+ [À l'aide du AWS Management Console](#upgrade-glue-lake-formation-step1-console)
+ [En utilisant AWS CloudTrail](#upgrade-glue-lake-formation-step1-ct)

### Utilisation de l'opération API
<a name="upgrade-glue-lake-formation-step1-api"></a>

Utilisez l'opération d'[ListPoliciesGrantingServiceAccess](https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListPoliciesGrantingServiceAccess.html)API Gestion des identités et des accès AWS (IAM) pour déterminer les politiques IAM associées à chaque principal (utilisateur ou rôle). À partir des politiques renvoyées dans les résultats, vous pouvez déterminer les autorisations IAM accordées au principal. Vous devez appeler l'API pour chaque principal séparément.

**Example**  
L' AWS CLI exemple suivant renvoie les politiques associées à l'utilisateur`glue_user1`.  

```
aws iam list-policies-granting-service-access --arn arn:aws:iam::111122223333:user/glue_user1 --service-namespaces glue
```
La commande renvoie des résultats similaires aux suivants.  

```
{
    "PoliciesGrantingServiceAccess": [
        {
            "ServiceNamespace": "glue",
            "Policies": [
                {
                    "PolicyType": "INLINE",
                    "PolicyName": "GlueUserBasic",
                    "EntityName": "glue_user1",
                    "EntityType": "USER"
                },
                {
                    "PolicyType": "MANAGED",
                    "PolicyArn": "arn:aws:iam::aws:policy/AmazonAthenaFullAccess",
                    "PolicyName": "AmazonAthenaFullAccess"
                }
            ]
        }
    ],
    "IsTruncated": false
}
```

### À l'aide du AWS Management Console
<a name="upgrade-glue-lake-formation-step1-console"></a>

Vous pouvez également consulter ces informations sur la console Gestion des identités et des accès AWS (IAM), dans l'onglet **Access Advisor** de la page **Résumé de l'utilisateur ou du rôle :**

1. Ouvrez la console IAM à l’adresse [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Dans le panneau de navigation, sélectionnez **Users** (Utilisateurs) ou **Roles** (Rôles).

1. Choisissez un nom dans la liste pour ouvrir sa page de **résumé**, puis cliquez sur l'onglet **Access Advisor**.

1.  Examinez chacune des politiques afin de déterminer la combinaison de bases de données, de tables et d'actions pour laquelle chaque utilisateur est autorisé.

   N'oubliez pas d'inspecter les rôles en plus des utilisateurs au cours de ce processus, car vos tâches de traitement des données peuvent assumer des rôles pour accéder aux données.

### En utilisant AWS CloudTrail
<a name="upgrade-glue-lake-formation-step1-ct"></a>

Une autre façon de déterminer vos autorisations existantes consiste à rechercher les appels d'AWS GlueAPI AWS CloudTrail pour lesquels le `additionaleventdata` champ des journaux contient une `insufficientLakeFormationPermissions` entrée. Cette entrée répertorie la base de données et la table pour lesquelles l'utilisateur doit disposer des autorisations de Lake Formation pour effectuer la même action. 

Il s'agit de journaux d'accès aux données, il n'est donc pas garanti qu'ils produisent une liste complète des utilisateurs et de leurs autorisations. Nous vous recommandons de choisir une plage de temps étendue pour capturer la plupart des modèles d'accès aux données de vos utilisateurs, par exemple plusieurs semaines ou mois.

Pour plus d'informations, consultez la section [Affichage des événements avec l'historique des CloudTrail événements](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html) dans le *guide de AWS CloudTrail l'utilisateur*.

Ensuite, vous pouvez configurer les autorisations de Lake Formation pour qu'elles correspondent aux AWS Glue autorisations. Consultez [Étape 2 : configurer des autorisations équivalentes pour Lake Formation](#upgrade-glue-lake-formation-step2).

## Étape 2 : configurer des autorisations équivalentes pour Lake Formation
<a name="upgrade-glue-lake-formation-step2"></a>

À l'aide des informations collectées dans[Étape 1 : Répertorier les autorisations existantes des utilisateurs et des rôles](#upgrade-glue-lake-formation-step1), accordez AWS Lake Formation des autorisations correspondant aux AWS Glue autorisations. Utilisez l'une des méthodes suivantes pour effectuer les subventions :
+ Utilisez la console Lake Formation ou le AWS CLI.

  Consultez [Octroi d'autorisations sur les ressources du catalogue de données](granting-catalog-permissions.md).
+ Utilisez les opérations de `BatchGrantPermissions` l'API `GrantPermissions` or.

  Consultez [Autorisations APIsMode d'accès hybride APIs](aws-lake-formation-api-aws-lake-formation-api-permissions.md).

Pour de plus amples informations, veuillez consulter [Vue d'ensemble des autorisations relatives à Lake Formation](lf-permissions-overview.md).

Après avoir configuré les autorisations de Lake Formation, passez à[Étape 3 : Donnez aux utilisateurs l'autorisation IAM d'utiliser Lake Formation](#upgrade-glue-lake-formation-step3).

## Étape 3 : Donnez aux utilisateurs l'autorisation IAM d'utiliser Lake Formation
<a name="upgrade-glue-lake-formation-step3"></a>

Pour utiliser le modèle AWS Lake Formation d'autorisations, les directeurs doivent disposer d'autorisations Gestion des identités et des accès AWS (IAM) sur la Lake Formation. APIs

Créez la politique suivante dans IAM et associez-la à chaque utilisateur ayant besoin d'accéder à votre lac de données. Nommez la stratégie `LakeFormationDataAccess`.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "LakeFormationDataAccess",
            "Effect": "Allow",
            "Action": [
                "lakeformation:GetDataAccess"
            ],
            "Resource": "*"
        }
    ]
}
```

------

Passez ensuite aux autorisations de Lake Formation, un emplacement de données à la fois. Consultez [Étape 4 : Basculez vos magasins de données vers le modèle d'autorisations Lake Formation](#upgrade-glue-lake-formation-step4).

## Étape 4 : Basculez vos magasins de données vers le modèle d'autorisations Lake Formation
<a name="upgrade-glue-lake-formation-step4"></a>

Passez aux autorisations de Lake Formation, un emplacement de données à la fois. Pour ce faire, répétez l'intégralité de cette section jusqu'à ce que vous ayez enregistré tous les chemins Amazon Simple Storage Service (Amazon S3) référencés par votre catalogue de données.

**Topics**
+ [Vérifiez les autorisations de Lake Formation](#identify-catalog-resources)
+ [Sécuriser les ressources du catalogue de données existantes](#upgrade-secure-resources)
+ [Activez les autorisations de Lake Formation pour votre site Amazon S3](#upgrade-glue-lake-formation-turn-on-permissions)

### Vérifiez les autorisations de Lake Formation
<a name="identify-catalog-resources"></a>

Avant d'enregistrer un emplacement, effectuez une étape de vérification pour vous assurer que les bons directeurs disposent des autorisations requises pour la formation de Lake et qu'aucune autorisation de Lake Formation n'est accordée aux directeurs qui ne devraient pas en avoir. À l'aide de l'opération d'`GetEffectivePermissionsForPath`API Lake Formation, identifiez les ressources du catalogue de données qui font référence à l'emplacement Amazon S3, ainsi que les principaux détenteurs d'autorisations sur ces ressources.

L' AWS CLI exemple suivant renvoie les bases de données et les tables du catalogue de données qui font référence au compartiment Amazon S3`products`.

```
aws lakeformation get-effective-permissions-for-path --resource-arn arn:aws:s3:::products --profile datalake_admin
```

Notez l'`profile`option. Nous vous recommandons d'exécuter la commande en tant qu'administrateur du lac de données.

Ce qui suit est un extrait des résultats renvoyés.

```
{
        "PermissionsWithGrantOption": [
            "SELECT"
        ],
        "Resource": {
            "TableWithColumns": {
                "Name": "inventory_product",
                "ColumnWildcard": {},
                "DatabaseName": "inventory"
            }
        },
        "Permissions": [
            "SELECT"
        ],
        "Principal": {
            "DataLakePrincipalIdentifier": "arn:aws:iam::111122223333:user/datalake_user1",
            "DataLakePrincipalType": "IAM_USER"
        }
 },...
```

**Important**  
Si votre catalogue de AWS Glue données est chiffré, il ne `GetEffectivePermissionsForPath` renvoie que les bases de données et les tables créées ou modifiées après la mise à disposition générale de Lake Formation.

### Sécuriser les ressources du catalogue de données existantes
<a name="upgrade-secure-resources"></a>

Révoquez ensuite l'`Super`autorisation pour chaque table et `IAMAllowedPrincipals` base de données que vous avez identifiées pour l'emplacement. 

**Avertissement**  
Si vous avez mis en place une automatisation qui crée des bases de données et des tables dans le catalogue de données, les étapes suivantes peuvent entraîner l'échec des tâches d'automatisation et d'extraction, de transformation et de chargement (ETL) en aval. Procédez uniquement après avoir modifié vos processus existants ou accordé des autorisations explicites de Lake Formation aux principaux responsables requis. Pour plus d'informations sur les autorisations de Lake Formation, consultez[Référence des autorisations de Lake Formation](lf-permissions-reference.md).

**Pour révoquer `Super` depuis `IAMAllowedPrincipals` une table**

1. Ouvrez la AWS Lake Formation console à l'adresse [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/). Connectez-vous en tant qu'administrateur du lac de données.

1. Dans le volet de navigation, choisissez **Tables**.

1. Sur la page **Tables**, sélectionnez le bouton radio à côté du tableau souhaité.

1. Dans le menu **Actions**, choisissez **Révoquer**.

1. **Dans la boîte de dialogue **Révoquer les autorisations**, dans la liste des **utilisateurs et des rôles IAM**, faites défiler la page jusqu'à l'en-tête **Groupe**, puis sélectionnez IAMAllowed Principaux.**

1. Sous **Autorisations relatives aux tables**, assurez-vous que **Super** est sélectionné, puis choisissez **Révoquer**.

**Pour révoquer l'accès `Super` à une `IAMAllowedPrincipals` base de données**

1. Ouvrez la AWS Lake Formation console à l'adresse [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/). Connectez-vous en tant qu'administrateur du lac de données.

1. Dans le panneau de navigation, choisissez **Databases (Bases de données)**.

1. Sur la page **Bases** de données, sélectionnez le bouton radio à côté de la base de données souhaitée.

1. Dans le menu **Actions**, choisissez **Modifier**.

1. Sur la page **Modifier la base de données**, désactivez **l'option Utiliser uniquement le contrôle d'accès IAM pour les nouvelles tables de cette base de données**, puis sélectionnez **Enregistrer**.

1. De retour sur la page **Bases** de données, assurez-vous que la base de données est toujours sélectionnée, puis dans le menu **Actions**, choisissez **Révoquer**.

1. **Dans la boîte de dialogue **Révoquer les autorisations**, dans la liste des **utilisateurs et des rôles IAM**, faites défiler la page jusqu'à l'en-tête **Groupe**, puis sélectionnez IAMAllowed Principaux.**

1. Sous **Autorisations de base** de données, assurez-vous que **Super** est sélectionné, puis choisissez **Révoke**.

### Activez les autorisations de Lake Formation pour votre site Amazon S3
<a name="upgrade-glue-lake-formation-turn-on-permissions"></a>

Enregistrez ensuite l'emplacement Amazon S3 auprès de Lake Formation. Pour ce faire, vous pouvez utiliser le processus décrit dans[Ajouter un emplacement Amazon S3 à votre lac de données](register-data-lake.md). Vous pouvez également utiliser l'opération d'`RegisterResource`API décrite dans[Vente d'informations d'identification APIs](aws-lake-formation-api-credential-vending.md).

**Note**  
Si un établissement parent est enregistré, il n'est pas nécessaire d'enregistrer un établissement pour enfants.

Après avoir terminé ces étapes et vérifié que vos utilisateurs peuvent accéder à leurs données, vous avez passé avec succès aux autorisations Lake Formation. Passez à l'étape suivante,[Étape 5 : Sécuriser les nouvelles ressources du catalogue de données](#upgrade-glue-lake-formation-step5).

## Étape 5 : Sécuriser les nouvelles ressources du catalogue de données
<a name="upgrade-glue-lake-formation-step5"></a>

Sécurisez ensuite toutes les nouvelles ressources du catalogue de données en modifiant les paramètres par défaut du catalogue de données. Désactivez les options permettant d'utiliser uniquement le contrôle d'accès Gestion des identités et des accès AWS (IAM) pour les nouvelles bases de données et tables.

**Avertissement**  
Si vous avez mis en place une automatisation qui crée des bases de données et des tables dans le catalogue de données, les étapes suivantes peuvent entraîner l'échec des tâches d'automatisation et d'extraction, de transformation et de chargement (ETL) en aval. Procédez uniquement après avoir modifié vos processus existants ou accordé des autorisations explicites de Lake Formation aux principaux responsables requis. Pour plus d'informations sur les autorisations de Lake Formation, consultez[Référence des autorisations de Lake Formation](lf-permissions-reference.md).

**Pour modifier les paramètres par défaut du catalogue de données**

1. Ouvrez la AWS Lake Formation console à l'adresse [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/). Connectez-vous en tant qu'utilisateur administratif IAM (l'utilisateur `Administrator` ou un autre utilisateur doté de la politique `AdministratorAccess` AWS gérée).

1. Dans le panneau de navigation, sélectionnez **Settings** (Paramètres).

1. Sur la page des **paramètres du catalogue de données**, décochez les deux cases, puis choisissez **Enregistrer**.

L'étape suivante consiste à accorder aux utilisateurs l'accès à des bases de données ou à des tables supplémentaires à l'avenir. Consultez [Étape 6 : Donnez aux utilisateurs une nouvelle politique IAM pour l'accès futur au data lake](#upgrade-glue-lake-formation-step6).

## Étape 6 : Donnez aux utilisateurs une nouvelle politique IAM pour l'accès futur au data lake
<a name="upgrade-glue-lake-formation-step6"></a>

Pour accorder à vos utilisateurs l'accès à des bases de données ou à des tables supplémentaires du catalogue de données à l'avenir, vous devez leur donner la politique générale Gestion des identités et des accès AWS (IAM) intégrée ci-dessous. Nommez la stratégie `GlueFullReadAccess`.

**Important**  
Si vous associez cette politique à un utilisateur avant de révoquer l'accès à chaque `IAMAllowedPrincipals` base `Super` de données et table de votre catalogue de données, cet utilisateur peut consulter toutes les métadonnées de toutes les ressources pour lesquelles `Super` il est accordé à`IAMAllowedPrincipals`.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "GlueFullReadAccess",
            "Effect": "Allow",
            "Action": [
                "lakeformation:GetDataAccess",
                "glue:GetTable",
                "glue:GetTables",
                "glue:SearchTables",
                "glue:GetDatabase",
                "glue:GetDatabases",
                "glue:GetPartitions"
            ],
            "Resource": "*"
        }
    ]
}
```

------

**Note**  
Les politiques intégrées définies dans cette étape et dans les étapes précédentes contiennent des autorisations IAM minimales. Pour les politiques suggérées aux administrateurs de lacs de données, aux analystes de données et à d'autres personnes, consultez[Référence des personnalités de Lake Formation et des autorisations IAM](permissions-reference.md).

Ensuite, passez à[Étape 7 : Nettoyer les politiques IAM existantes](#upgrade-glue-lake-formation-step7).

## Étape 7 : Nettoyer les politiques IAM existantes
<a name="upgrade-glue-lake-formation-step7"></a>

Après avoir configuré les AWS Lake Formation autorisations et créé et attaché les politiques de contrôle d'accès Gestion des identités et des accès AWS (IAM) grossières, effectuez la dernière étape suivante :
+ Supprimez des utilisateurs, des groupes et des rôles les anciennes politiques détaillées [de contrôle d'accès](https://docs.aws.amazon.com/glue/latest/dg/using-identity-based-policies.html#glue-identity-based-policy-limitations.html) IAM que vous avez répliquées dans Lake Formation.

Ce faisant, vous vous assurez que ces principaux n'ont plus accès directement aux données d'Amazon Simple Storage Service (Amazon S3). Vous pouvez ensuite gérer l'accès au data lake pour ces principaux acteurs entièrement par le biais de Lake Formation.