Esempi di policy basate sull'identità per Amazon Comprehend - 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à.

Esempi di policy basate sull'identità per Amazon Comprehend

Per impostazione predefinita, gli utenti e i ruoli non sono autorizzati a creare o modificare risorse Amazon Comprehend. Inoltre, non possono eseguire attività utilizzando AWS Management Console, AWS Command Line Interface (AWS CLI) o AWS API. Per concedere agli utenti il permesso di eseguire azioni sulle risorse di cui hanno bisogno, un IAM amministratore può creare IAM policy. L'amministratore può quindi aggiungere le IAM politiche ai ruoli e gli utenti possono assumerli.

Per informazioni su come creare una politica IAM basata sull'identità utilizzando questi documenti di esempio, consulta Create JSON IAM policy (console) nella Guida per l'IAMutente.

Per dettagli sulle azioni e sui tipi di risorse definiti da Amazon Comprehend, incluso il formato di ARNs per ogni tipo di risorsa, consulta Azioni, risorse e chiavi di condizione per Amazon Comprehend nel Service Authorization Reference.

Best practice per le policy

Le politiche basate sull'identità determinano se qualcuno può creare, accedere o eliminare risorse Amazon Comprehend nel tuo account. Queste azioni possono comportare costi aggiuntivi per l' Account AWS. Quando crei o modifichi policy basate su identità, segui queste linee guida e raccomandazioni:

  • Inizia con le politiche AWS gestite e passa alle autorizzazioni con privilegi minimi: per iniziare a concedere autorizzazioni a utenti e carichi di lavoro, utilizza le politiche gestite che concedono le autorizzazioni per molti casi d'uso comuni.AWS Sono disponibili nel tuo. Account AWS Ti consigliamo di ridurre ulteriormente le autorizzazioni definendo politiche gestite dai AWS clienti specifiche per i tuoi casi d'uso. Per ulteriori informazioni, consulta le politiche AWS gestite o le politiche AWS gestite per le funzioni lavorative nella Guida per l'IAMutente.

  • Applica le autorizzazioni con privilegi minimi: quando imposti le autorizzazioni con le IAM politiche, concedi solo le autorizzazioni necessarie per eseguire un'attività. Puoi farlo definendo le azioni che possono essere intraprese su risorse specifiche in condizioni specifiche, note anche come autorizzazioni con privilegi minimi. Per ulteriori informazioni sull'utilizzo per applicare le autorizzazioni, consulta Politiche e autorizzazioni nella Guida IAM per l'utente. IAM IAM

  • Utilizza le condizioni nelle IAM politiche per limitare ulteriormente l'accesso: puoi aggiungere una condizione alle tue politiche per limitare l'accesso ad azioni e risorse. Ad esempio, puoi scrivere una condizione di policy per specificare che tutte le richieste devono essere inviate utilizzandoSSL. È inoltre possibile utilizzare condizioni per concedere l'accesso alle azioni di servizio se vengono utilizzate tramite uno specifico Servizio AWS, ad esempio AWS CloudFormation. Per ulteriori informazioni, consulta Elementi IAM JSON della politica: Condizione nella Guida IAM per l'utente.

  • Usa IAM Access Analyzer per convalidare IAM le tue policy e garantire autorizzazioni sicure e funzionali: IAM Access Analyzer convalida le policy nuove ed esistenti in modo che aderiscano al linguaggio delle IAM policy () e alle best practice. JSON IAM IAMAccess Analyzer fornisce più di 100 controlli delle politiche e consigli pratici per aiutarti a creare policy sicure e funzionali. Per ulteriori informazioni, consulta Convalida delle politiche con IAM Access Analyzer nella Guida per l'utente. IAM

  • Richiedi l'autenticazione a più fattori (MFA): se hai uno scenario che richiede l'utilizzo di IAM utenti o di un utente root Account AWS, attiva questa opzione MFA per una maggiore sicurezza. Per richiedere MFA quando vengono richiamate API le operazioni, aggiungi MFA delle condizioni alle tue politiche. Per ulteriori informazioni, consulta Secure API access with MFA nella Guida IAM per l'utente.

Per ulteriori informazioni sulle best practice inIAM, consulta la sezione Procedure consigliate in materia di sicurezza IAM nella Guida IAM per l'utente.

Utilizzo della console Amazon Comprehend

Per accedere alla console Amazon Comprehend, devi disporre di un set minimo di autorizzazioni. Queste autorizzazioni devono consentirti di elencare e visualizzare i dettagli sulle risorse Amazon Comprehend presenti nel tuo. Account AWS Se crei una policy basata sull'identità più restrittiva rispetto alle autorizzazioni minime richieste, la console non funzionerà nel modo previsto per le entità (utenti o ruoli) associate a tale policy.

