安全MCP
MCP 的认证规格(2025-06-18) 标准样品Python(Flask)应用程序实施。
"Confused Deputy" 为了解决问题RFC 8707 的明细栏样式中定义的设置。\ 它由三个组件组成。
- auth_server.py: 验证服务器。提交令牌。
- mcp_server.py: MCP 资源服务器。验证令牌并运行工具。
- mcp_client.py: MCP 客户端。获取令牌MCP 调用服务器。
安装,安装
ssh-keygen -t rsa -b 2048 -m PEM -f jwtRS256.key -N ""
openssl rsa -in jwtRS256.key -pubout -outform PEM -out jwtRS256.key.pub服务器启动
认证服务器(接收resource参数并将其aud 设定为索赔JWT )在端口5001启动
flask --app auth_server run -p 5001MCP 服务器(aud索赔和scope 在端口5000上启动严格验证索赔的资源服务器)
flask --app mcp_server run -p 5000执行演示
启动两个服务器后,在第三个终端运行客户端脚本。\ 此脚本自动执行建议的使用顺序和安全攻击模拟。
python mcp_client.py