Condivisione di un modello personalizzato con un altro Account AWS - Amazon Comprehend

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

Condivisione di un modello personalizzato con un altro Account AWS

Con Amazon Comprehend, puoi condividere i tuoi modelli personalizzati con altri, in modo che possano importare i tuoi modelli nei loro AWS account. Quando un utente importa uno dei tuoi modelli personalizzati, crea un nuovo modello personalizzato nel proprio account. Il loro nuovo modello è il duplicato di quello che hai condiviso.

Per condividere un modello personalizzato, devi allegare ad esso una politica che autorizza altri a importarlo. Quindi, fornisci a quegli utenti i dettagli di cui hanno bisogno.

Nota

Quando altri utenti importano un modello personalizzato che hai condiviso, devono utilizzare lo stesso modello, ad Regione AWS esempio Stati Uniti orientali (Virginia settentrionale), che contiene il tuo modello.

Prima di iniziare

Prima di poter condividere un modello, devi disporre di un classificatore personalizzato qualificato o di un riconoscimento di entità personalizzato in Amazon Comprehend nel tuo. Account AWS Per ulteriori informazioni sull'addestramento di modelli personalizzati, consulta o. Classificazione personalizzata Riconoscimento personalizzato delle entità

Autorizzazioni richieste

Prima di poter aggiungere una policy basata sulle risorse a un modello personalizzato, sono necessarie le autorizzazioni in AWS Identity and Access Management (IAM). L'utente, il gruppo o il ruolo devono avere una policy allegata in modo da poter creare, ottenere ed eliminare le politiche del modello, come illustrato nell'esempio seguente.

Esempio Policy IAM per gestire le politiche basate sulle risorse per i modelli personalizzati
{ "Effect": "Allow", "Action": [ "comprehend:PutResourcePolicy", "comprehend:DeleteResourcePolicy", "comprehend:DescribeResourcePolicy" ], "Resource": "arn:aws:comprehend:us-west-2:111122223333:document-classifier/foo/version/*" }

Per informazioni sulla creazione di una policy IAM, consulta Creating IAM policies nella IAM User Guide. Per informazioni su come allegare una policy IAM, consulta Aggiungere e rimuovere le autorizzazioni di identità IAM nella Guida per l'utente IAM.

Se condividi un modello crittografato, potrebbe essere necessario aggiungere le autorizzazioni perAWS KMS. Questo requisito dipende dal tipo di chiave KMS che usi per crittografare il modello in Amazon Comprehend.

An Chiave di proprietà di AWSè di proprietà e gestito da un servizio. AWS Se si utilizza unChiave di proprietà di AWS, non è necessario aggiungere le autorizzazioni perAWS KMS, e si può saltare questa sezione.

Una chiave gestita dal cliente è una chiave che puoi creare, possedere e gestire in tuo. Account AWS Se utilizzi una chiave gestita dal cliente, devi aggiungere una dichiarazione alla tua politica sulle chiavi KMS.

La dichiarazione politica autorizza una o più entità (come utenti o account) a eseguire AWS KMS le operazioni necessarie per decrittografare il modello.

Utilizzate i tasti delle condizioni per aiutare a prevenire il confuso problema del vicesceriffo. Per ulteriori informazioni, consulta Prevenzione del confused deputy tra servizi.

Utilizza le seguenti chiavi di condizione nella politica per convalidare le entità che accedono alla tua chiave KMS. Quando un utente importa il modello, AWS KMS verifica che l'ARN della versione del modello di origine corrisponda alla condizione. Se non includi una condizione nella politica, i principali specificati possono utilizzare la tua chiave KMS per decrittografare qualsiasi versione del modello:

  • aws: SourceArn — Usa questa chiave di condizione con le azioni and. kms:GenerateDataKey kms:Decrypt

  • kms: EncryptionContext — Usa questa chiave di condizione con le kms:CreateGrant azioni kms:GenerateDataKeykms:Decrypt, e.

Nell'esempio seguente, la politica Account AWS 444455556666 autorizza a utilizzare la versione 1 del modello di classificatore specificato di proprietà di. Account AWS 111122223333

