View a markdown version of this page

Configurazione dell'autorità di certificazione principale per Amazon Bedrock AgentCore Code Interpreter - Fondamento Amazon AgentCore

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

Configurazione dell'autorità di certificazione principale per Amazon Bedrock AgentCore Code Interpreter

Per impostazione predefinita, le sessioni di Amazon Bedrock AgentCore Code Interpreter si affidano solo alle autorità di certificazione riconosciute pubblicamente. Se i tuoi agenti devono accedere a servizi o risorse interne dietro un TLS-intercepting proxy che utilizza certificati firmati da una CA privata, devi fornire i certificati CA root personalizzati all'avvio di una sessione.

Amazon Bedrock AgentCore recupera il contenuto del PEM-encoded certificato da AWS Secrets Manager utilizzando le credenziali del chiamante, ne convalida il X.509 formato e la scadenza e installa i certificati nel trust store del sistema operativo della sessione. Ciò consente all'interprete di codice di stabilire connessioni HTTPS affidabili con le tue risorse interne.

Come funziona

La Root Certificate Authority for Amazon Bedrock AgentCore Code Interpreter funziona come segue:

  1. Fornisci un elenco di posizioni dei certificati, ognuna delle quali rimanda a un segreto in AWS Secrets Manager che contiene un certificato CA PEM-encoded root.

  2. Amazon Bedrock AgentCore utilizza le credenziali del chiamante per recuperare ogni certificato da Secrets Manager. AWS

  3. Ogni certificato viene convalidato per il corretto formato X.509 PEM e verificato che non sia scaduto e non venga utilizzato prima della data di inizio della validità.

  4. I certificati validi vengono distribuiti nel trust store del sistema operativo della sessione, rendendoli disponibili per i runtime di esecuzione del codice e per tutti i client di rete all'interno della sandbox.

I certificati configurati a livello di strumento (tramiteCreateCodeInterpreter) vengono combinati con tutti i certificati forniti all'inizio della sessione. Ciò consente di impostare certificati a livello di organizzazione sullo strumento e aggiungere certificati specifici per la sessione, se necessario.

Nota

La configurazione dei certificati è un'operazione una tantum per sessione. Una volta installati, i certificati non possono essere modificati per la durata della sessione.

Prerequisiti

Prima di configurare i certificati CA root, assicurati di disporre di quanto segue:

  • Hai completato i prerequisiti generali.

  • I tuoi certificati CA root archiviati come AWS segreti in Secrets Manager. Ogni segreto deve contenere un PEM-encoded X.509 certificato valido

  • Autorizzazioni IAM per leggere i segreti dei certificati da AWS Secrets Manager. Aggiungi le seguenti autorizzazioni alla tua policy IAM:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "SecretsManagerCertificateAccess", "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": "arn:aws:secretsmanager:<Region>:<account-id>:secret:<secret-name>" } ] }

Memorizza il tuo certificato in AWS Secrets Manager

Prima di poter utilizzare un certificato CA root con Amazon Bedrock AgentCore Code Interpreter, devi archiviarlo come segreto in AWS Secrets Manager. Il valore segreto deve essere il contenuto del PEM-encoded certificato.

Esempio
AWS CLI
  1. aws secretsmanager create-secret \ --name "my-corporate-root-ca" \ --description "Corporate root CA certificate for AgentCore sessions" \ --secret-string file://my-root-ca.pem \ --region <region>
Boto3
  1. import boto3 client = boto3.client('secretsmanager', region_name='<region>') # Read the PEM certificate file with open('my-root-ca.pem', 'r') as f: cert_content = f.read() response = client.create_secret( Name='my-corporate-root-ca', Description='Corporate root CA certificate for AgentCore sessions', SecretString=cert_content ) print(f"Secret ARN: {response['ARN']}")

Annota l'ARN segreto dell'output. Utilizzerai questo ARN all'avvio delle sessioni con la configurazione del certificato.

Importante

Il segreto deve contenere un PEM-encoded X.509 certificato valido. Il certificato non deve essere scaduto e deve essere entro il suo periodo di validità. Amazon Bedrock AgentCore convalida il formato e la scadenza del certificato prima di installarlo.

Avvia una sessione di interprete di codice con certificati personalizzati

Per avviare una sessione di interprete di codice che consideri attendibili i certificati CA root personalizzati, includi il certificates parametro nella richiesta. StartCodeInterpreterSession

Esempio
AWS CLI
  1. aws bedrock-agentcore start-code-interpreter-session \ --code-interpreter-identifier "aws.codeinterpreter.v1" \ --name "ci-session-with-custom-ca" \ --certificates '[ { "location": { "secretsManager": { "secretArn": "arn:aws:secretsmanager:<region>:<account-id>:secret:<secret-name>" } } } ]'
Boto3
  1. import boto3 client = boto3.client('bedrock-agentcore', region_name='<region>') response = client.start_code_interpreter_session( codeInterpreterIdentifier="aws.codeinterpreter.v1", name="ci-session-with-custom-ca", certificates=[ { "location": { "secretsManager": { "secretArn": "arn:aws:secretsmanager:<region>:<account-id>:secret:<secret-name>" } } } ] ) print(f"Session ID: {response['sessionId']}") print(f"Status: {response['status']}")
