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à.
Ruoli IAM per AgentCore i pagamenti
Riepilogo dei ruoli
AgentCore payments utilizza un modello IAM a cinque ruoli che separa amministrazione, gestione, esecuzione degli agenti, operazioni di servizio e abbonamento a AWS Marketplace (solo Coinbase). Configura le autorizzazioni IAM in base alla persona che corrisponde al tuo ruolo.
| Ruolo | Scopo |
|---|---|
|
Amministratore () ControlPlaneRole |
Gestisce i gestori dei pagamenti, i connettori e i fornitori di credenziali. Per Coinbase, questo ruolo richiede anche la policy AWS gestita per l'iscrizione |
|
Agente sviluppatore () ManagementRole |
Gestisce gli strumenti e le sessioni di pagamento, non può eseguire pagamenti |
|
Esecuzione dei pagamenti (ProcessPaymentRole) |
Esegue le operazioni di pagamento per conto degli agenti |
|
Ruolo del servizio () ResourceRetrievalRole |
Presupposto dai AgentCore pagamenti in fase di esecuzione per il recupero delle credenziali |
|
Abbonamento al Marketplace ( |
Per Coinbase, sottoscrive l'account alla lista di Coinbase Wallets for AgentCore Payments nel Marketplace. AWS Si tratta di una politica AWS gestita associata all'identità dell'amministratore, non di un ruolo assumibile separato. |
Suggerimento
Puoi automatizzare i passaggi in questa pagina con l'abilità AgentCore Pagamenti nel toolkit per AWS agenti. L'abilità fa parte del plug-in aws-agents e consente a un agente di codifica AI di creare il Payment Manager, il connettore, il fornitore di credenziali, lo strumento di pagamento e la sessione utilizzando la agentcore CLI e aggiungere uno strumento di elaborazione dei pagamenti all'agente. Per i dettagli, consulta il quickstart e il toolkit per gli agenti attivi. AWS GitHub
Perché la separazione dei ruoli è importante
Separare la gestione dei pagamenti dall'esecuzione dei pagamenti impedisce a un'unica identità compromessa di creare sessioni con budget illimitati ed eseguire pagamenti relativi a tali sessioni. L'attivazione esplicita ProcessPayment nel ruolo di gestione Deny impone questo limite. Ciò garantisce inoltre che gli audit trail distinguano chiaramente chi ha configurato le risorse di pagamento da chi ha eseguito le transazioni.
Autorizzazioni di amministratore () ControlPlaneRole
Per gli amministratori che gestiscono i gestori dei pagamenti, i connettori e i fornitori di credenziali:
Nota
Per utilizzare Coinbase come fornitore di servizi di pagamento, l'amministratore deve inoltre iscrivere l'account alla lista di Coinbase Wallets for AgentCore Payments nel Marketplace. AWS Ciò richiede la policy gestita. AWS AWSMarketplaceManageSubscriptions Con questo abbonamento, i costi di utilizzo del portafoglio Coinbase vengono consolidati nella AWS fattura mensile in base ai prezzi di Coinbase sul sito web di
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowPaymentManagerOperations", "Effect": "Allow", "Action": [ "bedrock-agentcore:CreatePaymentManager", "bedrock-agentcore:GetPaymentManager", "bedrock-agentcore:ListPaymentManagers", "bedrock-agentcore:DeletePaymentManager", "bedrock-agentcore:UpdatePaymentManager" ], "Resource": [ "arn:aws:bedrock-agentcore:*:111122223333:payment-manager/*" ] }, { "Sid": "AllowPaymentConnectorOperations", "Effect": "Allow", "Action": [ "bedrock-agentcore:CreatePaymentConnector", "bedrock-agentcore:GetPaymentConnector", "bedrock-agentcore:ListPaymentConnectors", "bedrock-agentcore:DeletePaymentConnector", "bedrock-agentcore:UpdatePaymentConnector" ], "Resource": [ "arn:aws:bedrock-agentcore:*:111122223333:payment-manager/*/connector/*" ] }, { "Sid": "AllowCredentialProviderOperations", "Effect": "Allow", "Action": [ "bedrock-agentcore:CreatePaymentCredentialProvider", "bedrock-agentcore:GetPaymentCredentialProvider", "bedrock-agentcore:ListPaymentCredentialProviders", "bedrock-agentcore:DeletePaymentCredentialProvider", "bedrock-agentcore:UpdatePaymentCredentialProvider" ], "Resource": [ "arn:aws:bedrock-agentcore:*:111122223333:token-vault/*/paymentcredentialprovider/*" ] }, { "Sid": "AllowVendedLogDelivery", "Effect": "Allow", "Action": [ "bedrock-agentcore:AllowVendedLogDeliveryForResource" ], "Resource": [ "arn:aws:bedrock-agentcore:*:111122223333:payment-manager/*" ] }, { "Sid": "AllowPassResourceRetrievalRole", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::111122223333:role/AgentCorePaymentsResourceRetrievalRole", "Condition": { "StringEquals": { "iam:PassedToService": "bedrock-agentcore.amazonaws.com" } } } ] }
Per abbonarsi alla quotazione di Coinbase Wallets for AgentCore Payments nel AWS Marketplace, l'identità dell'amministratore necessita anche della policy gestita. AWS AWSMarketplaceManageSubscriptions Collegala al ruolo (o utente) IAM dell'amministratore. Ad esempio, con la AWS CLI:
aws iam attach-role-policy \ --role-name <administrator-role-name> \ --policy-arn <AWSMarketplaceManageSubscriptions-policy-arn>
Autorizzazioni per sviluppatori dell'agente () ManagementRole
Per il codice deterministic/human -in-the-loop (HITL) che gestisce gli strumenti e le sessioni di pagamento ma non esegue direttamente i pagamenti:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowPaymentManagement", "Effect": "Allow", "Action": [ "bedrock-agentcore:CreatePaymentInstrument", "bedrock-agentcore:GetPaymentInstrument", "bedrock-agentcore:ListPaymentInstruments", "bedrock-agentcore:DeletePaymentInstrument", "bedrock-agentcore:CreatePaymentSession", "bedrock-agentcore:GetPaymentSession", "bedrock-agentcore:ListPaymentSessions", "bedrock-agentcore:DeletePaymentSession" ], "Resource": [ "arn:aws:bedrock-agentcore:*:111122223333:payment-manager/*" ] }, { "Sid": "DenyProcessPayment", "Effect": "Deny", "Action": "bedrock-agentcore:ProcessPayment", "Resource": "*" } ] }
Nota
Questa politica nega esplicitamente di ProcessPayment imporre la separazione dei compiti tra le operazioni di gestione e l'esecuzione dei pagamenti. Ciò garantisce che solo percorsi di codice deterministici possano impostare le operazioni del piano di controllo, mentre l'esecuzione agentica è in grado di elaborare i pagamenti solo senza sovrascrivere i budget o creare strumenti di pagamento per ovviare a questo problema.
Autorizzazioni di esecuzione dei pagamenti () ProcessPaymentRole
Per i percorsi di codice deterministici che eseguono le transazioni di pagamento per conto degli agenti:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowProcessPayment", "Effect": "Allow", "Action": "bedrock-agentcore:ProcessPayment", "Resource": [ "arn:aws:bedrock-agentcore:*:111122223333:payment-manager/*" ] }, { "Sid": "AllowPaymentReadOperations", "Effect": "Allow", "Action": [ "bedrock-agentcore:GetPaymentInstrument", "bedrock-agentcore:GetPaymentInstrumentBalance", "bedrock-agentcore:GetPaymentSession" ], "Resource": [ "arn:aws:bedrock-agentcore:*:111122223333:payment-manager/*" ] } ] }
Importante
Non includete autorizzazioni di PaymentSession scrittura (ad esempioCreatePaymentSession) e ProcessPayment svolgete lo stesso ruolo, altrimenti il chiamante può aggirare i limiti di pagamento creando nuove sessioni con budget elevati.
Autorizzazioni relative ai ruoli di servizio () ResourceRetrievalRole
I AgentCore pagamenti in fase di esecuzione assumono il seguente ruolo di servizio per recuperare le credenziali e gestire le identità dei carichi di lavoro. Non è assegnato a utenti umani.
Policy di attendibilità
Il ruolo del servizio deve fidarsi del responsabile del bedrock-agentcore.amazonaws.com servizio. La seguente politica di fiducia riguarda l'accesso a un account e a un gestore dei pagamenti specifici:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "bedrock-agentcore.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "<account>" }, "ArnLike": { "aws:SourceArn": "arn:aws:bedrock-agentcore:<region>:<account>:payment-manager/<payment-manager-name>-*" } } } ] }
Autorizzazioni di base (allegate alla creazione di Payment Manager)
Quando viene creato un Payment Manager, le seguenti autorizzazioni sono associate al ruolo del servizio. Queste consentono al Payment Manager di accedere all'identità del carico di lavoro e alle operazioni relative ai token di pagamento:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "WorkloadIdentityManagement", "Effect": "Allow", "Action": [ "bedrock-agentcore:CreateWorkloadIdentity", "bedrock-agentcore:DeleteWorkloadIdentity" ], "Resource": [ "arn:aws:bedrock-agentcore:<region>:<account>:workload-identity-directory/default", "arn:aws:bedrock-agentcore:<region>:<account>:workload-identity-directory/default/workload-identity/*" ] }, { "Sid": "WorkloadIdentityAccess", "Effect": "Allow", "Action": [ "bedrock-agentcore:GetWorkloadAccessToken" ], "Resource": [ "arn:aws:bedrock-agentcore:<region>:<account>:workload-identity-directory/default", "arn:aws:bedrock-agentcore:<region>:<account>:workload-identity-directory/default/workload-identity/<payment-manager-name>-*" ] }, { "Sid": "PaymentTokenBaseAccess", "Effect": "Allow", "Action": [ "bedrock-agentcore:GetResourcePaymentToken" ], "Resource": [ "arn:aws:bedrock-agentcore:<region>:<account>:token-vault/default", "arn:aws:bedrock-agentcore:<region>:<account>:workload-identity-directory/default", "arn:aws:bedrock-agentcore:<region>:<account>:workload-identity-directory/default/workload-identity/<payment-manager-name>-*" ] }, { "Sid": "PaymentCredentialProviderProvisioning", "Effect": "Allow", "Action": [ "bedrock-agentcore:CreatePaymentCredentialProvider", "bedrock-agentcore:GetPaymentCredentialProvider", "bedrock-agentcore:TagResource" ], "Resource": [ "arn:aws:bedrock-agentcore:<region>:<account>:token-vault/<token-vault-id>", "arn:aws:bedrock-agentcore:<region>:<account>:token-vault/<token-vault-id>/paymentcredentialprovider/*" ] } ] }
Autorizzazioni KMS
Se configuri una chiave AWS KMS gestita dal cliente sul tuo Payment Manager, aggiungi le seguenti autorizzazioni al ruolo del servizio:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "KMSPermissions", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": [ "arn:aws:kms:<region>:<account>:key/<key-id>" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "<account>" }, "StringLike": { "kms:EncryptionContext:aws:payments-manager:arn": "arn:aws:bedrock-agentcore:<region>:<account>:payment-manager/*" } } } ] }
Per-connector autorizzazioni
Ogni volta che un connettore di pagamento viene aggiunto al Payment Manager, le seguenti autorizzazioni vengono aggiunte al ruolo del servizio. Queste garantiscono l'accesso allo specifico fornitore di credenziali di pagamento e ai relativi segreti di protezione:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "PaymentTokenAccess", "Effect": "Allow", "Action": [ "bedrock-agentcore:GetResourcePaymentToken" ], "Resource": [ "<payment-credential-provider-arn>" ] }, { "Sid": "SecretsManagerAccess", "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": [ "<secret-arns>" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "<account>" } } } ] }
Utilizzo di un ruolo esistente
Se scegli di utilizzare un ruolo di servizio esistente anziché crearne uno nuovo, assicurati che il ruolo abbia:
-
La politica di fiducia mostrata sopra, con
bedrock-agentcore.amazonaws.com.rproxy.goskope.comcome principale fidato. -
Le autorizzazioni di base per l'identità del carico di lavoro e l'accesso ai token di pagamento.
-
Per-connector autorizzazioni per ogni fornitore di credenziali di pagamento a cui fanno riferimento i connettori del Payment Manager.
Nota
I ruoli Amministratore, Agente, sviluppatore ed Esecuzione dei pagamenti utilizzano una politica di fiducia degli account standard che arn:aws:iam::111122223333:root consente di assumerli.
Ad esempio, le politiche IAM, vedi Gestione delle identità e degli accessi per Amazon Bedrock AgentCore.