Los agentes de IA son tan poderosos como las herramientas a las que pueden acceder. Ya sea para recuperar datos de clientes de un CRM, publicar actualizaciones en Slack o consultar un repositorio de GitHub, los agentes deben llamar a API externas, y eso significa pasar credenciales de forma segura en tiempo de ejecución. Hacerlo bien, sin codificar secretos en el código ni exponerlos en las indicaciones del agente, es uno de los desafíos definitorios de la creación de sistemas agentic listos para producción.
Amazon Bedrock AgentCore Identity enfrenta este desafío a través de proveedores de credenciales y una bóveda de tokens que crea y administra automáticamente un secreto en AWS Secrets Manager en su cuenta para cada recurso de proveedor de credenciales salientes. Este secreto contiene la clave API o el secreto del cliente junto con los demás metadatos del proveedor de identidad externo. Si bien AgentCore Identity crea y administra completamente estos secretos, los clientes no podían configurar etiquetas personalizadas, políticas de rotación o cifrado de claves de AWS Key Management Service (AWS KMS) administrado por el cliente en el momento de la creación.
Hoy, nos complace anunciar la capacidad de hacer referencia a un secreto en AWS Secrets Manager para AgentCore Identity, para que pueda hacer referencia a su propio secreto preconfigurado desde Secrets Manager y conservar el control total sobre cómo se administra. Con esta capacidad, puede extender los procesos de gobierno de secretos existentes de su organización a AgentCore. Puede proporcionar un secreto de AWS Secrets Manager existente y preconfigurado para utilizarlo con los recursos de su proveedor de credenciales. Usted conserva el control total sobre su configuración de cifrado, rotación, replicación, etiquetas y políticas de recursos, tal como administraría otros secretos en Secrets Manager. También puede elegir un secreto de otra cuenta de AWS dentro de la misma región de AWS, aunque no se admite el uso compartido de secretos entre regiones. Esto también admite secretos ingresados a través de conectores externos de AWS Secrets Manager, lo que permite la integración con administradores de secretos de terceros.
En esta publicación, revisaremos casos de uso de ejemplo y explicaremos cómo comenzar a configurar los recursos de su proveedor de credenciales con un secreto existente.
Casos de uso de ejemplo
Los siguientes son casos de uso de ejemplo:
Su agente accede a una API externa para la que su equipo ya tiene un secreto: proporcione el ARN de ese secreto existente a los recursos de su proveedor de credenciales en lugar de que AgentCore Identity cree uno nuevo. También puede hacer referencia a un secreto de otra cuenta de AWS dentro de la misma región, y se admiten los secretos ingresados a través de conectores externos de AWS Secrets Manager, lo que permite la integración con administradores de secretos de terceros. Le gustaría rotar su secreto para cumplir con las mejores prácticas de seguridad y desea que su agente continúe trabajando mientras lo rota: cuando rota el valor del secreto, AgentCore Identity recupera el valor actualizado en su siguiente lectura. No es necesario actualizar ni volver a crear los recursos del proveedor de credenciales. Usted limita el acceso secreto al uso previsto del agente: configure la política de recursos en su secreto directamente en AWS Secrets Manager. Usted controla qué entidades principales de AWS Identity and Access Management (IAM) pueden acceder a las condiciones de acceso al secreto y al alcance. Su agente opera en un entorno regulado donde cada credencial debe estar cifrada con la clave administrada por el cliente: cree el secreto con la clave de cifrado administrada por el cliente antes de proporcionárselo a AgentCore Identity. Esto es especialmente útil si su organización aplica SCP y RCP para ayudar a verificar que todos los datos estén cifrados mediante CMK administradas por el cliente. Al hacer referencia a un secreto existente, su configuración de cifrado se conserva por completo. Su organización requiere etiquetas de recursos en secretos para la asignación de costos, el seguimiento del cumplimiento o la auditoría de gobernanza: cree y etiquete el secreto de acuerdo con sus estándares antes de entregárselo a AgentCore Identity.
Para obtener más información sobre las opciones de configuración secreta disponibles, consulte la Guía del usuario de AWS Secrets Manager.
Requisitos previos
Para seguirlo, necesita lo siguiente:
Un secreto de AWS Secrets Manager existente con la clave API o el secreto del cliente OAuth. Permisos de IAM para otorgar a la entidad principal del servicio AgentCore Identity secretsmanager:GetSecretValue acceso al secreto. Si utiliza una clave AWS KMS administrada por el cliente, permiso kms:Decrypt en esa clave para la entidad de servicio. Acceso a la consola de identidad de Amazon Bedrock AgentCore o a la interfaz de línea de comandos de AWS (AWS CLI).
Empezando
Para hacer referencia a un secreto en AWS Secrets Manager, proporcione el ARN secreto y la clave JSON al crear los recursos de su proveedor de credenciales a través de la API AgentCore Identity. AgentCore Identity recupera el valor de la credencial de la clave JSON especificada en su secreto en tiempo de ejecución.
Las siguientes secciones muestran cómo crear un recurso de proveedor de credenciales con un secreto al que se hace referencia mediante la Consola de administración de AWS, la CLI de AWS o un agente de IA.
Usando la consola
Puede configurar un secreto al que se hace referencia al crear nuevos recursos de proveedor de credenciales directamente desde la consola de Amazon Bedrock AgentCore Identity. La función admite tipos de credenciales de cliente OAuth y clave API.
Figura 1: Consola AgentCore Identity, creando un recurso de autenticación saliente con un secreto al que se hace referencia.
A. Agregar una clave API con un secreto al que se hace referencia
Para agregar una clave API con un secreto al que se hace referencia, complete los siguientes pasos:
Abra la consola de Amazon Bedrock AgentCore. En el panel de navegación izquierdo, elija Identidad. En la sección Autenticación saliente, elija Agregar autenticación saliente. Elija Agregar clave API. Ingrese un nombre para su recurso de autenticación saliente. En Método de selección de clave API, elija Proporcionar clave API a través de Secrets Manager. En el campo ARN de Secrets Manager, ingrese o elija el ARN de su secreto existente. La lista muestra los secretos disponibles en su cuenta. Por ejemplo: arn:aws:secretsmanager:us-east-1:123456789012:secret:myApiKeySecret-AbCdEf. En el campo Clave JSON, especifique la clave dentro de su secreto de Secrets Manager que contiene el valor de la clave API. Elija Agregar. Verifique que el proveedor de credenciales se creó verificando que aparezca en la lista de autenticación saliente.
Figura 2: Consola AgentCore Identity, agregando una clave API desde Secrets Manager.
B. Agregar un secreto de cliente OAuth con un secreto al que se hace referencia
Para agregar un secreto de cliente OAuth con un secreto al que se hace referencia, complete los siguientes pasos:
En la página Identidad, elija Agregar autenticación saliente. Elija Agregar cliente OAuth. Ingrese un nombre para su cliente OAuth (por ejemplo, google-oauth-client-v5fz5). En Proveedor, elija el proveedor personalizado o incluido que desee. Ingrese su ID de cliente asignado por el proveedor de identidad. En Secreto del cliente, elija Proporcionar secreto del cliente a través de Secrets Manager. En el campo ARN de Secrets Manager, ingrese el ARN del secreto que contiene su secreto de cliente OAuth. En el campo Clave JSON, especifique la clave dentro del secreto que contiene el valor del secreto del cliente. Elija Agregar cliente OAuth. Verifique que el proveedor de credenciales se creó verificando que aparezca en la lista de autenticación saliente.
Figura 3: Consola AgentCore Identity, agregando un secreto de cliente OAuth desde Secrets Manager.
Uso de la CLI de AWS
Puede configurar un secreto al que se hace referencia al crear un nuevo recurso de autenticación saliente directamente para un secreto de cliente OAuth desde la CLI de AWS, como se muestra en el siguiente código:
Usando un agente de IA en su escritorio
Si está utilizando un agente de codificación de IA (como Kiro o similar), puede solicitarle que configure un secreto al que se hace referencia directamente:
“Tengo un secreto existente en AWS Secrets Manager en ARN arn:aws:secretsmanager:us-east-1:123456789012:secret:my-api-key. Cree un proveedor de credenciales OAuth2 en Amazon Bedrock AgentCore Identity llamado , utilizando GoogleOauth2 como proveedor. El ID del cliente es , la fuente secreta del cliente es EXTERNA y la clave JSON secreta es la clave”.
Nota: Reemplace y con sus valores.
Importante: Otorgue permiso a AgentCore Identity para leer su secreto agregando una política de recursos al secreto que permita a la entidad de servicio llamar a secretsmanager:GetSecretValue. Si su secreto está cifrado con una clave KMS administrada por el cliente, otorgue también a la entidad de servicio kms:Decrypt permiso sobre esa clave.
Conclusión
Con la capacidad de hacer referencia a un secreto en AWS Secrets Manager, AgentCore Identity le brinda la flexibilidad de utilizar sus secretos existentes y sus prácticas de administración de secretos al configurar la autenticación saliente para sus agentes de IA. Puede conservar el control total sobre cómo se cifran, rotan y acceden a sus credenciales, mientras AgentCore Identity se encarga de recuperarlas en tiempo de ejecución.
Para comenzar, consulte la documentación de identidad de Amazon Bedrock AgentCore. Para obtener más información sobre la administración de secretos, consulte la Guía del usuario de AWS Secrets Manager.