Esempio Politica chiave KMS per accedere a una versione specifica del modello di classificatore
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::444455556666:root" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceArn": "arn:aws:comprehend:us-west-2:111122223333:document-classifier/classifierName/version/1" } } }, { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::444455556666:root" }, "Action": "kms:CreateGrant", "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext:aws:comprehend:arn": "arn:aws:comprehend:us-west-2:111122223333:document-classifier/classifierName/version/1" } } } ] }

La seguente politica di esempio autorizza l'utente ExampleUser ExampleRoleda Account AWS 444455556666 e verso l'accesso Account AWS 123456789012 a questa chiave KMS tramite il servizio Amazon Comprehend.

Esempio Politica chiave KMS per consentire l'accesso al servizio Amazon Comprehend (alternativa 1).
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::444455556666:user/ExampleUser", "arn:aws:iam::123456789012:role/ExampleRole" ] }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringLike": { "aws:SourceArn": "arn:aws:comprehend:*" } } }, { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::444455556666:user/ExampleUser", "arn:aws:iam::123456789012:role/ExampleRole" ] }, "Action": "kms:CreateGrant", "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:comprehend:arn": "arn:aws:comprehend:*" } } } ] }

La seguente politica di esempio Account AWS 444455556666 autorizza l'accesso a questa chiave KMS tramite il servizio Amazon Comprehend, utilizzando una sintassi alternativa all'esempio precedente.

Esempio Politica chiave KMS per consentire l'accesso al servizio Amazon Comprehend (alternativa 2).
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::444455556666:root" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey", "kms:CreateGrant" ], "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:comprehend:arn": "arn:aws:comprehend:*" } } } ] }

Per ulteriori informazioni, consulta Policy delle chiavi in AWS KMS nella Guida per gli sviluppatori di AWS Key Management Service.

Politiche basate sulle risorse per modelli personalizzati

Prima che un utente Amazon Comprehend di un altro utente Account AWS possa importare un modello personalizzato dal tuo AWS account, devi autorizzarlo a farlo. Per autorizzarli, aggiungi una politica basata sulle risorse alla versione del modello che desideri condividere. Una policy basata sulle risorse è una policy IAM che si collega a una risorsa in. AWS

Quando alleghi una policy relativa alle risorse a una versione personalizzata del modello, la policy autorizza utenti, gruppi o ruoli a eseguire l'comprehend:ImportModelazione sulla versione del modello.

Esempio Politica basata sulle risorse per una versione personalizzata del modello

Questo esempio specifica le entità autorizzate nell'attributo. Principal La risorsa «*» si riferisce alla versione specifica del modello a cui allegate la policy.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "comprehend:ImportModel", "Resource": "*", "Principal": { "AWS": [ "arn:aws:iam::111122223333:root", "arn:aws:iam::444455556666:user/ExampleUser", "arn:aws:iam::123456789012:role/ExampleRole" ] } } ] }

Per le politiche associate ai modelli personalizzati, comprehend:ImportModel è l'unica azione supportata da Amazon Comprehend.

Per ulteriori informazioni sulle politiche basate sulle risorse, consulta Politiche basate sull'identità e politiche basate sulle risorse nella Guida per l'utente IAM.

Fase 1: Aggiungere una policy basata sulle risorse a un modello personalizzato

Puoi aggiungere una policy basata sulle risorse utilizzando l'API Amazon Comprehend o Amazon AWS Management Console Comprehend. AWS CLI

Puoi usare Amazon Comprehend in. AWS Management Console

Per aggiungere una politica basata sulle risorse
  1. Accedi AWS Management Console e apri la console Amazon Comprehend all'indirizzo https://console.aws.amazon.com/comprehend/

  2. Nel menu di navigazione a sinistra, in Personalizzazione, scegli la pagina che contiene il tuo modello personalizzato:

    1. Se condividi un classificatore di documenti personalizzato, scegli Classificazione personalizzata.

    2. Se condividi un riconoscimento di entità personalizzato, scegli Riconoscimento di entità personalizzato.

  3. Nell'elenco dei modelli, scegli il nome del modello per aprire la relativa pagina dei dettagli.

  4. In Versioni, scegli il nome della versione del modello che desideri condividere.

  5. Nella pagina dei dettagli della versione, scegli la scheda Tag, VPC e policy.

  6. Nella sezione Politica basata sulle risorse, scegli Modifica.

  7. Nella pagina Modifica policy basata sulle risorse, procedi come segue:

    1. Per Nome della politica, inserisci un nome che ti aiuti a riconoscere la politica dopo averla creata.

    2. In Autorizza, specifica una o più delle seguenti entità per autorizzarle a importare il tuo modello:

      Campo Definizione ed esempi

      Principali del servizio

      Identificatori principali dei servizi che possono accedere a questa versione del modello. Per esempio:

      comprehend.amazonaws.com

      Account AWSID

      Account AWSche possono accedere a questa versione del modello. Autorizza tutti gli utenti che appartengono all'account. Per esempio:

      111122223333, 123456789012

      Entità IAM

      ARN per utenti o ruoli che possono accedere a questa versione del modello. Per esempio:

      arn:aws:iam: :111122223333:user/, arn:aws:iam: :444455556666:role/ ExampleUser ExampleRole

  8. In Condividi, puoi copiare l'ARN della versione del modello per aiutarti a condividerlo con la persona che importerà il tuo modello. Quando qualcuno importa un modello personalizzato da un altroAccount AWS, è richiesta la versione del modello ARN.

  9. Selezionare Salva. Amazon Comprehend crea la tua policy basata sulle risorse e la allega al tuo modello.

