Crittografia dei lavori e degli artefatti di personalizzazione del modello - 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à.

Crittografia dei lavori e degli artefatti di personalizzazione del modello

Amazon Bedrock utilizza i dati di allenamento con l'CreateModelCustomizationJobazione o con la console per creare un modello personalizzato che è una versione ottimizzata di un modello base di Amazon Bedrock. I tuoi modelli personalizzati sono gestiti e archiviati da. AWS

Amazon Bedrock utilizza i dati di fine tuning forniti solo per la messa a punto di un modello Amazon Bedrock Foundation. Amazon Bedrock non utilizza i dati di ottimizzazione fine per nessun altro scopo. I tuoi dati di addestramento non vengono utilizzati per addestrare i Titan modelli di base o distribuiti a terze parti. Anche altri dati di utilizzo, come i timestamp di utilizzo, l'account IDs registrato e altre informazioni registrate dal servizio, non vengono utilizzati per addestrare i modelli.

Nessuno dei dati di formazione o convalida forniti per il fine tuning viene archiviato da Amazon Bedrock, una volta completato il processo di fine tuning.

Tieni presente che i modelli ottimizzati possono riprodurre alcuni dati di ottimizzazione durante la generazione dei completamenti. Se l'app non deve esporre i dati di fine tuning in alcuna forma, è necessario innanzitutto filtrare i dati riservati dai dati di allenamento. Se hai già creato per errore un modello personalizzato utilizzando dati riservati, puoi eliminare quel modello personalizzato, filtrare le informazioni riservate dai dati di allenamento e quindi creare un nuovo modello.

Per crittografare i modelli personalizzati (inclusi i modelli copiati), Amazon Bedrock offre due opzioni:

  1. Chiavi di proprietà di AWS— Per impostazione predefinita, Amazon Bedrock crittografa i modelli personalizzati con. Chiavi di proprietà di AWS Non puoi visualizzarne, gestirli Chiavi di proprietà di AWS, utilizzarli o controllarne l'utilizzo. Tuttavia, non è necessario effettuare alcuna operazione o modificare programmi per proteggere le chiavi che eseguono la crittografia dei dati. Per ulteriori informazioni, consulta la sezione Chiavi di proprietà di AWS nella Guida per gli sviluppatori di AWS Key Management Service .

  2. Chiavi gestite dal cliente: puoi scegliere di crittografare i modelli personalizzati con chiavi gestite dal cliente che gestisci tu stesso. Per ulteriori informazioni in merito AWS KMS keys, consulta Customer managed keys nella AWS Key Management Service Developer Guide.

Nota

Amazon Bedrock abilita automaticamente e gratuitamente la crittografia Chiavi di proprietà di AWS a riposo. Se utilizzi una chiave gestita dal cliente, verranno AWS KMS addebitati dei costi. Per ulteriori informazioni sui prezzi, consulta Prezzi di AWS Key Management Service.

Per ulteriori informazioni in merito AWS KMS, consulta la Guida per AWS Key Management Service gli sviluppatori.

In che modo Amazon Bedrock utilizza le sovvenzioni in AWS KMS

Se specifichi una chiave gestita dal cliente per crittografare un modello personalizzato per un lavoro di personalizzazione o copia del modello, Amazon Bedrock crea una KMS concessione principale associata al modello personalizzato per tuo conto inviando una CreateGrantrichiesta a. AWS KMS Questa concessione consente ad Amazon Bedrock di accedere e utilizzare la tua chiave gestita dal cliente. Le sovvenzioni AWS KMS vengono utilizzate per consentire ad Amazon Bedrock di accedere a una KMS chiave nell'account di un cliente.

Amazon Bedrock richiede la concessione principale per utilizzare la chiave gestita dai clienti per le seguenti operazioni interne:

  • Invia DescribeKeyrichieste per AWS KMS verificare che l'ID della KMS chiave simmetrica gestita dal cliente che hai inserito durante la creazione del lavoro sia valido.

  • Invia GenerateDataKeye AWS KMS decrittografa le richieste per generare chiavi dati crittografate dalla chiave gestita dal cliente e decrittografa le chiavi dati crittografate in modo che possano essere utilizzate per crittografare gli artefatti del modello.

  • Invia CreateGrantrichieste per AWS KMS creare concessioni secondarie circoscritte con un sottoinsieme delle operazioni precedenti (DescribeKey,,Decrypt), per l'esecuzione asincrona della personalizzazione del modelloGenerateDataKey, della copia del modello o della creazione di Provisioned Throughput.

  • Amazon Bedrock specifica un ente pensionante durante la creazione delle sovvenzioni, in modo che il servizio possa inviare una richiesta. RetireGrant

