Creazione di un ruolo di servizio per Agent per 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à.

Creazione di un ruolo di servizio per Agent per Amazon Bedrock

Per utilizzare un ruolo di servizio personalizzato per gli agenti anziché quello creato automaticamente da Amazon Bedrock, crea un ruolo IAM e assegna le seguenti autorizzazioni seguendo la procedura descritta in Creazione di un ruolo per delegare le autorizzazioni a un servizio. AWS

  • Policy di attendibilità

  • Una policy contenente le seguenti autorizzazioni basate sull’identità:

    • Accesso ai modelli Amazon Bedrock di base.

    • Accesso agli oggetti Amazon S3 contenenti gli schemi OpenAPI per i gruppi di operazioni presenti nei tuoi agenti.

    • Autorizzazioni per consentire ad Amazon Bedrock di eseguire query sulle knowledge base che desideri collegare ai tuoi agenti.

    • Se una delle seguenti situazioni riguarda il tuo caso d’uso, aggiungi l’istruzione alla policy o aggiungi una policy con l’istruzione al ruolo di servizio:

      • (Facoltativo) Se abiliti la collaborazione multiagente, le autorizzazioni per ottenere gli alias e invocare gli agenti collaboratori.

      • (Facoltativo) Se associ un throughput assegnato all’alias dell’agente, le autorizzazioni per eseguire l’invocazione del modello utilizzando tale throughput.

      • (Facoltativo) Se associ un guardrail al tuo agente, le autorizzazioni per applicare quel guardrail. Se il guardrail è crittografato con una chiave KMS, il ruolo di servizio avrà bisogno anche delle autorizzazioni per decrittografare la chiave.

      • (Facoltativo) Se crittografi l’agente con una chiave KMS, le autorizzazioni per decrittografare la chiave.

Inoltre, che utilizzi o meno un ruolo personalizzato, devi collegare una policy basata sulle risorse alle funzioni Lambda dei gruppi di operazioni presenti nei tuoi agenti, in modo da fornire al ruolo di servizio le autorizzazioni necessarie per accedere alle funzioni. Per ulteriori informazioni, consulta Policy basata sulle risorse per consentire ad Amazon Bedrock di invocare una funzione Lambda del gruppo di operazioni.

Relazione di attendibilità

La seguente policy di attendibilità consente ad Amazon Bedrock di assumere questo ruolo e creare e gestire agenti. Sostituisci se necessario. ${values} La policy contiene chiavi di condizione opzionali (vedi Chiavi di condizione Amazon Bedrock e chiavi di contesto delle condizioni globali AWS) nel campo Condition che ti consigliamo di utilizzare come best practice di sicurezza.

Nota

