View a markdown version of this page

Configurar la autoridad de certificación raíz para el navegador Amazon Bedrock AgentCore - Amazon Bedrock AgentCore

Configurar la autoridad de certificación raíz para el navegador Amazon Bedrock AgentCore

De forma predeterminada, las sesiones AgentCore del navegador Amazon Bedrock solo confían en las autoridades de certificación reconocidas públicamente. Si sus agentes necesitan acceder a servicios internos, sitios web corporativos o recursos a través de un TLS-intercepting proxy que utilice certificados firmados por una entidad emisora de certificados privada, debe proporcionar sus certificados de entidad de certificación 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 navegador establecer conexiones HTTPS confiables con sus recursos internos.

Funcionamiento

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

  1. Debe proporcionar 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 con el formato X.509 PEM correcto y se comprueba para garantizar que no haya caducado ni 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, lo que los pone a disposición del navegador y de cualquier cliente de red del entorno limitado.

Los certificados configurados a nivel de herramienta (medianteCreateBrowser) se combinan con cualquier certificado que se proporcione al inicio de la sesión. Esto le permite configurar certificados para toda la organización en la herramienta y agregar certificados específicos de la sesión según sea necesario.

nota

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

Requisitos previos

Antes de configurar los certificados de CA raíz, asegúrese de tener 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 de los certificados de AWS Secrets Manager. Añada 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 utilizar un certificado de CA raíz con Amazon Bedrock AgentCore Browser, debe guardarlo como 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 las sesiones con una configuración de certificado.

importante

El secreto debe contener un PEM-encoded X.509 certificado válido. El certificado no debe estar vencido 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 navegador con certificados personalizados

Para iniciar una sesión de navegador que confíe en sus certificados de CA raíz personalizados, incluya el certificates parámetro en la StartBrowserSession solicitud.

ejemplo
AWS CLI
  1. aws bedrock-agentcore start-browser-session \ --browser-identifier "aws.browser.v1" \ --name "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_browser_session( browserIdentifier="aws.browser.v1", name="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": "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 navegador. Esto resulta útil cuando su entorno requiere la confianza de varias autoridades de certificación internas, como entidades de certificación independientes para distintos servicios o entornos internos.

ejemplo
AWS CLI
  1. aws bedrock-agentcore start-browser-session \ --browser-identifier "aws.browser.v1" \ --name "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_browser_session( browserIdentifier="aws.browser.v1", name="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 navegador personalizado. Los certificados configurados a nivel de herramienta se aplican automáticamente a todas las sesiones iniciadas con esa herramienta, además de a los certificados proporcionados al inicio de la sesión.

Esto resulta útil para los certificados de toda la organización en los que todas las sesiones del navegador deberían confiar.

ejemplo
Boto3
  1. response = client.create_browser( name="corporate-browser", description="Browser with corporate CA trust", certificates=[ { "location": { "secretsManager": { "secretArn": "arn:aws:secretsmanager:<region>:<account-id>:secret:corporate-root-ca" } } } ] ) browser_id = response['browserIdentifier'] print(f"Browser ID: {browser_id}")

Al iniciar una sesión con un navegador que tiene los 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 de 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 Secrets Manager secret (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 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 AWS Secrets Manager es compatible como ubicación de certificado