

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Concessione delle autorizzazioni utilizzando il controllo degli accessi basato sugli attributi
<a name="abac-granting-permissions"></a>

Questo argomento descrive i passaggi da seguire per concedere le autorizzazioni di accesso basate sugli attributi alle risorse del Data Catalog. Puoi usare la console Lake Formation o la AWS Command Line Interface (AWS CLI). 

## Concessione delle autorizzazioni tramite ABAC ()Console di gestione AWS
<a name="w2aac15b9c31c19b5b1"></a>

1. Apri la console Lake Formation all'indirizzo [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/)e accedi come amministratore del data lake, creatore di risorse o utente IAM con **autorizzazioni Grantable** sulla risorsa.

1. Esegui una delle seguenti operazioni:
   + **Nel riquadro di navigazione, in **Autorizzazioni, scegli Autorizzazioni** Data Lake.** Quindi scegli **Concedi**.
   + **Nel riquadro di navigazione, scegli **Cataloghi in Data Catalog.**** **Quindi, scegli un oggetto del catalogo (cataloghi, database, tabelle e filtri di dati) e dal menu **Azioni in **Autorizzazioni****, scegli Concedi.**

1. Nella pagina **Concedi autorizzazioni**, scegli **Principali** per attributo.

1. Specificate la chiave e i valori dell'attributo. Se scegli più di un valore, stai creando un'espressione di attributo con un `OR` operatore. Ciò significa che se uno qualsiasi dei valori dei tag degli attributi assegnati a un ruolo o utente IAM corrisponde, role/user ottiene i permessi di accesso alla risorsa.

   Se specifichi più di un tag di attributo, stai creando un'espressione di attributo con un `AND` operatore. Al principale vengono concesse le autorizzazioni su una risorsa del Data Catalog solo se all'IAM role/user è stato assegnato un tag corrispondente per ogni tag di attributo nell'espressione dell'attributo.

   Esamina l'espressione di policy Cedar risultante mostrata nella console.  
![\[Nella finestra di dialogo Concedi autorizzazioni, viene creata un'espressione di attributo.\]](http://docs.aws.amazon.com/it_it/lake-formation/latest/dg/images/abac-grant-permissions.png)

1. Scegliete l'ambito delle autorizzazioni. Se i beneficiari appartengono a un account esterno, scegli **Account esterno** e inserisci l'ID dell' AWS account.

1. Quindi, scegli l'account Data Catalog o gli account esterni. È necessario disporre delle autorizzazioni corrispondenti sulle risorse per completare correttamente le concessioni di autorizzazione.

1. Specificate le azioni che desiderate consentire ai principali (utenti o ruoli) con attributi corrispondenti. L'accesso è concesso alle entità IAM a cui sono stati assegnati tag e valori che corrispondono ad almeno una delle espressioni di attributo specificate. Esamina l'espressione della policy Cedar nella console. Per ulteriori informazioni su Cedar, vedi [Cos'è Cedar? \$1 Cedar Policy](https://docs.cedarpolicy.com/) Language Reference. GuideLink

1. Quindi scegli le risorse del Data Catalog a cui concedere l'accesso. Puoi definire queste autorizzazioni per varie risorse del Data Catalog, inclusi cataloghi, database, tabelle e filtri di dati.

1. Scegliere **Concedi**.

   Questo approccio consente di controllare l'accesso in base agli attributi, garantendo che solo gli utenti o i ruoli con i tag appropriati possano eseguire azioni specifiche sulle risorse designate.

## Concessione delle autorizzazioni tramite ABAC ()AWS CLI
<a name="abac-granting-permissions-cli"></a>

 L'esempio seguente mostra un'espressione di attributo che deve essere soddisfatta per ricevere tutte le autorizzazioni disponibili sulla risorsa. In alternativa, è possibile specificare autorizzazioni individuali come `Select``Describe`, o. `Drop` L'espressione utilizza l'espressione politica Cedar. Per ulteriori informazioni su Cedar, vedere [Cos'è Cedar? \$1 Cedar Policy](https://docs.cedarpolicy.com/) Language Reference. GuideLink 

 Questa condizione verifica se il principale IAM ha un `department` tag e il valore del `department` tag è uguale`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\""}'
```