Per aggiungere una politica basata sulle risorse a un modello personalizzato con, usa il comando. AWS CLI PutResourcePolicy Il comando accetta i parametri seguenti:

  • resource-arn— L'ARN del modello personalizzato, inclusa la versione del modello.

  • resource-policy— Un file JSON che definisce la politica basata sulle risorse da allegare al modello personalizzato.

    Puoi anche fornire la policy come stringa JSON in linea. Per specificare codice JSON valido per la policy, racchiudi i nomi e i valori degli attributi tra virgolette doppie. Se anche il corpo JSON è racchiuso tra virgolette, eviti le virgolette doppie che si trovano all'interno della policy.

  • policy-revision-id— L'ID di revisione che Amazon Comprehend ha assegnato alla politica che stai aggiornando. Se stai creando una nuova politica che non ha una versione precedente, non utilizzare questo parametro. Amazon Comprehend crea l'ID di revisione per te.

Esempio Aggiungi una politica basata sulle risorse a un modello personalizzato utilizzando il comando put-resource-policy

Questo esempio definisce una politica in un file JSON denominato Policyfile.json e la associa a un modello. Il modello è la versione v2 di un classificatore denominato mycf1.

$ aws comprehend put-resource-policy \ > --resource-arn arn:aws:comprehend:us-west-2:111122223333:document-classifier/mycf1/version/v2 \ > --resource-policy file://policyFile.json \ > --policy-revision-id revision-id

Il file JSON per la politica delle risorse contiene i seguenti contenuti:

  • Azione: la politica autorizza l'uso dei principali indicati. comprehend:ImportModel

  • Risorsa: l'ARN del modello personalizzato. La risorsa «*» si riferisce alla versione del modello specificata nel put-resource-policy comando.

  • Principale: la politica autorizza l'utente jane del numero Account AWS 444455556666 e tutti gli utenti del numero 123456789012. Account AWS

{ "Version":"2012-10-17", "Statement":[ {"Sid":"ResourcePolicyForImportModel", "Effect":"Allow", "Action":["comprehend:ImportModel"], "Resource":"*", "Principal": {"AWS": ["arn:aws:iam::444455556666:user/jane", "123456789012"] } } ] }

Per aggiungere una policy basata sulle risorse a un modello personalizzato utilizzando l'API Amazon Comprehend, utilizza l'operazione API. PutResourcePolicy

Puoi anche aggiungere una policy a un modello personalizzato nella richiesta API che crea il modello. A tale scopo, fornisci la policy JSON per il ModelPolicy parametro quando invii una CreateEntityRecognizerrichiesta CreateDocumentClassifieror.

Passaggio 2: fornisci i dettagli che altri devono importare

Ora che hai aggiunto la policy basata sulle risorse al tuo modello personalizzato, hai autorizzato altri utenti di Amazon Comprehend a importare il tuo modello nel loro. Account AWS Tuttavia, prima che possano importare, devi fornire loro i seguenti dettagli:

  • L'Amazon Resource Name (ARN) della versione del modello.

  • Il Regione AWS che contiene il modello. Chiunque importi il tuo modello deve utilizzarloRegione AWS.

  • Se il modello è crittografato e, in caso affermativo, il tipo di AWS KMS chiave che utilizzi: Chiave di proprietà di AWS o chiave gestita dal cliente.

  • Se il modello è crittografato con una chiave gestita dal cliente, devi fornire l'ARN della chiave KMS. Chiunque importi il tuo modello deve includere l'ARN in un ruolo di servizio IAM nel proprio. Account AWS Questo ruolo autorizza Amazon Comprehend a utilizzare la chiave KMS per decrittografare il modello durante l'importazione.

Per ulteriori informazioni su come altri utenti importano il tuo modello, consulta. Importazione di un modello personalizzato da un altro Account AWS