Files
beaver_project/authz-service/README.md
steven_li df5e3d693c feat(runtime-control): 注册流程改为通过AuthZ服务
注册现在通过AuthZ进行处理,而登录/运行时查找仍然使用deploy-control。
更新了API调用逻辑,将注册请求从直接调用deploy-control和instance-api
改为统一调用AuthZ服务。

- 修改了注册API路由(/api/runtime/register)以使用callAuthzService
- 更新README.md文档说明新的架构流程
- 添加AUTHZ_API_BASE_URL环境变量配置
- 更新注册页面描述信息
- 移除了不再使用的callDeployControl和callInstanceApi相关代码
2026-03-16 11:07:08 +08:00

57 lines
1.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# authz-service
`authz-service` 现在已经整理成独立 Docker 单元。
## 组成
- `Dockerfile`
- 生产镜像构建入口
- `docker-entrypoint.sh`
- 初始化数据目录并启动 `uvicorn`
- `start-authz.sh`
- 本地或服务器快速启动脚本
- `env_template`
- 常用环境变量模板
- `runtime/seed-data/`
- 空白初始化数据
- `src/`
- 原始 FastAPI 应用代码
## 设计约定
- 容器监听端口:`19090`
- 容器内数据目录:`/var/lib/authz-service/data`
- 首次启动时如果数据目录为空,会自动写入空白 JSON
- `signing_key.pem` 不会被打进镜像
- 如果挂载目录里不存在签名 key服务会在首次启动时自动生成
## 快速启动
```bash
cd /home/ivan/xuan/nano_project/authz-service
AUTHZ_INTERNAL_TOKEN='change-me' ./start-authz.sh --build
```
启动后验证:
```bash
curl http://127.0.0.1:19090/healthz
curl http://127.0.0.1:19090/.well-known/jwks.json
```
## 生产建议
- 用挂载卷保存 `runtime/data`
- 显式设置 `AUTHZ_INTERNAL_TOKEN`
- 显式设置外部可访问的 `AUTHZ_ISSUER`
- 例如 `https://authz.example.com`
- 如果要让 AuthZ 负责编排实例注册,还要设置 `DEPLOY_API_BASE_URL`
- 如果 deploy-control 开了鉴权,还要设置 `DEPLOY_API_TOKEN`
- 不要把 `src/data/` 里的本地示例或真实数据直接拿去打镜像
## API 说明
接口说明仍然看:
- `/home/ivan/xuan/nano_project/authz-service/src/README.md`