Configurare l’accesso a bucket Amazon S3 - Amazon Bedrock

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

Configurare l’accesso a bucket Amazon S3

Diverse funzionalità di Amazon Bedrock richiedono l’accesso ai dati archiviati nei bucket Amazon S3. Per accedere a tali dati, è necessario configurare le seguenti autorizzazioni:

Caso d’uso Permissions
Autorizzazioni per recuperare dati dal bucket S3 s3: GetObject

s3: ListBucket

Autorizzazioni per scrivere dati nel bucket S3 s3: PutObject
Autorizzazioni per decrittografare la chiave KMS che ha crittografato il bucket S3 kms:Decrypt

kms:DescribeKey

Le identità o le risorse a cui è necessario collegare le autorizzazioni precedenti dipendono dai seguenti fattori:

  • Più funzionalità di Amazon Bedrock utilizzano ruoli di servizio. Se una funzionalità utilizza un ruolo di servizio, è necessario configurare le autorizzazioni in modo che il ruolo di servizio, anziché l’identità IAM dell’utente, abbia accesso ai dati S3. Alcune funzionalità di Amazon Bedrock possono creare automaticamente un ruolo di servizio e collegare le autorizzazioni basate sull’identità richieste al ruolo di servizio, se si utilizza la Console di gestione AWS.

  • Alcune funzionalità di Amazon Bedrock consentono a un’identità di accedere a un bucket S3 in un account diverso. Se è necessario accedere ai dati S3 da un account diverso, il proprietario del bucket deve includere le autorizzazioni basate su risorse in una policy di bucket S3 collegata al bucket S3.

Di seguito viene descritto come determinare dove si devono collegare le autorizzazioni necessarie per accedere ai dati S3:

  • Autorizzazioni per identità IAM

    • Se riesci a creare automaticamente un ruolo di servizio nella console, le autorizzazioni vengono configurate per il ruolo di servizio, quindi non devi configurarle in modo autonomo.

    • Se preferisci utilizzare un ruolo di servizio personalizzato o se l’identità che richiede l’accesso non è un ruolo di servizio, vai alla pagina Collega le autorizzazioni a un’identità IAM per consentirle l’accesso a un bucket Amazon S3 per avere informazioni su come creare una policy basata sull’identità con le autorizzazioni appropriate.

  • Autorizzazioni basate su risorse

    • Se l’identità richiede l’accesso ai dati S3 nello stesso account, non è necessario collegare una policy di bucket S3 al bucket contenente i dati.

    • Se l’identità richiede l’accesso ai dati S3 in un account diverso, vai alla pagina Collegare una policy di bucket a un bucket Amazon S3 per consentire a un altro account di accedervi per informazioni su come creare una policy di bucket S3 con le autorizzazioni appropriate.

      Importante

      La creazione automatica di un ruolo di servizio in Console di gestione AWS assegna le autorizzazioni appropriate basate sull'identità al ruolo, ma è comunque necessario configurare la policy del bucket S3 se l'identità che richiede l'accesso si trova in un'altra. Account AWS

Per ulteriori informazioni, consulta i collegamenti seguenti:

Esamina gli argomenti relativi al caso d’uso specifico:

Collega le autorizzazioni a un’identità IAM per consentirle l’accesso a un bucket Amazon S3

Questo argomento fornisce un modello per una policy da collegare a un’identità IAM. La policy include le seguenti istruzioni che definiscono le autorizzazioni per concedere a un’identità IAM l’accesso a un bucket S3:

  1. Autorizzazioni per recuperare dati da un bucket S3. Questa istruzione include anche una condizione che utilizza la chiave di condizione s3:prefix per limitare l’accesso a una cartella specifica nel bucket. Per ulteriori informazioni su questa condizione, consulta la sezione Policy utente nell’Esempio 2: recupero di un elenco di oggetti in un bucket con un prefisso specifico.

  2. (Se si devono scrivere dati in una posizione S3) Autorizzazioni per scrivere dati in un bucket S3. Questa dichiarazione include anche una condizione che utilizza la chiave aws:ResourceAccount condition per limitare l'accesso alle richieste inviate da una persona specificaAccount AWS.

  3. (Se il bucket S3 è crittografato con una chiave KMS) Autorizzazioni per descrivere e decrittografare la chiave KMS che ha crittografato il bucket S3.

    Nota

    Se per il bucket S3 in uso è abilitata la funzione di controllo delle versioni, ogni versione di oggetto caricata utilizzando questa funzionalità può avere la propria chiave di crittografia. L’utente è responsabile del monitoraggio di ciascuna chiave di crittografia utilizzata per ogni determinato oggetto.

