Crea un ruolo di servizio per i flussi Amazon Bedrock Prompt in Amazon Bedrock - 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à.

Crea un ruolo di servizio per i flussi Amazon Bedrock Prompt in Amazon Bedrock

Per creare e gestire un flusso di prompt in Amazon Bedrock, devi utilizzare un ruolo di servizio con le autorizzazioni necessarie descritte in questa pagina. Puoi utilizzare un ruolo di servizio che Amazon Bedrock crea automaticamente per te nella console o utilizzarne uno personalizzato tu stesso.

Nota

Se utilizzi il ruolo di servizio che Amazon Bedrock crea automaticamente per te nella console, allegherà le autorizzazioni in modo dinamico se aggiungi nodi al flusso e salvi il flusso. Se rimuovi i nodi, tuttavia, le autorizzazioni non verranno eliminate, quindi dovrai eliminare le autorizzazioni che non ti servono più. Per gestire le autorizzazioni per il ruolo creato per te, segui la procedura descritta in Modificare un ruolo nella Guida per l'utente. IAM

Per creare un ruolo di servizio personalizzato per i flussi Amazon Bedrock Prompt, crea un IAM ruolo seguendo la procedura descritta in Creazione di un ruolo per delegare le autorizzazioni a un servizio. AWS Quindi assegna le seguenti autorizzazioni al ruolo.

  • Policy di attendibilità

  • Le seguenti autorizzazioni basate sull'identità:

    • Accesso ai modelli base di Amazon Bedrock che verranno utilizzati dal prompt flow. Aggiungi ogni modello utilizzato nel flusso di prompt all'elenco. Resource

    • Se richiamate un modello utilizzando Provisioned Throughput, autorizzazioni per accedere e richiamare il modello fornito. Aggiungi ogni modello utilizzato nel flusso di prompt all'elenco. Resource

    • Se richiami un modello personalizzato, autorizzazioni per accedere e richiamare il modello personalizzato. Aggiungi ogni modello utilizzato nel flusso di prompt all'elenco. Resource

    • Autorizzazioni basate sui nodi che aggiungi al flusso:

      • Se includi nodi di prompt che utilizzano i prompt di Prompt management, le autorizzazioni per accedere al prompt. Aggiungi ogni prompt utilizzato nel flusso di prompt all'elenco. Resource

      • Se includi nodi della knowledge base, autorizzazioni per interrogare la knowledge base. Aggiungi all'elenco ogni base di conoscenza richiesta nel flusso di prompt. Resource

      • Se includi nodi agente, autorizzazioni per richiamare un alias dell'agente. Aggiungi ogni agente richiamato nel flusso di prompt all'elenco. Resource

      • Se includi nodi di recupero S3, autorizzazioni per accedere al bucket Amazon S3 da cui verranno recuperati i dati. Aggiungi ogni bucket da cui vengono recuperati i dati all'elenco. Resource

      • Se includi nodi di storage S3, autorizzazioni di scrittura nel bucket Amazon S3 in cui verranno archiviati i dati di output. Aggiungi ogni bucket in cui vengono scritti i dati all'elenco. Resource

      • Se hai crittografato una risorsa richiamata in un flusso di prompt, autorizzazioni per decrittografare la chiave. Aggiungi ogni chiave all'elenco. Resource

Potrebbe inoltre essere necessario allegare le seguenti politiche basate sulle risorse:

Relazione di attendibilità

Allega la seguente politica di attendibilità al ruolo di esecuzione del prompt flow per consentire ad Amazon Bedrock di assumere questo ruolo e gestire un flusso di prompt. Sostituisci il values se necessario. La policy contiene chiavi di condizione opzionali (vedi Condition keys for Amazon Bedrock e AWS global condition context keys) nel Condition campo che ti consigliamo di utilizzare come best practice di sicurezza.

Nota

