

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

# Policy basate su risorse per Tabelle S3
<a name="s3-tables-resource-based-policies"></a>

Tabelle S3 fornisce policy basate sulle risorse per la gestione dell'accesso ai bucket delle tabelle e alle tabelle: policy dei bucket delle tabelle e policy delle tabelle. Puoi utilizzare una policy dei bucket delle tabelle per concedere le autorizzazioni di accesso all'API a livello di bucket delle tabelle, spazio dei nomi o tabella. Le autorizzazioni associate al bucket delle tabelle possono essere applicate a tutte le tabelle del bucket o solo a parte di esse, a seconda della definizione della policy. È possibile utilizzare una policy della tabella per concedere autorizzazioni a livello di tabella. 

Quando riceve una richiesta, Tabelle S3 verifica innanzitutto che il richiedente disponga delle autorizzazioni necessarie. Valuta quindi tutte le policy di accesso, le policy utente e le policy basate sulle risorse pertinenti per decidere se autorizzare la richiesta (la policy dell'utente IAM, la policy del ruolo IAM, la policy del bucket di tabelle e la policy della tabella). Ad esempio, se una policy del bucket delle tabelle concede a un utente le autorizzazioni per eseguire tutte le azioni sulle tabelle nel bucket (inclusa `DeleteTable`), ma una singola tabella include una policy di tabella che nega l'azione `DeleteTable` a tutti gli utenti, l'utente non può eliminare la tabella.

Il seguente argomento include esempi di policy relative alle tabelle e ai bucket delle tabelle. Per usare queste policy, sostituisci *user input placeholders* con le tue informazioni.

**Nota**  
Ogni policy che concede autorizzazioni per modificare le tabelle deve includere autorizzazioni per consentire a `GetTableMetadataLocation` di accedere al file radice della tabella. Per ulteriori informazioni, consulta [https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3TableBuckets_GetTableMetadataLocation.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3TableBuckets_GetTableMetadataLocation.html).
Ogni volta che si esegue un'attività di scrittura o eliminazione sulla tabella, includere le autorizzazioni per `UpdateTableMetadataLocation` nella tua policy di accesso.
È consigliabile utilizzare una policy del bucket delle tabelle per regolare l'accesso alle azioni a livello di bucket e una policy della tabella per regolare l'accesso alle azioni a livello di tabella. Nei casi in cui si desidera definire lo stesso set di autorizzazioni su più tabelle, è consigliabile utilizzare una policy del bucket delle tabelle.

**Topics**
+ [Esempio 1: la policy del bucket delle tabelle consente l'accesso a `PutBucketMaintenanceConfiguration` per i bucket in un account](#table-bucket-policy-1)
+ [Esempio 2: la policy di bucket di tabelle consente l’accesso in lettura (SELECT) alle tabelle archiviate nel namespace `hr`](#table-bucket-policy-2)
+ [Esempio 3: policy della tabella per consentire all'utente di eliminare una tabella](#table-bucket-policy-3)

## Esempio 1: la policy del bucket delle tabelle consente l'accesso a `PutBucketMaintenanceConfiguration` per i bucket in un account
<a name="table-bucket-policy-1"></a>

La seguente policy esemplificativa del bucket delle tabelle consente all'`data steward` di IAM di eliminare gli oggetti senza riferimento per tutti i bucket di un account consentendo l'accesso a `PutBucketMaintenanceConfiguration`.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:role/datasteward"
            },
            "Action": [
                "s3tables:PutTableBucketMaintenanceConfiguration"
            ],
            "Resource": "arn:aws:s3tables:us-east-1:111122223333:bucket/*"
        }
    ]
}
```

------

## Esempio 2: la policy di bucket di tabelle consente l’accesso in lettura (SELECT) alle tabelle archiviate nel namespace `hr`
<a name="table-bucket-policy-2"></a>

Di seguito è riportata una policy di bucket di tabelle di esempio che consente a Jane, un utente con ID Account AWS `123456789012` di accedere alle tabelle archiviate nel namespace `hr` in un bucket di tabelle.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::123456789012:user/Jane"
            },
            "Action": [
                "s3tables:GetTableData",
                "s3tables:GetTableMetadataLocation"
            ],
            "Resource": "arn:aws:s3tables:us-east-1:111122223333:bucket/amzn-s3-demo-table-bucket/table/*",
            "Condition": {
                "StringLike": {
                    "s3tables:namespace": "hr"
                }
            }
        }
    ]
}
```

------

## Esempio 3: policy della tabella per consentire all'utente di eliminare una tabella
<a name="table-bucket-policy-3"></a>

Il seguente esempio di policy di tabella consente al ruolo IAM di `data steward` di eliminare una tabella.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "DeleteTable",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:role/datasteward"
            },
            "Action": [
                "s3tables:DeleteTable",
                "s3tables:UpdateTableMetadataLocation",
                "s3tables:PutTableData",
                "s3tables:GetTableMetadataLocation"
            ],
            "Resource": "arn:aws:s3tables:us-east-1:111122223333:bucket/amzn-s3-demo-bucket/table/tableUUID"
        }
    ]
}
```

------