Hai pieno accesso alla tua chiave gestita dai clienti. AWS KMS Puoi revocare l'accesso alla sovvenzione seguendo i passaggi riportati nella sezione Ritiro e revoca delle sovvenzioni nella Guida per gli AWS Key Management Service sviluppatori o rimuovere l'accesso del servizio alla tua chiave gestita dal cliente in qualsiasi momento modificando la politica delle chiavi. In tal caso, Amazon Bedrock non sarà in grado di accedere al modello personalizzato crittografato dalla tua chiave.

Ciclo di vita delle sovvenzioni primarie e secondarie per modelli personalizzati

  • Le sovvenzioni primarie hanno una lunga durata e rimangono attive finché i modelli personalizzati associati sono ancora in uso. Quando un modello personalizzato viene eliminato, la concessione principale corrispondente viene automaticamente ritirata.

  • Le sovvenzioni secondarie sono di breve durata. Vengono automaticamente ritirati non appena viene completata l'operazione che Amazon Bedrock esegue per conto dei clienti. Ad esempio, una volta terminato un processo di copia del modello, la concessione secondaria che ha consentito ad Amazon Bedrock di crittografare il modello personalizzato copiato verrà immediatamente ritirata.

Scopri come creare una chiave gestita dal cliente e come allegare ad essa una policy chiave

Per crittografare una AWS risorsa con una chiave creata e gestita dall'utente, si eseguono le seguenti operazioni generali:

  1. (Prerequisito) Assicurati che il tuo IAM ruolo disponga delle autorizzazioni per l'azione. CreateKey

  2. Segui i passaggi indicati in Creazione di chiavi per creare una chiave gestita dal cliente utilizzando la AWS KMS console o l'CreateKeyoperazione.

  3. La creazione della chiave restituisce un valore Arn per la chiave che è possibile utilizzare per le operazioni che richiedono l'utilizzo della chiave (ad esempio, quando si invia un processo di personalizzazione del modello o si esegue un'inferenza del modello).

  4. Crea e allega una policy chiave alla chiave con le autorizzazioni richieste. Per creare una politica chiave, segui i passaggi riportati nella sezione Creazione di una politica chiave nella Guida per gli AWS Key Management Service sviluppatori.

Autorizzazioni e politiche chiave per modelli personalizzati e copiati

Dopo aver creato una KMS chiave, le si allega un criterio chiave. Le politiche chiave sono politiche basate sulle risorse che alleghi alla chiave gestita dal cliente per controllarne l'accesso. Ogni chiave gestita dal cliente deve avere esattamente una policy della chiave, che contiene istruzioni che determinano chi può usare la chiave e come la possono usare. È possibile specificare una politica chiave quando si crea la chiave gestita dal cliente. Puoi modificare la politica chiave in qualsiasi momento, ma potrebbe esserci un breve ritardo prima che la modifica diventi disponibile per intero AWS KMS. Per ulteriori informazioni, consulta Gestione dell'accesso alle chiavi gestite dal cliente nella Guida per gli sviluppatori di AWS Key Management Service.

Le seguenti KMS azioni vengono utilizzate per le chiavi che crittografano i modelli personalizzati e copiati:

  1. kms: CreateGrant — Crea una concessione per una chiave gestita dal cliente consentendo al servizio Amazon Bedrock l'accesso principale alla KMS chiave specificata tramite operazioni di concessione. Per ulteriori informazioni sulle sovvenzioni, consulta Grants AWS KMS nella Developer Guide.AWS Key Management Service

    Nota

    Amazon Bedrock stabilisce inoltre un ente pensionante e ritira automaticamente la sovvenzione quando non è più necessaria.

  2. kms: DescribeKey — Fornisce i dettagli chiave gestiti dal cliente per consentire ad Amazon Bedrock di convalidare la chiave.

  3. kms: GenerateDataKey — Fornisce i dettagli chiave gestiti dal cliente per consentire ad Amazon Bedrock di convalidare l'accesso degli utenti. Amazon Bedrock archivia il testo cifrato generato insieme al modello personalizzato da utilizzare come ulteriore controllo di convalida per gli utenti del modello personalizzato.

  4. KMS:Decrypt — Decripta il testo cifrato memorizzato per verificare che il ruolo abbia accesso corretto alla chiave che crittografa il modello personalizzato. KMS

Come migliore pratica di sicurezza, ti consigliamo di includere la chiave kms: ViaService condition per limitare l'accesso alla chiave del servizio Amazon Bedrock.

Sebbene sia possibile allegare una sola politica chiave a una chiave, è possibile allegare più istruzioni alla politica chiave aggiungendo istruzioni all'elenco nel Statement campo della politica.

Le seguenti istruzioni sono rilevanti per la crittografia di modelli personalizzati e copiati:

Per utilizzare la chiave gestita dal cliente per crittografare un modello personalizzato o copiato, includi la seguente dichiarazione in una politica di chiave per consentire la crittografia di un modello. Nel Principal campo, aggiungi gli account a cui desideri consentire la crittografia e la decrittografia della chiave all'elenco a cui è mappato il sottocampo. AWS Se si utilizza la chiave di kms:ViaService condizione, è possibile aggiungere una riga per ogni regione oppure utilizzare * al posto di ${region} per consentire l'accesso a tutte le regioni che supportano Amazon Bedrock.

{ "Sid": "PermissionsEncryptDecryptModel", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::${account-id}:user/${role}" ] }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey", "kms:DescribeKey", "kms:CreateGrant" ], "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": [ "bedrock.${region}.amazonaws.com" ] } } }

Per consentire l'accesso a un modello che è stato crittografato con una KMS chiave, includete la seguente dichiarazione in una politica di chiave per consentire la decrittografia della chiave. Nel Principal campo, aggiungi gli account a cui desideri consentire la decrittografia della chiave all'elenco a cui è mappato il sottocampo. AWS Se si utilizza la chiave di kms:ViaService condizione, è possibile aggiungere una riga per ogni regione oppure utilizzare * al posto di ${region} per consentire l'accesso a tutte le regioni che supportano Amazon Bedrock.

{ "Sid": "PermissionsDecryptModel", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::${account-id}:user/${role}" ] }, "Action": [ "kms:Decrypt" ], "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": [ "bedrock.${region}.amazonaws.com" ] } } }

Per ulteriori informazioni sulle politiche chiave da creare, espandi la sezione corrispondente al tuo caso d'uso:

Se prevedi di crittografare un modello personalizzato con una KMS chiave, la politica relativa alla chiave dipenderà dal tuo caso d'uso. Espandi la sezione corrispondente al tuo caso d'uso:

Se i ruoli che richiameranno il modello personalizzato sono gli stessi ruoli che personalizzeranno il modello, è sufficiente la dichiarazione di. Crittografa un modello Nel Principal campo del seguente modello di policy, aggiungi gli account a cui desideri consentire la personalizzazione e richiama il modello personalizzato all'elenco a cui è mappato il AWS sottocampo.

{ "Version": "2012-10-17", "Id": "PermissionsCustomModelKey", "Statement": [ { "Sid": "PermissionsEncryptCustomModel", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::${account-id}:user/${role}" ] }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey", "kms:DescribeKey", "kms:CreateGrant" ], "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": [ "bedrock.${region}.amazonaws.com" ] } } } ] }

Se i ruoli che richiameranno il modello personalizzato sono diversi dal ruolo che personalizzerà il modello, è necessaria sia l'istruzione di Crittografa un modello che. Consentire l'accesso a un modello crittografato Modificate le istruzioni nel seguente modello di policy come segue:

  1. La prima istruzione consente la crittografia e la decrittografia della chiave. Nel Principal campo, aggiungi gli account a cui desideri consentire la personalizzazione del modello personalizzato all'elenco a cui è mappato il AWS sottocampo.

  2. La seconda istruzione consente solo la decrittografia della chiave. Nel Principal campo, aggiungi gli account a cui desideri consentire solo di richiamare il modello personalizzato all'elenco a cui è mappato il AWS sottocampo.

{ "Version": "2012-10-17", "Id": "PermissionsCustomModelKey", "Statement": [ { "Sid": "PermissionsEncryptCustomModel", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::${account-id}:user/${role}" ] }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey", "kms:DescribeKey", "kms:CreateGrant" ], "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": [ "bedrock.${region}.amazonaws.com" ] } } }, { "Sid": "PermissionsDecryptModel", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::${account-id}:user/${role}" ] }, "Action": [ "kms:Decrypt" ], "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": [ "bedrock.${region}.amazonaws.com" ] } } } ] }

Quando copi un modello di tua proprietà o che è stato condiviso con te, potresti dover gestire fino a due politiche chiave:

Se prevedi di utilizzare una KMS chiave per crittografare un modello copiato, la politica relativa alla chiave dipenderà dal tuo caso d'uso. Espandi la sezione corrispondente al tuo caso d'uso:

Se i ruoli che richiameranno il modello copiato sono gli stessi ruoli che creeranno la copia del modello, è sufficiente l'istruzione da. Crittografa un modello Nel Principal campo del seguente modello di policy, aggiungi gli account a cui desideri consentire la copia e richiama il modello copiato all'elenco a cui è mappato il sottocampo: AWS

{ "Version": "2012-10-17", "Id": "PermissionsCopiedModelKey", "Statement": [ { "Sid": "PermissionsEncryptCopiedModel", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::${account-id}:user/${role}" ] }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey", "kms:DescribeKey", "kms:CreateGrant" ], "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": [ "bedrock.${region}.amazonaws.com" ] } } } ] }