Aggiungere, modificare e rimuovere le istruzioni, le risorse e le condizioni nella seguente politica e ${values} sostituirle se necessario:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "ReadS3Bucket", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::${S3Bucket}", "arn:aws:s3:::${S3Bucket}/*" ] }, { "Sid": "WriteToS3Bucket", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:PutObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::${S3Bucket}", "arn:aws:s3:::${S3Bucket}/*" ] }, { "Sid": "DecryptKMSKey", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:DescribeKey" ], "Resource": "arn:aws:kms:us-east-1:123456789012:key/${KMSKeyId}" } ] }

Dopo aver modificato la policy in base al caso d’uso specifico, collegala al ruolo di servizio (o all’identità IAM) che richiede l’accesso al bucket S3. Per informazioni su come collegare una policy IAM a un ruolo, consulta Aggiunta e rimozione di autorizzazioni per identità IAM.

Collegare una policy di bucket a un bucket Amazon S3 per consentire a un altro account di accedervi

Questo argomento fornisce un modello per una policy basata sulle risorse da collegare a un bucket S3 per consentire a un’identità IAM di accedere ai dati nel bucket. La policy include le seguenti istruzioni che definiscono le autorizzazioni per concedere a un’identità l’accesso al bucket:

  1. Autorizzazioni per recuperare dati da un bucket S3.

  2. (Se si devono scrivere dati in una posizione S3) Autorizzazioni per scrivere dati in un bucket S3.

  3. (Se il bucket S3 è crittografato con una chiave KMS) Autorizzazioni per descrivere e decrittografare la chiave KMS che ha crittografato il bucket S3.

    Nota

    Se per il bucket S3 in uso è abilitata la funzione di controllo delle versioni, ogni versione di oggetto caricata utilizzando questa funzionalità può avere la propria chiave di crittografia. L’utente è responsabile del monitoraggio di ciascuna chiave di crittografia utilizzata per ogni determinato oggetto.

Le autorizzazioni sono simili a quelle basate sull’identità descritte in Collega le autorizzazioni a un’identità IAM per consentirle l’accesso a un bucket Amazon S3. Tuttavia, ogni istruzione richiede anche di specificare l’identità per cui concedere le autorizzazioni alla risorsa presente nel campo Principal. Specifica l’identità (con la maggior parte delle funzionalità di Amazon Bedrock, questo è il ruolo di servizio) nel campo Principal. Aggiungere, modificare e rimuovere le istruzioni, le risorse e le condizioni nella seguente politica e ${values} sostituirle se necessario:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "ReadS3Bucket", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ServiceRole" }, "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::${S3Bucket}", "arn:aws:s3:::${S3Bucket}/*" ] }, { "Sid": "WriteToS3Bucket", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ServiceRole" }, "Action": [ "s3:GetObject", "s3:PutObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::${S3Bucket}", "arn:aws:s3:::${S3Bucket}/*" ] }, { "Sid": "DecryptKMSKey", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ServiceRole" }, "Action": [ "kms:Decrypt", "kms:DescribeKey" ], "Resource": "arn:aws:kms:us-east-1:123456789012:key/${KMSKeyId}" } ] }

Dopo aver modificato la policy in base al caso d’uso specifico, collegala al bucket S3. Per informazioni su come aggiungere una policy di bucket a un bucket S3, consulta Aggiunta di una policy di bucket utilizzando la console Amazon S3.

(Opzione di sicurezza avanzata) Includere le condizioni in una dichiarazione per un accesso più dettagliato

Per un maggiore controllo sulle identità che possono accedere alle risorse, è possibile includere condizioni in una dichiarazione di policy. La policy in questo argomento fornisce un esempio che utilizza le seguenti chiavi di condizione:

  • s3:prefix: chiave di condizione S3 che limita l’accesso a una cartella specifica in un bucket S3. Per ulteriori informazioni su questa chiave di condizione, consulta la sezione Policy utente nell’Esempio 2: recupero di un elenco di oggetti in un bucket con un prefisso specifico.

  • aws:ResourceAccount— Una chiave di condizione globale che limita l'accesso alle richieste provenienti da uno specificoAccount AWS.

La seguente politica limita l'accesso in lettura alla my-folder cartella nel bucket amzn-s3-demo-bucket S3 e limita l'accesso in scrittura per il bucket amzn-s3-demo-destination-bucket S3 alle richieste provenienti da utenti con l'ID: Account AWS 111122223333

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "ReadS3Bucket", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket", "arn:aws:s3:::amzn-s3-demo-bucket/*" ], "Condition" : { "StringEquals" : { "s3:prefix": "my-folder" } } }, { "Sid": "WriteToS3Bucket", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:PutObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-destination-bucket", "arn:aws:s3:::amzn-s3-demo-destination-bucket/*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "111122223333" } } } ] }

Per ulteriori informazioni sulle condizioni e sulle chiavi di condizione, consulta i seguenti link: