View a markdown version of this page

Configurar la autoridad de certificación raíz para Amazon Bedrock AgentCore Code Interpreter - Base amazónica AgentCore

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Configurar la autoridad de certificación raíz para Amazon Bedrock AgentCore Code Interpreter

De forma predeterminada, las sesiones de Amazon Bedrock AgentCore Code Interpreter solo confían en las autoridades de certificación reconocidas públicamente. Si sus agentes necesitan acceder a los servicios o recursos internos a través de un TLS-intercepting proxy que utilice certificados firmados por una CA privada, debe proporcionar sus certificados de CA raíz personalizados al iniciar una sesión.

Amazon Bedrock AgentCore recupera el contenido del PEM-encoded certificado de AWS Secrets Manager con las credenciales de la persona que llama, valida el X.509 formato y la caducidad e instala los certificados en el almacén de confianza del sistema operativo de la sesión. Esto permite al intérprete de código establecer conexiones HTTPS confiables con sus recursos internos.

Funcionamiento

La autoridad de certificación raíz de Amazon Bedrock AgentCore Code Interpreter funciona de la siguiente manera:

  1. Usted proporciona una lista de ubicaciones de certificados, cada una de las cuales apunta a un secreto en AWS Secrets Manager que contiene un certificado de CA PEM-encoded raíz.

  2. Amazon Bedrock AgentCore utiliza las credenciales de la persona que llama para recuperar cada certificado de AWS Secrets Manager.

  3. Cada certificado se valida para comprobar que tiene el formato X.509 PEM correcto y se comprueba para garantizar que no haya caducado y que no se utilice antes de la fecha de inicio de la validez.

  4. Los certificados válidos se implementan en el almacén de confianza del sistema operativo de la sesión y están disponibles para los ejecutores de código y para cualquier cliente de red que se encuentre en el entorno limitado.

Los certificados configurados a nivel de herramienta (medianteCreateCodeInterpreter) se combinan con los certificados proporcionados al iniciar la sesión. Esto le permite configurar certificados para toda la organización en la herramienta y agregar certificados específicos para la sesión según sea necesario.

nota

La configuración del certificado es una operación que se realiza una sola vez por sesión. Una vez instalados los certificados, no se pueden modificar mientras dure esa sesión.

Requisitos previos

Antes de configurar los certificados de CA raíz, asegúrese de disponer de lo siguiente:

  • Ha completado los requisitos previos generales.

  • Sus certificados de CA raíz se almacenan como secretos en AWS Secrets Manager. Cada secreto debe contener un PEM-encoded X.509 certificado válido

  • Permisos de IAM para leer los secretos del certificado desde AWS Secrets Manager. Agregue los siguientes permisos a su política de IAM:

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

Guarde su certificado en AWS Secrets Manager 

Antes de poder usar un certificado de CA raíz con Amazon Bedrock AgentCore Code Interpreter, debe almacenarlo en secreto en AWS Secrets Manager. El valor secreto debe ser el contenido del PEM-encoded certificado.

ejemplo
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']}")

Anote el ARN secreto de la salida. Utilizará este ARN al iniciar sesiones con la configuración del certificado.

importante

El secreto debe contener un PEM-encoded X.509 certificado válido. El certificado no debe estar caducado y debe estar dentro de su período de validez. Amazon Bedrock AgentCore valida el formato y la caducidad del certificado antes de instalarlo.

Inicie una sesión de intérprete de código con certificados personalizados

Para iniciar una sesión de intérprete de código que confíe en sus certificados de CA raíz personalizados, incluya el certificates parámetro en la StartCodeInterpreterSession solicitud.

ejemplo
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>" } } } ] }

Uso de varios certificados

Puede proporcionar varios certificados de CA raíz en una sola sesión de intérprete de código. Esto resulta útil cuando su entorno requiere la confianza de varias autoridades certificadoras internas, como por ejemplo, entidades de certificación independientes para diferentes servicios o entornos internos.

ejemplo
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" } } } ] )

Configure los certificados a nivel de herramienta

Puede configurar los certificados a nivel de herramienta al crear un intérprete de código personalizado. Los certificados configurados a nivel de herramienta se aplican automáticamente a cada sesión iniciada con esa herramienta, además de cualquier certificado proporcionado al iniciar la sesión.

Esto resulta útil para los certificados de toda la organización en los que todas las sesiones de interpretación de código deben confiar.

ejemplo
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}")

Al iniciar una sesión con un intérprete de código que tiene certificados configurados, los certificados de nivel de herramienta se combinan con cualquier certificado de nivel de sesión. Tool-level los certificados se aplican primero, seguidos de los certificados a nivel de sesión.

Requisitos y límites de los certificados

Los certificados deben cumplir los siguientes requisitos:

Requisito Details

Formato

PEM-encoded X.509 certificado

Almacenamiento

AWS El secreto de Secrets Manager (como valor de cadena, no binario)

Validez

El certificado no debe estar caducado y debe estar dentro de su período de validez (entre notBefore y notAfter las fechas)

Número máximo de certificados por sesión

10 por sesión y 10 por herramienta. Una sesión puede tener hasta 20 certificados en total.

Formato ARN secreto

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

Tipo de ubicación

Solo se admite AWS Secrets Manager como ubicación de certificado

Resolución de problemas

En la siguiente tabla se describen los errores más comunes y sus soluciones al configurar los certificados de CA raíz para Amazon Bedrock AgentCore Code Interpreter.

Error Causa Resolución

No se encontró el secreto del certificado en Secrets Manager

El ARN secreto no existe o se ha eliminado.

Compruebe que el ARN secreto es correcto y que el secreto existe en la región especificada.

Acceso denegado al certificado secreto en Secrets Manager

La persona que llama no tiene secretsmanager:GetSecretValue permiso sobre el secreto.

Añade el secretsmanager:GetSecretValue permiso a tu política de IAM para el ARN secreto especificado.

El contenido del certificado no tiene un formato válido PEM/X.509

El valor secreto no es un PEM-encoded X.509 certificado válido.

Asegúrese de que el secreto contenga un certificado PEM con el formato correcto que comience por -----BEGIN CERTIFICATE----- y termine por. -----END CERTIFICATE-----

El certificado ha caducado

La notAfter fecha del certificado es anterior.

Sustituya el certificado caducado por uno válido en AWS Secrets Manager y vuelva a intentarlo.

El certificado aún no es válido

La notBefore fecha del certificado es futura.

Espere hasta que comience el período de validez del certificado o utilice un certificado que sea válido actualmente.

El número de certificados supera el máximo permitido

Se proporcionaron más de 10 certificados a nivel de sesión o de herramienta.

Reduzca la cantidad de certificados a 10 o menos por sesión y a 10 o menos por herramienta.

Se requiere la ubicación del certificado

Se proporcionó una entrada de certificado sin una ubicación.

Asegúrese de que cada certificado de la matriz incluya location una secretsManager entrada que contenga una válidasecretArn.

La configuración de los certificados no está habilitada

La función de certificados no está habilitada para su cuenta.

Ponte en contacto con el equipo de AWS soporte para activar la función de certificados en tu cuenta.