Se i ruoli che richiameranno il modello copiato sono diversi dal ruolo che creerà la copia del modello, sono necessarie sia l'istruzione di che. Crittografa un modello Consentire l'accesso a un modello crittografato Modificate le istruzioni nel seguente modello di policy come segue:

  1. La prima istruzione consente la crittografia e la decrittografia della chiave. Nel Principal campo, aggiungi gli account a cui desideri consentire la creazione del modello copiato all'elenco a cui è mappato il AWS sottocampo.

  2. La seconda istruzione consente solo la decrittografia della chiave. Nel Principal campo, aggiungi gli account a cui desideri consentire solo di richiamare il modello copiato all'elenco a cui è mappato il sottocampo. AWS

{ "Version": "2012-10-17", "Id": "PermissionsCopiedModelKey", "Statement": [ { "Sid": "PermissionsEncryptCopiedModel", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::${account-id}:user/${role}" ] }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey", "kms:DescribeKey", "kms:CreateGrant" ], "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": [ "bedrock.${region}.amazonaws.com" ] } } }, { "Sid": "PermissionsDecryptCopiedModel", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::${account-id}:user/${role}" ] }, "Action": [ "kms:Decrypt" ], "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": [ "bedrock.${region}.amazonaws.com" ] } } } ] }

Se il modello di origine che copierai è crittografato con una KMS chiave, allega l'istruzione da Consentire l'accesso a un modello crittografato alla politica della chiave per la chiave che crittografa il modello di origine. Questa istruzione consente al ruolo di copia del modello di decrittografare la chiave che crittografa il modello di origine. Nel Principal campo del seguente modello di policy, aggiungi gli account a cui desideri consentire la copia del modello di origine nell'elenco a cui è mappato il sottocampo: AWS

{ "Version": "2012-10-17", "Id": "PermissionsSourceModelKey", "Statement": [ { "Sid": "PermissionsDecryptModel", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::${account-id}:user/${role}" ] }, "Action": [ "kms:Decrypt" ], "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": [ "bedrock.${region}.amazonaws.com" ] } } } ] }

Monitora le tue chiavi di crittografia per il servizio Amazon Bedrock

Quando utilizzi una chiave gestita AWS KMS dal cliente con le tue risorse Amazon Bedrock, puoi utilizzare AWS CloudTrailAmazon CloudWatch Logs per tenere traccia delle richieste a cui Amazon Bedrock invia. AWS KMS

Di seguito è riportato un esempio di AWS CloudTrail evento per CreateGrantmonitorare KMS le operazioni chiamate da Amazon Bedrock per creare una sovvenzione primaria:

{ "eventVersion": "1.09", "userIdentity": { "type": "AssumedRole", "principalId": "AROAIGDTESTANDEXAMPLE:SampleUser01", "arn": "arn:aws:sts::111122223333:assumed-role/RoleForModelCopy/SampleUser01", "accountId": "111122223333", "accessKeyId": "EXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAIGDTESTANDEXAMPLE", "arn": "arn:aws:iam::111122223333:role/RoleForModelCopy", "accountId": "111122223333", "userName": "RoleForModelCopy" }, "attributes": { "creationDate": "2024-05-07T21:46:28Z", "mfaAuthenticated": "false" } }, "invokedBy": "bedrock.amazonaws.com" }, "eventTime": "2024-05-07T21:49:44Z", "eventSource": "kms.amazonaws.com", "eventName": "CreateGrant", "awsRegion": "us-east-1", "sourceIPAddress": "bedrock.amazonaws.com", "userAgent": "bedrock.amazonaws.com", "requestParameters": { "granteePrincipal": "bedrock.amazonaws.com", "retiringPrincipal": "bedrock.amazonaws.com", "keyId": "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE", "operations": [ "Decrypt", "CreateGrant", "GenerateDataKey", "DescribeKey" ] }, "responseElements": { "grantId": "0ab0ac0d0b000f00ea00cc0a0e00fc00bce000c000f0000000c0bc0a0000aaafSAMPLE", "keyId": "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" }, "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "readOnly": false, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "eventCategory": "Management" }

Crittografia dei dati di formazione, convalida e output

Quando usi Amazon Bedrock per eseguire un processo di personalizzazione del modello, memorizzi i file di input nel tuo bucket Amazon S3. Al termine del processo, Amazon Bedrock memorizza i file delle metriche di output nel bucket S3 specificato durante la creazione del lavoro e gli artefatti del modello personalizzato risultanti in un bucket S3 controllato da. AWS

I file di output sono crittografati con le configurazioni di crittografia del bucket S3. Questi vengono crittografati con crittografia lato server SSE -S3 o con KMS crittografia AWS KMS SSE-, a seconda di come si configura il bucket S3.