API
  1. { "name": "ci-session-with-custom-ca", "certificates": [ { "location": { "secretsManager": { "secretArn": "arn:aws:secretsmanager:<region>:<account-id>:secret:<secret-name>" } } } ] }

Utilizzo di più certificati

È possibile fornire più certificati CA root in una singola sessione di interprete di codice. Ciò è utile quando l'ambiente richiede l'attendibilità di più autorità di certificazione interne, ad esempio CA separate per diversi servizi o ambienti interni.

Esempio
AWS CLI
  1. aws bedrock-agentcore start-code-interpreter-session \ --code-interpreter-identifier "aws.codeinterpreter.v1" \ --name "ci-session-with-multiple-cas" \ --certificates '[ { "location": { "secretsManager": { "secretArn": "arn:aws:secretsmanager:<region>:<account-id>:secret:corporate-root-ca" } } }, { "location": { "secretsManager": { "secretArn": "arn:aws:secretsmanager:<region>:<account-id>:secret:proxy-ca" } } } ]'
Boto3
  1. response = client.start_code_interpreter_session( codeInterpreterIdentifier="aws.codeinterpreter.v1", name="ci-session-with-multiple-cas", certificates=[ { "location": { "secretsManager": { "secretArn": "arn:aws:secretsmanager:<region>:<account-id>:secret:corporate-root-ca" } } }, { "location": { "secretsManager": { "secretArn": "arn:aws:secretsmanager:<region>:<account-id>:secret:proxy-ca" } } } ] )

Configura i certificati a livello di strumento

È possibile configurare i certificati a livello di strumento quando si crea un interprete di codice personalizzato. I certificati configurati a livello di strumento vengono applicati automaticamente a ogni sessione avviata con tale strumento, oltre a tutti i certificati forniti all'inizio della sessione.

Ciò è utile per i certificati a livello di organizzazione che dovrebbero essere considerati attendibili da tutte le sessioni di interprete di codice.

Esempio
Boto3
  1. response = client.create_code_interpreter( name="corporate-code-interpreter", description="Code interpreter with corporate CA trust", certificates=[ { "location": { "secretsManager": { "secretArn": "arn:aws:secretsmanager:<region>:<account-id>:secret:corporate-root-ca" } } } ] ) ci_id = response['codeInterpreterIdentifier'] print(f"Code Interpreter ID: {ci_id}")

Quando si avvia una sessione con un interprete di codice con certificati configurati, i certificati a livello di strumento vengono combinati con qualsiasi certificato a livello di sessione. Tool-level i certificati vengono applicati per primi, seguiti dai certificati a livello di sessione.

Requisiti e limiti dei certificati

I certificati devono soddisfare i seguenti requisiti:

Requisito Informazioni

Formato

PEM-encoded X.509 certificato

Archiviazione

AWS Segreto di Secrets Manager (come valore di stringa, non binario)

Validity

Il certificato non deve essere scaduto e deve essere entro il suo periodo di validità (compreso tra notBefore le notAfter date)

Numero massimo di certificati per sessione

10 per sessione e 10 per strumento. Una sessione può contenere fino a 20 certificati in totale.

Formato ARN segreto

arn:aws:secretsmanager:region:account-id:secret:secret-name

Tipo di posizione

Solo AWS Secrets Manager è supportato come posizione del certificato

Risoluzione dei problemi

La tabella seguente descrive gli errori più comuni e le relative risoluzioni durante la configurazione dei certificati CA root per Amazon Bedrock AgentCore Code Interpreter.

Errore Causa Risoluzione

Certificato segreto non trovato in Secrets Manager

L'ARN segreto non esiste o il segreto è stato eliminato.

Verifica che l'ARN segreto sia corretto e che il segreto esista nella regione specificata.

Accesso negato al certificato segreto in Secrets Manager

Il chiamante non dispone secretsmanager:GetSecretValue dell'autorizzazione sulla segretezza.

Aggiungi l'secretsmanager:GetSecretValueautorizzazione alla tua policy IAM per l'ARN segreto specificato.

Il contenuto del certificato non è un formato valido PEM/X.509

Il valore segreto non è un PEM-encoded X.509 certificato valido.

Assicurati che il segreto contenga un certificato PEM formattato correttamente che inizia con -----BEGIN CERTIFICATE----- e termina con. -----END CERTIFICATE-----

Il certificato è scaduto

La notAfter data del certificato è passata.

Sostituisci il certificato scaduto con uno valido in AWS Secrets Manager e riprova.

Il certificato non è ancora valido

La notBefore data del certificato è futura.

Attendi l'inizio del periodo di validità del certificato o utilizza un certificato attualmente valido.

Il numero di certificati supera il numero massimo consentito

Sono stati forniti più di 10 certificati a livello di sessione o di strumento.

Riduci il numero di certificati a 10 o meno per sessione e 10 o meno per strumento.

L'ubicazione del certificato è obbligatoria

La registrazione del certificato è stata fornita senza una posizione.

Assicurati che ogni certificato nell'array includa una location secretsManager voce contenente una voce validasecretArn.

La configurazione dei certificati non è abilitata

La funzionalità dei certificati non è abilitata per il tuo account.

Contatta l' AWS assistenza per abilitare la funzionalità dei certificati per il tuo account.