Files
baiyue-firstleg/auth/AGENTS.md
T
2026-07-31 13:52:35 +08:00

2.0 KiB
Raw Blame History

Auth Service 模块指引

职责边界

  • 负责账号凭据、登录、Access/Refresh Token 生命周期、退出、密码变更及商户注册协作。
  • 租户、成员资料、角色和权限属于 iam/;Auth 只通过 IAM 客户端加载授权快照和创建注册结果。

快速索引

功能 入口
应用与安全配置 src/main/java/com/baiyue/auth/BaiyueAuthApplication.java、config/AuthSecurityConfig.java
登录、注册、刷新、退出、改密 API controller/AuthController.java(/api/auth)
内部账号管理 API controller/InternalAccountController.java(/internal/auth/accounts)
认证与令牌编排 service/AuthService.java、TokenSessionStore.java
账号创建、显示名同步、状态和密码重置 service/AccountManagementService.java;平台账号使用 default_app_code=PLATFORM、tenant_id=0
商户注册协作 service/MerchantRegistrationService.java
IAM 调用与授权快照 client/IamAuthorizationClient.java、IamOnboardingClient.java、AuthorizationSnapshot.java
账号与 Refresh Token 持久化 entity/、mapper/、repository/
请求/响应模型 dto/
表结构与一期账号 src/main/resources/db/auth.sql、phase1-admin-accounts.sql
配置与测试 src/main/resources/application.yml、src/test/java/com/baiyue/auth/service/

修改与验证

  • 密码必须安全散列;不得记录密码、Token、密钥或完整敏感 Claim。
  • 修改 Token Claim、会话 Redis Key、过期或撤销逻辑时同步检查 common-security/、gateway/ 和 IAM 授权快照。
  • 注册流程跨 Auth/IAM,失败补偿和幂等必须成对检查;不要跨库写 IAM 表。
  • 内部账号创建允许相同账号 ID 与相同归属幂等重试;不同身份占用同一 ID 必须冲突。内部接口只接收 IAM 的服务令牌,不直接暴露给前端。
  • 从父目录运行 mvn -pl auth -am test,认证接口变更再运行相关 scripts/ 回归。