网关的功能
网关位于代理和服务提供者之间,执行可信握手:- 代理注册表 — 验证代理身份,管理每个代理的能力策略
- OAuth 桥接 — 编排 OAuth 2.0 授权流程,支持 PKCE(RFC 7636)
- 权限范围交集 — 根据代理批准、用户同意和请求的权限范围计算有效权限
- API 代理 — 验证 ATH 令牌并将请求转发到上游服务
- 审计日志 — 记录所有授权决策
参考实现
官方参考网关可在以下位置获取:ATH 网关
TypeScript 参考实现(Hono + Node.js)——包含搭建指南、配置参考和 Docker 部署。
OAuth 桥接模式
参考网关支持两种 OAuth 桥接模式:| 模式 | 适用场景 |
|---|---|
| 直接 OAuth | 连接任意 OAuth2 提供者(GitHub、Google 等) |
| 模拟模式 | 内置模拟服务,用于无需外部依赖的测试 |
在直接 OAuth 模式下,网关会自动生成 PKCE 对——
code_challenge(S256)发送给授权服务器,code_verifier 存储在会话中并在令牌交换时发送。代理侧无需任何操作。resource 参数(RFC 8707),用于指示目标资源服务器。
审批策略
网关的审批策略控制哪些代理被批准使用哪些权限范围。在生产环境中,你应该:- 审核代理注册 后再批准
- 限制每个代理的权限范围(例如,代理 X 可以读取邮件但不能发送)
- 监控审计日志 以发现异常访问模式
- 撤销代理访问权限 如果其行为不当
后续步骤
构建代理
使用 ATH Client SDK 将你的代理连接到网关
API 规范
查看完整的 API 端点规范