Non è necessario concedere autorizzazioni minime per la console agli utenti che effettuano chiamate solo verso la o la AWS CLI . AWS API Consenti invece l'accesso solo alle azioni che corrispondono all'APIoperazione che stanno cercando di eseguire.

Per le autorizzazioni minime della console Amazon Comprehend, puoi allegare la policy ComprehendReadOnly AWS gestita alle entità. Per ulteriori informazioni, consulta Aggiungere autorizzazioni a un utente nella Guida per l'utente. IAM

Per utilizzare la console Amazon Comprehend, sono inoltre necessarie le autorizzazioni per le azioni mostrate nella seguente politica:

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "iam:ListRoles", "iam:GetRole", "s3:ListAllMyBuckets", "s3:ListBucket", "s3:GetBucketLocation" ], "Effect": "Allow", "Resource": "*" } ] }

La console Amazon Comprehend necessita di queste autorizzazioni aggiuntive per i seguenti motivi:

  • iamautorizzazioni per elencare i IAM ruoli disponibili per il tuo account.

  • s3autorizzazioni per accedere ai bucket e agli oggetti Amazon S3 che contengono i dati per la modellazione degli argomenti.

Quando crei un processo batch asincrono o un lavoro di modellazione di argomenti utilizzando la console, hai la possibilità di fare in modo che la console crei un ruolo per il tuo lavoro. IAM Per creare un IAM ruolo, agli utenti devono essere concesse le seguenti autorizzazioni aggiuntive per creare IAM ruoli e politiche e associare politiche ai ruoli:

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "iam:CreateRole", "iam:CreatePolicy", "iam:AttachRolePolicy" ], "Effect": "Allow", "Resource": "*" }, { "Action": [ "iam:PassRole" ], "Effect": "Allow", "Resource": "arn:aws:iam::*:role/*Comprehend*" } ] }

La console Amazon Comprehend necessita di queste autorizzazioni aggiuntive per i seguenti motivi:

  • iamautorizzazioni per creare ruoli e politiche e per allegare ruoli e politiche. L'iam:PassRoleazione consente alla console di passare il ruolo ad Amazon Comprehend.

Consentire agli utenti di visualizzare le loro autorizzazioni

Questo esempio mostra come è possibile creare una policy che consenta IAM agli utenti di visualizzare le politiche in linea e gestite associate alla loro identità utente. Questa politica include le autorizzazioni per completare questa azione sulla console o utilizzando o a livello di codice. AWS CLI AWS API

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }

Autorizzazioni necessarie per eseguire azioni di analisi dei documenti

La seguente politica di esempio concede le autorizzazioni per utilizzare le azioni di analisi dei documenti di Amazon Comprehend:

{ "Version": "2012-10-17", "Statement": [{ "Sid": "AllowDetectActions", "Effect": "Allow", "Action": [ "comprehend:DetectEntities", "comprehend:DetectKeyPhrases", "comprehend:DetectDominantLanguage", "comprehend:DetectSentiment", "comprehend:DetectTargetedSentiment", "comprehend:DetectSyntax", "textract:DetectDocumentText", "textract:AnalyzeDocument" ], "Resource": "*" } ] }

La policy contiene una dichiarazione che concede il permesso di utilizzare le azioniDetectEntities,,DetectKeyPhrases, DetectDominantLanguageDetectTargetedSentiment, DetectSentiment e. DetectSyntax La dichiarazione politica concede inoltre le autorizzazioni per utilizzare due metodi Amazon API Textract. Amazon Comprehend utilizza questi metodi per estrarre testo da file di immagini e documenti scansionatiPDF. Puoi rimuovere queste autorizzazioni per gli utenti che non eseguono mai inferenze personalizzate per questi tipi di file di input.

Un utente con questa politica non sarebbe in grado di eseguire azioni batch o azioni asincrone nel proprio account.

La policy non specifica l'elemento Principal poiché in una policy basata su identità non si specifica il principale che ottiene l'autorizzazione. Quando alleghi una policy a un utente, l'utente è il principale implicito. Quando si associa una politica di autorizzazioni a un IAM ruolo, il principale identificato nella politica di attendibilità del ruolo ottiene le autorizzazioni.

Per una tabella che mostra tutte le API azioni di Amazon Comprehend e le risorse a cui si applicano, consulta Azioni, risorse e chiavi di condizione per Amazon Comprehend nel Service Authorization Reference.

Autorizzazioni necessarie per utilizzare la crittografia KMS

Per utilizzare appieno Amazon Key Management Service (KMS) per la crittografia di dati e processi in un processo asincrono, devi concedere le autorizzazioni per le azioni mostrate nella seguente politica:

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "kms:CreateGrant" ], "Effect": "Allow", "Resource": "*" }, { "Action": [ "kms:Decrypt", "kms:GenerateDatakey" ], "Effect": "Allow", "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": [ "s3.region.amazonaws.com" ] } } } ] }

