View a markdown version of this page

Estrategia de gobierno de MCP - AWS Guía prescriptiva

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.

Estrategia de gobierno de MCP

La otra capacidad fundamental que ofrece el MCP a las organizaciones es el apoyo a la gobernanza centralizada. Su estrategia de gobierno del MCP debe abordar la autenticación y la autorización tanto de los servidores del MCP como de los recursos a los que acceden. También debe abordar la limitación de la velocidad para proteger los recursos intermedios, las métricas operativas para monitorear el uso y el rendimiento de las herramientas y la administración de las implementaciones y la distribución de los servidores MCP.

Autenticación y autorización

Una de las partes más importantes de su estrategia de autenticación y autorización es administrar el acceso descendente a los recursos desde los servidores MCP. Cuando un usuario llama a un agente, se realizan la autenticación y la autorización para garantizar que el usuario tenga permisos para llamar al agente. Luego, el agente organiza las llamadas a herramientas específicas en los servidores MCP. Debe decidir cómo autorizar el acceso por herramienta.

Una opción es la machine-to-machine autorización, en la que no se requiere el consentimiento o la interacción del usuario. Por ejemplo, la invocación de un agente basada en el tiempo utiliza un servidor MCP para recopilar los registros de una aplicación y analizarlos. En este escenario, el agente está preautorizado para acceder a los datos especificados. La segunda opción es el acceso delegado por el usuario, en el que el usuario da su consentimiento para acceder a datos y recursos específicos del usuario.

La siguiente tabla muestra los patrones de autenticación y autorización.

Factor

Acceso delegado por el usuario

Machine-to-machine

Propiedad de los datos

Autorización de datos específica del usuario

Datos de todo el sistema o la organización

Interacción con el usuario

El usuario está presente y puede dar su consentimiento

Sin interacción con el usuario

Tiempo de operación

Interactivo o en tiempo real

En segundo plano, programado o por lotes

Ámbito de los permisos

Los permisos varían según el usuario

Permisos uniformes a nivel de agente

El acceso delegado por el usuario requiere una implementación cuidadosa y debe desarrollarse con su equipo de seguridad. Los agentes deben poder evaluar qué herramientas ha seleccionado un LLM y si requieren una autorización adicional. Las herramientas de MCP deben incluir descripciones para indicar sus requisitos de autenticación y autorización y dónde recuperar los tokens de acceso. Las aplicaciones cliente deben admitir las solicitudes de autenticación intermedia y el cliente MCP debe devolver las credenciales recuperadas al agente cada vez que utilice la herramienta.

Debe asegurarse de que las herramientas de MCP siempre tengan sus propios tokens para acceder a las capacidades externas y de que el acceso esté registrado y auditado. Las credenciales de usuario no deben propagarse a través del sistema de su agencia. Por ejemplo, sus servidores MCP no deberían usar el mismo token para acceder a los datos que se utilizó para invocar al agente. Las llamadas posteriores deben usar tokens con un alcance explícito y generados con un propósito específico. Esto ayuda a proporcionar barreras adicionales para evitar el acceso no deseado a los datos en nombre de las acciones. También puede ayudar a evitar que las alucinaciones produzcan resultados no deseados. Imagine que un usuario con todos los permisos de administrador pide a un agente que clone una base de datos de producción para utilizarla en la fase de preproducción. Para ello, el usuario solo necesita CREATE permisos READ y permisos. Supongamos que el LLM alucina y cree que necesita limpiar la antigua base de datos como parte de esta solicitud. Si reutiliza las credenciales del usuario, es probable que lo consiga porque las credenciales originales del usuario tienen permisos. DELETE Por el contrario, si el servidor MCP utiliza un token cuyo alcance se ha reducido intencionadamente para la solicitud, solo con CREATE permisos READ y permisos, no se podrá eliminar la base de datos de producción.

Puede utilizar Amazon Bedrock AgentCore Identity para ayudar a implementar estos patrones. Asegúrese de elegir intencionalmente si los permisos para enumerar e invocar las herramientas alojadas en un servidor MCP implican el uso de las capacidades externas que expone el servidor MCP. Este flujo de identidad desde el servidor MCP al recurso y de vuelta al usuario depende del tipo de servicio de autenticación y autorización que se utilice. Debe decidir cómo se gestiona esto a escala para sus servidores MCP.

Al diseñar sus patrones de autenticación y autorización, implemente mecanismos de aislamiento de tokens que recuperen diferentes tokens de acceso para cada herramienta a la que se acceda. No reutilices los tokens entre herramientas y servidores. AgentCore La identidad proporciona esta capacidad de aislamiento de tokens. Administra automáticamente tanto los tokens de carga de trabajo (para la machine-to-machine autenticación) como los de usuario (para el acceso delegado por el usuario) para garantizar una separación adecuada y evitar la escalada de permisos. Esto es especialmente importante cuando se incorporan servidores MCP remotos o puertas de enlace MCP.

