# 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` | | 商户注册协作 | `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 表。 - 从父目录运行 `mvn -pl auth -am test`,认证接口变更再运行相关 `scripts/` 回归。