Quando crei un lavoro asincrono con Amazon Comprehend, usi i dati di input archiviati su Amazon S3. Con S3, hai la possibilità di crittografare i dati archiviati, che vengono crittografati da S3 e non da Amazon Comprehend. Possiamo decrittografare e leggere i dati di input crittografati se fornisci l'kms:Decryptautorizzazione per la chiave con cui i dati di input originali sono stati crittografati per il ruolo di accesso ai dati utilizzato dal job Amazon Comprehend.

Hai anche la possibilità di utilizzare chiavi KMS gestite dal cliente (CMK) per crittografare i risultati di output su S3, nonché il volume di storage utilizzato durante l'elaborazione del lavoro. Quando si esegue questa operazione, è possibile utilizzare la stessa KMS chiave per entrambi i tipi di crittografia, ma ciò non è necessario. Durante la creazione del lavoro sono disponibili campi separati per specificare le chiavi per la crittografia dell'output e la crittografia del volume ed è anche possibile utilizzare una KMS chiave di un account diverso.

Quando si utilizza KMS la crittografia, è richiesta kms:CreateGrant l'autorizzazione per la crittografia dei volumi e kms:GenerateDataKey l'autorizzazione è necessaria per la crittografia dei dati di output. Per leggere input crittografati (come quando i dati di input sono già crittografati da Amazon S3), è kms:Decrypt richiesta l'autorizzazione. Il IAM ruolo deve concedere queste autorizzazioni secondo necessità. Tuttavia, se la chiave proviene da un account diverso da quello attualmente utilizzato, la politica KMS chiave per quella chiave kms deve fornire queste autorizzazioni anche al ruolo di accesso ai dati per il lavoro.

AWS politiche gestite (predefinite) per Amazon Comprehend

AWS affronta molti casi d'uso comuni fornendo IAM politiche autonome create e amministrate da. AWS Queste policy AWS gestite concedono le autorizzazioni necessarie per i casi d'uso comuni in modo da evitare di dover verificare quali autorizzazioni sono necessarie. Per ulteriori informazioni, consulta le politiche AWS gestite nella Guida per l'IAMutente.

Le seguenti politiche AWS gestite, che puoi allegare agli utenti del tuo account, sono specifiche di Amazon Comprehend:

  • ComprehendFullAccess— Garantisce l'accesso completo alle risorse di Amazon Comprehend, inclusa l'esecuzione di lavori di modellazione tematica. Include il permesso di elencare e ottenere ruoli. IAM

  • ComprehendReadOnly— Concede l'autorizzazione a eseguire tutte le azioni di Amazon Comprehend StartDominantLanguageDetectionJob tranneStartEntitiesDetectionJob,,StartKeyPhrasesDetectionJob, StartSentimentDetectionJobStartTargetedSentimentDetectionJob, e. StartTopicsDetectionJob

È necessario applicare la seguente politica aggiuntiva a tutti gli utenti che utilizzeranno Amazon Comprehend:

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "iam:PassRole" ], "Effect": "Allow", "Resource": "arn:aws:iam::*:role/*Comprehend*" } ] }

Puoi rivedere le politiche di autorizzazione gestite accedendo alla IAM console e cercando lì politiche specifiche.

Queste politiche funzionano quando si utilizza AWS SDKs o il AWS CLI.

Puoi anche creare IAM politiche personalizzate per consentire le autorizzazioni per le azioni e le risorse di Amazon Comprehend. Puoi allegare queste politiche personalizzate agli utenti, ai gruppi o ai ruoli che richiedono tali autorizzazioni.

Autorizzazioni basate sui ruoli necessarie per le operazioni asincrone

Per utilizzare le operazioni asincrone di Amazon Comprehend, devi concedere ad Amazon Comprehend l'accesso al bucket Amazon S3 che contiene la tua raccolta di documenti. A tale scopo, puoi creare un ruolo di accesso ai dati nel tuo account con una politica di fiducia per considerare affidabile il responsabile del servizio Amazon Comprehend. Per ulteriori informazioni sulla creazione di un ruolo, vedere Creazione di un ruolo per delegare le autorizzazioni a un AWS servizio nella Guida per l'utente di AWS Identity and Access Management.

Di seguito viene illustrato un esempio di politica di fiducia per il ruolo creato. Per facilitare la prevenzione della confusione tra i deputati, limitate l'ambito dell'autorizzazione utilizzando una o più chiavi di contesto relative alle condizioni globali. Imposta il valore aws:SourceAccount sull'ID del tuo account. Se utilizzate la ArnEquals condizione, impostate il aws:SourceArn ARN valore sul job. Usa un carattere jolly per il numero del lavoro inARN, poiché Amazon Comprehend genera questo numero come parte della creazione del lavoro.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "comprehend.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" }, "ArnEquals": { "aws:SourceArn": "arn:aws:comprehend:us-west-2:111122223333:pii-entities-detection-job/*" } } } ] }