Mejores prácticas para la autenticación y autorización de MCP

  • Separación de fichas: no transfiera las fichas portadoras de las personas que llaman a los servicios intermedios. Comprueba que el campo aud (audiencia) coincida con el servidor que recibe el token. La afirmación de audiencia especifica a qué servicio está destinado el token, lo que impide la reutilización no autorizada del token en diferentes servidores MCP.

  • Seleccione un enfoque de acceso: elija entre machine-to-machine un acceso delegado por el usuario para cada herramienta que proporcionen sus servidores MCP. Considere la posibilidad de agrupar las herramientas en el mismo servidor MCP que utilicen el mismo patrón de autenticación.

Controlar la carga

Al igual que con cualquier sistema distribuido, debe considerar cómo controlar la carga en su flota de servidores MCP. En primer lugar, considere si debe implementar la limitación de velocidad en sus servidores MCP y dónde implementarla. Si decide no implementar la limitación de velocidad, transferirá cualquier limitación de velocidad aplicada por los recursos descendentes. Muchos sistemas optan por limitar la tasa en función de los atributos de la solicitud, como el identificador de usuario o de cuenta. Compruebe que las solicitudes enviadas a los servicios descendentes tengan los mismos atributos para que varios usuarios no se vean afectados por la carga generada por otro usuario.

Si opta por implementar la limitación de velocidad, el enfoque recomendado es implementar la limitación de velocidad principal a nivel del servidor MCP, con servicios de backend que proporcionen protección secundaria y que los agentes adapten su comportamiento en función de los comentarios sobre el límite de velocidad. Considere si los límites de velocidad son por servidor MCP o por herramienta. Los límites de velocidad por servidor MCP ayudan a proteger su flota de servidores MCP y sus servicios en un entorno multiusuario. Sin embargo, eso puede ser muy grosero. Los límites de velocidad por herramienta están diseñados para evitar que los recursos intermedios se abrumen y que tal vez no se limiten lo suficiente por sí mismos. Si una herramienta realiza varias llamadas APIs, debe establecer el límite de frecuencia para que se ajuste a la frecuencia más baja permitida por esas herramientas. APIs

La transmisión de la información sobre el límite de frecuencia en los encabezados HTTP también puede ser una métrica útil para los usuarios y los sistemas automatizados, ya que les ayuda a gestionar su propia tasa de solicitudes y su estrategia de reintentos. Por ejemplo, puede enviar estos encabezados al agente desde su servidor MCP, como se muestra en el siguiente ejemplo:

X-RateLimit-Limit: 100 X-RateLimit-Remaining: 45 X-RateLimit-Reset: 1640995200

Además, considere la posibilidad de reducir la carga para proteger el servicio en general cuando ningún cliente supere un límite de velocidad pero la carga afecte al rendimiento del sistema.

Mejores prácticas para controlar la carga

  • Elija un enfoque de limitación de velocidad: planifique limitar la tarifa de los usuarios individuales en función del uso que hagan de los recursos intermedios o del servidor y las herramientas de MCP.

  • Considere la posibilidad de reducir la carga: proteja su flota de servidores MCP de una sobrecarga general que no esté provocada por un solo cliente o por un puñado de clientes.

Métricas operativas

Las métricas clave que se deben recopilar para las implementaciones de MCP deben centrarse en la experiencia de cliente que ofrecen. Estas métricas suelen incluir el uso de los tokens, la precisión de la selección de herramientas, la cantidad de herramientas registradas en el agente y la latencia de las herramientas. Por ejemplo, la supervisión de los tokens de salida devueltos por cada herramienta permite configurar alarmas cuando las herramientas superan un umbral de uso de la ventana de contexto. Cuando una herramienta supera ese umbral, es posible que desee revisar el comportamiento de la herramienta. Esto también se relaciona con la estrategia de diseño de la herramienta MCP. Las métricas de precisión de la selección de herramientas indican qué tan bien los agentes eligen las herramientas adecuadas para determinadas tareas, mientras que la velocidad de ejecución y las tasas de éxito destacan los cuellos de botella en el rendimiento y los problemas de fiabilidad.

Por ejemplo, para evaluar las métricas de precisión de la selección y el uso de las herramientas, los AWS equipos crearon conjuntos de datos básicos para las pruebas de regresión. Los conjuntos de datos se generaron sintéticamente a partir de registros históricos de invocación de la API tras las consultas LLMs de los usuarios. Con las métricas predefinidas de selección y uso de herramientas (como la precisión de la selección de herramientas, la precisión de los parámetros de la herramienta y la precisión de las llamadas a funciones de varios turnos), AWS los equipos pudieron evaluar objetivamente la capacidad del agente de IA para identificar correctamente las herramientas adecuadas, rellenar sus parámetros con valores precisos y mantener secuencias de invocación de herramientas coherentes en los turnos de conversación.

Medir las métricas sobre la cantidad de herramientas registradas en un agente puede ayudarlo a identificar los posibles desafíos de administración de ventanas de contexto, así como los cambios en las herramientas disponibles que presentan los servidores MCP. Debe revisar periódicamente las métricas operativas que indican la experiencia del usuario con el servidor y las herramientas de MCP.