Come best practice, sostituisci il * con un ID di prompt flow dopo averlo creato.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "FlowsTrustBedrock", "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "${account-id}" }, "ArnLike": { "AWS:SourceArn": "arn:aws:bedrock:${region}:${account-id}:flow/*" } } } ] }

Autorizzazioni basate sull'identità per il ruolo del servizio flows.

Allega la seguente politica per fornire le autorizzazioni per il ruolo di servizio, sostituendo values se necessario. La politica contiene le seguenti dichiarazioni. Ometti una dichiarazione se non è applicabile al tuo caso d'uso. La policy contiene chiavi di condizione opzionali (vedi Condition keys for Amazon Bedrock e AWS global condition context keys) nel Condition campo che ti consigliamo di utilizzare come best practice di sicurezza.

  • Accesso ai modelli base di Amazon Bedrock che verranno utilizzati dal prompt flow. Aggiungi ogni modello utilizzato nel flusso di prompt all'elenco. Resource

  • Se richiamate un modello utilizzando Provisioned Throughput, autorizzazioni per accedere e richiamare il modello fornito. Aggiungi ogni modello utilizzato nel flusso di prompt all'elenco. Resource

  • Se richiami un modello personalizzato, autorizzazioni per accedere e richiamare il modello personalizzato. Aggiungi ogni modello utilizzato nel flusso di prompt all'elenco. Resource

  • Autorizzazioni basate sui nodi che aggiungi al flusso:

    • Se includi nodi di prompt che utilizzano i prompt di Prompt management, le autorizzazioni per accedere al prompt. Aggiungi ogni prompt utilizzato nel flusso di prompt all'elenco. Resource

    • Se includi nodi della knowledge base, autorizzazioni per interrogare la knowledge base. Aggiungi all'elenco ogni base di conoscenza richiesta nel flusso di prompt. Resource

    • Se includi nodi agente, autorizzazioni per richiamare un alias dell'agente. Aggiungi ogni agente richiamato nel flusso di prompt all'elenco. Resource

    • Se includi nodi di recupero S3, autorizzazioni per accedere al bucket Amazon S3 da cui verranno recuperati i dati. Aggiungi ogni bucket da cui vengono recuperati i dati all'elenco. Resource

    • Se includi nodi di storage S3, autorizzazioni di scrittura nel bucket Amazon S3 in cui verranno archiviati i dati di output. Aggiungi ogni bucket in cui vengono scritti i dati all'elenco. Resource

    • Se hai crittografato una risorsa richiamata in un flusso di prompt, autorizzazioni per decrittografare la chiave. Aggiungi ogni chiave all'elenco. Resource

{ "Version": "2012-10-17", "Statement": [ { "Sid": "InvokeModel", "Effect": "Allow", "Action": [ "bedrock:InvokeModel" ], "Resource": [ "arn:aws:bedrock:${region}::foundation-model/${model-id}" ] }, { "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:GetProvisionedModelThroughput" ], "Resource": [ "arn:aws:bedrock:${region}:${account-id}:provisioned-model/${model-id}" ] }, { "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:GetCustomModel" ], "Resource": [ "arn:aws:bedrock:${region}:${account-id}:custom-model/${model-id}" ] }, { "Sid": "UsePromptManagement", "Effect": "Allow", "Action": [ "bedrock:GetPrompt" ], "Resource": [ "arn:aws:bedrock:${region}:${account-id}:prompt/${prompt-id}" ] }, { "Sid": "QueryKnowledgeBase", "Effect": "Allow", "Action": [ "bedrock:Retrieve", "bedrock:RetrieveAndGenerate" ], "Resource": [ "arn:aws:bedrock:${region}:${account-id}:knowledge-base/knowledge-base-id" ] }, { "Sid": "InvokeAgent", "Effect": "Allow", "Action": [ "bedrock:InvokeAgent" ], "Resource": [ "arn:aws:bedrock:${region}:${account-id}:agent-alias/${agent-alias-id}" ] }, { "Sid": "AccessS3Bucket", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::${bucket-name}/*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "${account-id}" } } }, { "Sid": "WriteToS3Bucket", "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::${bucket-name}", "arn:aws:s3:::${bucket-name}/*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "${account-id}" } } }, { "Sid": "KMSPermissions", "Effect": "Allow", "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": [ "arn:aws:kms:${region}:${account-id}:key/${key-id}" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "${account-id}" } } } ] }

Politiche basate sulle risorse per flussi rapidi

Se includi un nodo funzionale Lambda o un nodo Amazon Lex in un flusso di prompt, devi allegare le seguenti politiche a ciascuna risorsa per fornire le autorizzazioni ad Amazon Bedrock di accedervi quando richiama il flusso di prompt.

Policy basata sulle risorse per consentire ad Amazon Bedrock di richiamare una funzione Lambda quando richiama un flusso di prompt

Segui la procedura descritta in Utilizzo delle politiche basate sulle risorse per Lambda e collega la seguente politica basata sulle risorse a una funzione Lambda per consentire ad Amazon Bedrock di accedere alla funzione Lambda per il tuo flusso di prompt, sostituendo il values se necessario. La policy contiene chiavi di condizione opzionali (vedi Condition keys for Amazon Bedrock e AWS global condition context keys) nel Condition campo che ti consigliamo di utilizzare come best practice di sicurezza.

{ "Version": "2012-10-17", "Statement": [{ "Sid": "AllowBedrockToAccessLambdaFunction", "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": "lambda:InvokeFunction", "Resource": "arn:aws:lambda:${region}:${account-id}:function:${function-name}", "Condition": { "StringEquals": { "AWS:SourceAccount": "${account-id}" }, "ArnLike": { "AWS:SourceArn": "arn:aws:bedrock:${region}:${account-id}:flow/${flow-id}" } } }] }

Policy basata sulle risorse per consentire ad Amazon Bedrock di chiamare un bot Amazon Lex

Segui i passaggi indicati in Esempi di policy basate sulle risorse per Amazon Lex e collega la seguente politica basata sulle risorse a un bot Amazon Lex per consentire ad Amazon Bedrock di richiamarlo in un flusso di prompt, sostituendo il values se necessario. La policy contiene chiavi di condizione opzionali (vedi Condition keys for Amazon Bedrock e AWS global condition context keys) nel Condition campo che ti consigliamo di utilizzare come best practice di sicurezza.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowBedrockToAccessLexBot", "Effect": "Allow", "Principal": { "Service": [ "bedrock.amazonaws.com" ] }, "Action": [ "lex:RecognizeUtterance" ], "Resource": [ "arn:aws:lex:${region}:${account-id}:bot-alias/${bot-id}/${bot-alias-id}" ], "Condition": { "StringEquals": { "AWS:SourceAccount": ${account-id} }, "ArnEquals": { "AWS:SourceArn": "arn:aws:bedrock:${region}:${account-id}:flow/${flow-id}" } } } ]

Politica chiave per consentire ad Amazon Bedrock di crittografare e decrittografare un flusso

Segui i passaggi indicati in Creazione di una policy chiave e allega la seguente policy chiave a una KMS chiave per consentire ad Amazon Bedrock di crittografare e decrittografare un flusso con la chiave, sostituendo il values se necessario. La policy contiene chiavi di condizione opzionali (vedi Condition keys for Amazon Bedrock e AWS global condition context keys) nel Condition campo che ti consigliamo di utilizzare come best practice di sicurezza.

{ "Sid": "EncryptFlowKMS", "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext": "arn:aws:bedrock:${region}:${account-id}:flow/${flow-id}" } } }