Come procedura consigliata per motivi di sicurezza, sostituiscili * con un agente specifico IDs dopo averli creati.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012" }, "ArnLike": { "AWS:SourceArn": "arn:aws:bedrock:us-east-1:123456789012:agent/*" } } } ] }

Autorizzazioni basate sull’identità per il ruolo di servizio degli agenti.

Allega la seguente politica per fornire le autorizzazioni per il ruolo di servizio, ${values} sostituendole se necessario. La policy contiene le seguenti istruzioni. Ometti un’istruzione se non è applicabile al tuo caso d’uso. La policy contiene chiavi di condizione facoltative (vedi Chiavi di condizione per Amazon Bedrock e Chiavi di contesto delle condizioni globali di AWS) nel campo Condition che ti consigliamo di utilizzare come best practice di sicurezza.

Nota

Se crittografi l’agente con una chiave KMS gestita dal cliente, consulta Crittografia delle risorse degli agenti per gli agenti creati prima del 22 gennaio 2025 per informazioni su eventuali autorizzazioni ulteriori da aggiungere.

  • Autorizzazioni per ricorrere ai modelli di fondazione di Amazon Bedrock per eseguire l’inferenza dei modelli sui prompt utilizzati nell’orchestrazione dell’agente.

  • Autorizzazioni per accedere agli schemi API dei gruppi di operazioni dell’agente in Amazon S3. Ometti questa dichiarazione se il tuo agente non dispone di gruppi di operazioni.

  • Autorizzazioni per accedere alle knowledge base associate all’agente. Ometti questa dichiarazione se l’agente non dispone di knowledge base associate.

  • Autorizzazioni per accedere a una knowledge base di terze parti (Pinecone o Redis Enterprise Cloud) associata all’agente. Ometti questa dichiarazione se la tua knowledge base è proprietaria (Amazon OpenSearch Serverless o Amazon Aurora) o se il tuo agente non dispone di knowledge base associate.

  • Autorizzazioni per accedere a un prompt da Gestione dei prompt. Ometti questa dichiarazione se non intendi testare un prompt da Gestione dei prompt con il tuo agente nella console Amazon Bedrock.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AgentModelInvocationPermissions", "Effect": "Allow", "Action": [ "bedrock:InvokeModel" ], "Resource": [ "arn:aws:bedrock:us-east-1::foundation-model/anthropic.claude-v2", "arn:aws:bedrock:us-east-1::foundation-model/anthropic.claude-v2:1", "arn:aws:bedrock:us-east-1::foundation-model/anthropic.claude-instant-v1" ] }, { "Sid": "AgentActionGroupS3", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket/SchemaJson" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "123456789012" } } }, { "Sid": "AgentKnowledgeBaseQuery", "Effect": "Allow", "Action": [ "bedrock:Retrieve", "bedrock:RetrieveAndGenerate" ], "Resource": [ "arn:aws:bedrock:us-east-1:123456789012:knowledge-base/knowledge-base-id" ] }, { "Sid": "Agent3PKnowledgeBase", "Effect": "Allow", "Action": [ "bedrock:AssociateThirdPartyKnowledgeBase" ], "Resource": "arn:aws:bedrock:us-east-1:123456789012:knowledge-base/knowledge-base-id", "Condition": { "StringEquals": { "bedrock:ThirdPartyKnowledgeBaseCredentialsSecretArn": "arn:aws:kms:us-east-1:123456789012:key/KeyId" } } }, { "Sid": "AgentPromptManagementConsole", "Effect": "Allow", "Action": [ "bedrock:GetPrompt" ], "Resource": [ "arn:aws:bedrock:us-east-1:123456789012:prompt/prompt-id" ] } ] }

(Facoltativo) Policy basata sull’identità per consentire ad Amazon Bedrock di utilizzare il throughput assegnato con il proprio alias dell’agente

Se associ un Throughput assegnato a un alias dell’agente, collega la policy basata sull’identità indicata di seguito al ruolo di servizio o aggiungi l’istruzione alla policy in Autorizzazioni basate sull’identità per il ruolo di servizio degli agenti..

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "UseProvisionedThroughput", "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:GetProvisionedModelThroughput" ], "Resource": [ "arn:aws:bedrock:us-east-1:123456789012:provisioned-model/${provisioned-model-id}" ] } ] }

(Facoltativo) Policy basata sull’identità per consentire ad Amazon Bedrock di associare e invocare gli agenti collaboratori

Se abiliti la collaborazione multiagente, collega la seguente policy basata sull’identità al ruolo di servizio o aggiungi l’istruzione alla policy in Autorizzazioni basate sull’identità per il ruolo di servizio degli agenti..

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AmazonBedrockAgentMultiAgentsPolicyProd", "Effect": "Allow", "Action": [ "bedrock:GetAgentAlias", "bedrock:InvokeAgent" ], "Resource": [ "arn:aws:bedrock:us-east-1:123456789012:agent-alias/${agent-id}/${agent-alias-id}" ] } ] }

(Facoltativo) Policy basata sull’identità per consentire ad Amazon Bedrock di utilizzare i guardrail con il proprio agente

Se associ un guardrail al tuo agente, collega la policy basata sull’identità indicata di seguito al ruolo di servizio o aggiungi l’istruzione alla policy in Autorizzazioni basate sull’identità per il ruolo di servizio degli agenti..

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "ApplyGuardrail", "Effect": "Allow", "Action": "bedrock:ApplyGuardrail", "Resource": [ "arn:aws:bedrock:us-east-1:123456789012:guardrail/${guardrail-id}" ] } ] }

(Facoltativo) Policy basata sull’identità per consentire ad Amazon Bedrock di accedere ai file da S3 da utilizzare con l’interpretazione del codice

Se abiliti Abilitazione dell’interpretazione del codice in Amazon Bedrock, collega la seguente policy basata sull’identità al ruolo di servizio o aggiungi l’istruzione alla policy in Autorizzazioni basate sull’identità per il ruolo di servizio degli agenti.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AmazonBedrockAgentFileAccess", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion", "s3:GetObjectVersionAttributes", "s3:GetObjectAttributes" ], "Resource": [ "arn:aws:s3:::[[customerProvidedS3BucketWithKey]]" ] } ] }

Policy basata sulle risorse per consentire ad Amazon Bedrock di invocare una funzione Lambda del gruppo di operazioni

Segui i passaggi indicati 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 i gruppi di azione del tuo agente, sostituendola se necessario. ${values} La policy contiene chiavi di condizione opzionali (vedi Chiavi di condizione Amazon Bedrock e chiavi di contesto delle condizioni globali AWS) nel campo Condition che ti consigliamo di utilizzare come best practice di sicurezza.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AccessLambdaFunction", "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": "lambda:InvokeFunction", "Resource": "arn:aws:lambda:us-east-1:123456789012:function:function-name", "Condition": { "StringEquals": { "AWS:SourceAccount": "123456789012" }, "ArnLike": { "AWS:SourceArn": "arn:aws:bedrock:us-east-1:123456789012:agent/${agent-id}" } } } ] }