ToolHive 是一个解决方案,帮助控制谁可以在 MCP 服务器上调用什么,通过将身份验证与授权分离,并使用 Amazon 的 Cedar 策略语言来定义访问规则。身份验证验证身份,而授权确定该身份可以做什么。ToolHive 将这两个步骤视为两个独立的步骤,首先对调用者进行身份验证,然后检查他们可以访问什么。系统使用 OpenID Connect 处理身份验证,并应用自己的权限规则来控制 MCP 操作。通过将身份验证和授权分离,ToolHive 可以依赖成熟的身份系统,并避免将身份与访问控制混淆。授权框架基于 Amazon 的 Cedar 策略语言,并设计为 MCP 服务器基础层之上的一个层。只要 MCP 服务器启用了 ToolHive 的授权功能,每个客户端请求都会在达到服务器逻辑之前经过授权检查。该过程涉及到客户端身份验证、请求信息提取、策略评估和根据策略规则允许或拒绝请求。ToolHive 作为 MCP 服务器前的策略执行点,阻止未经授权的工具调用,并减少恶意请求的风险。Cedar 策略语言灵活且表达力强,支持基于角色的规则和基于属性的规则,并允许进行细粒度的访问控制。
dev.to
Secure-by-Default Authorization for MCP Servers powered by ToolHive
Create attached notes ...
