

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.

# Octroi d'autorisations à l'aide du contrôle d'accès basé sur les attributs
<a name="abac-granting-permissions"></a>

Cette rubrique décrit les étapes à suivre pour accorder des autorisations d'accès basées sur les attributs aux ressources du catalogue de données. Vous pouvez utiliser la console Lake Formation ou l'interface de ligne de AWS commande (AWS CLI). 

## Octroi d'autorisations à l'aide d'ABAC ()AWS Management Console
<a name="w2aac15b9c31c19b5b1"></a>

1. Ouvrez la console Lake Formation à l'[https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/)adresse et connectez-vous en tant qu'administrateur du lac de données, créateur de ressources ou utilisateur IAM disposant d'**autorisations accordables sur** la ressource.

1. Effectuez l’une des actions suivantes :
   + Dans le volet de navigation, sous **Autorisations**, sélectionnez **Autorisations du lac de données**. Ensuite, choisissez **Accorder**.
   + Dans le volet de navigation, sélectionnez **Catalogues** sous **Catalogue de données**. Choisissez ensuite un objet de catalogue (catalogues, bases de données, tables et filtres de données), puis dans le menu **Actions**, sous **Autorisations**, sélectionnez **Accorder**.

1. Sur la page **Accorder des autorisations**, sélectionnez **Principaux par attribut**.

1. Spécifiez la clé et les valeurs de l'attribut. Si vous choisissez plusieurs valeurs, vous créez une expression attributaire à l'aide d'un `OR` opérateur. Cela signifie que si l'une des valeurs de balise d'attribut attribuées à un rôle ou à un utilisateur IAM correspond, il role/user obtient des autorisations d'accès à la ressource.

   Si vous spécifiez plusieurs balises d'attribut, vous créez une expression d'attribut à l'aide d'un `AND` opérateur. Le principal n'obtient des autorisations sur une ressource de catalogue de données que si une balise correspondante role/user a été attribuée à l'IAM pour chaque balise d'attribut de l'expression d'attribut.

   Passez en revue l'expression de politique Cedar résultante affichée dans la console.  
![Dans la boîte de dialogue Accorder des autorisations, une expression d'attribut est créée.](http://docs.aws.amazon.com/fr_fr/lake-formation/latest/dg/images/abac-grant-permissions.png)

1. Choisissez l'étendue des autorisations. Si les bénéficiaires appartiennent à un compte externe, choisissez **Compte externe** et entrez l'identifiant du AWS compte.

1. Choisissez ensuite le compte Data Catalog ou des comptes externes. Vous devez disposer des autorisations pouvant être accordées correspondantes sur les ressources pour terminer avec succès les autorisations accordées.

1. Spécifiez les actions que vous souhaitez autoriser les principaux (utilisateurs ou rôles) dotés d'attributs correspondants à effectuer. L'accès est accordé aux entités IAM auxquelles ont été attribuées des balises et des valeurs correspondant à au moins une des expressions d'attributs que vous avez spécifiées. Vérifiez l'expression de politique Cedar dans la console. Pour plus d'informations sur le cèdre, voir [Qu'est-ce que le cèdre ? \| Référence linguistique des politiques de Cedar GuideLink](https://docs.cedarpolicy.com/).

1. Choisissez ensuite les ressources du catalogue de données auxquelles vous souhaitez accorder l'accès. Vous pouvez définir ces autorisations pour différentes ressources du catalogue de données, notamment les catalogues, les bases de données, les tables et les filtres de données.

1. Choisissez **Accorder**.

   Cette approche vous permet de contrôler l'accès en fonction des attributs, en veillant à ce que seuls les utilisateurs ou les rôles dotés des balises appropriées puissent effectuer des actions spécifiques sur les ressources désignées.

## Octroi d'autorisations à l'aide d'ABAC ()AWS CLI
<a name="abac-granting-permissions-cli"></a>

 L'exemple suivant montre une expression d'attribut qui doit être respectée pour recevoir toutes les autorisations disponibles sur la ressource. Vous pouvez également spécifier des autorisations individuelles telles que `Select``Describe`, ou`Drop`. L'expression utilise l'expression de politique Cedar. Pour plus d'informations sur le cèdre, voir [Qu'est-ce que le cèdre ? \| Référence linguistique des politiques de Cedar GuideLink](https://docs.cedarpolicy.com/). 

 Cette condition vérifie si le principal IAM possède une `department` balise et si la valeur de la `department` balise est égale à`sales`. 

```
aws lakeformation grant-permissions 
--principal '{"DataLakePrincipalIdentifier": "{{111122223333}}:IAMPrincipals"}' \
--resource '{"Database": {"CatalogId": {{111122223333}}, "Name": "{{abac-db}}"}}' \
--permissions {{ALL}} \
--condition '{"Expression": "context.iam.principalTags.hasTag(\"{{department}}\") \
   && context.iam.principalTags.getTag(\"{{department}}\") == \"{{sales}}\""}'
```