Dopo aver creato il ruolo, crea una politica di accesso per quel ruolo. Ciò dovrebbe concedere Amazon S3 GetObject e ListBucket le autorizzazioni al bucket Amazon S3 che contiene i dati di input e l'autorizzazione PutObject Amazon S3 al bucket di dati di output Amazon S3.

Autorizzazioni per consentire tutte le azioni di Amazon Comprehend

Dopo la registrazione AWS, crei un utente amministratore per gestire il tuo account, inclusa la creazione di utenti e la gestione delle relative autorizzazioni.

Puoi scegliere di creare un utente con le autorizzazioni per tutte le azioni di Amazon Comprehend (considera questo utente un amministratore specifico del servizio) per lavorare con Amazon Comprehend. È possibile collegare la policy di autorizzazione seguente a tale utente.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAllComprehendActions", "Effect": "Allow", "Action": [ "comprehend:*", "iam:ListRoles", "iam:GetRole", "s3:ListAllMyBuckets", "s3:ListBucket", "s3:GetBucketLocation", "iam:CreateRole", "iam:CreatePolicy", "iam:AttachRolePolicy", "kms:CreateGrant", "kms:Decrypt", "kms:GenerateDatakey" ], "Resource": "*" }, { "Action": [ "iam:PassRole" ], "Effect": "Allow", "Resource": "arn:aws:iam::*:role/*Comprehend*" } ] }

Queste autorizzazioni possono essere modificate per quanto riguarda la crittografia nei seguenti modi:

  • Per consentire ad Amazon Comprehend di analizzare i documenti archiviati in un bucket S3 crittografato, il IAM ruolo deve disporre dell'autorizzazione. kms:Decrypt

  • Per consentire ad Amazon Comprehend di crittografare i documenti archiviati su un volume di storage collegato all'istanza di calcolo che elabora il processo di analisi, il IAM ruolo deve disporre dell'autorizzazione. kms:CreateGrant

  • Per consentire ad Amazon Comprehend di crittografare i risultati di output nel proprio bucket S3, il IAM ruolo deve disporre dell'autorizzazione. kms:GenerateDataKey

Autorizzazioni per consentire azioni di modellazione degli argomenti

La seguente politica di autorizzazione concede le autorizzazioni agli utenti per eseguire le operazioni di modellazione tematica di Amazon Comprehend.

{ "Version": "2012-10-17", "Statement": [{ "Sid": "AllowTopicModelingActions", "Effect": "Allow", "Action": [ "comprehend:DescribeTopicsDetectionJob", "comprehend:ListTopicsDetectionJobs", "comprehend:StartTopicsDetectionJob", ], "Resource": "*" ] } ] }

Autorizzazioni necessarie per un processo di analisi asincrono personalizzato

Importante

Se disponi di una IAM politica che limita l'accesso al modello, non sarai in grado di completare un lavoro di inferenza con un modello personalizzato. La tua IAM policy dovrebbe essere aggiornata in modo da includere una risorsa wildcard per un processo di analisi asincrona personalizzato.

Se si utilizza StartDocumentClassificationJob and StartEntitiesDetectionJobAPIs, è necessario aggiornare la IAM politica a meno che non si utilizzino attualmente caratteri jolly come risorse. Se state StartEntitiesDetectionJobutilizzando un modello già addestrato, ciò non avrà alcun impatto su di voi e non è necessario apportare alcuna modifica.

La seguente politica di esempio contiene un riferimento obsoleto.

{ "Action": [ "comprehend:StartDocumentClassificationJob", "comprehend:StartEntitiesDetectionJob", ], "Resource": [ "arn:aws:comprehend:us-east-1:123456789012:document-classifier/myClassifier", "arn:aws:comprehend:us-east-1:123456789012:entity-recognizer/myRecognizer" ], "Effect": "Allow" }

Questa è la politica aggiornata che è necessario utilizzare per eseguire correttamente and. StartDocumentClassificationJob StartEntitiesDetectionJob

{ "Action": [ "comprehend:StartDocumentClassificationJob", "comprehend:StartEntitiesDetectionJob", ], "Resource": [ "arn:aws:comprehend:us-east-1:123456789012:document-classifier/myClassifier", "arn:aws:comprehend:us-east-1:123456789012:document-classification-job/*", "arn:aws:comprehend:us-east-1:123456789012:entity-recognizer/myRecognizer", "arn:aws:comprehend:us-east-1:123456789012:entities-detection-job/*" ], "Effect": "Allow" }