认证授权
Authentication & Authorization
应用级授权码验证和多 Git 平台私有仓库 token 认证
子问题
1.应用授权码验证
2.私有仓库 token 认证
3.多平台认证格式适配
4.token 安全处理
5.BFF 代理层认证请求转发与后端拓扑隐藏
6.认证状态获取失败时的安全降级策略
各项目的解法1 solutions
Signals
横向对比
| 维度 | DeepWiki |
|---|---|
| 认证架构 | 双层分离:应用授权码(环境变量) + 仓库Token(用户输入) |
| 授权模式 | 环境变量开关式,DEEPWIKI_AUTH_MODE 布尔控制 |
| 多平台适配 | GitHub/GitLab/Bitbucket 三平台 URL 格式 + API 头适配 |
| Token安全 | 双重脱敏(raw+encoded),日志使用原始URL不含token |
| 前后端协作 | Next.js BFF 代理转发,前端不直连 FastAPI 后端 |
| 保护粒度 | 仅保护生成发起和缓存删除,读取操作不受限 |
最佳实践
1.环境变量控制授权模式开关
2.URL 编码 token 防止特殊字符问题
3.日志中脱敏 token 信息
4.前端获取认证状态失败时默认要求认证(安全优先)
5.Next.js API Route 作为 BFF 代理隐藏后端地址
6.git clone 日志使用原始 URL 而非含 token 的 clone URL