用途:在 ddd4j-quarkus 服务中集成认证与授权,统一处理 JWT、OIDC、Shiro、Sa-Token、SubjectProvider、RolesAllowed 和请求作用域,而非按 Maven 构件拆分。
主要能力:对比 JWT、OIDC、Shiro、Sa-Token 与部署模型的适配;通过 CDI 注册唯一主 SubjectProvider,将身份映射为 AuthPrincipal 并定义角色/权限规则;应用 RolesAllowed 并把安全异常映射为稳定错误响应;在请求开始绑定 Subject,并在成功、异常和异步完成路径恢复上下文;用 QuarkusTest 覆盖匿名、有效、过期和角色不足路径。
使用方式:先通过 ddd4j-quarkus-version-selection 确定 3.3.x 或 4.0.x 维护线,再定位该检出中的 ddd4j-quarkus-auth 与认证测试;选择机制后注册唯一主 SubjectProvider,接线授权并管理请求作用域,最后运行测试并输出机制选择、注册点、证据状态与剩余风险。安装命令:npx skills add full-stack-skills/ddd4j-skills --skill ddd4j-quarkus-auth。
适用场景:ddd4j-quarkus 服务的认证选型、CDI 注册、角色权限映射、异常映射、请求作用域绑定与测试验证,以及现有认证接线的审查。
限制:不适用于无认证语义的通用 CDI 接线(用 ddd4j-quarkus-runtime)、Subject/Context SPI 契约本身(用 ddd4j-core)、Spring Boot 认证(用 ddd4j-boot-auth)、Javalin 认证(用 ddd4j-javalin-auth)、Spring Cloud 跨服务传播(用 ddd4j-cloud-context),也不适用于非 ddd4j 的普通 Quarkus 项目或身份提供方运维。注意:注册第二个 SubjectProvider 会导致 Arc 歧义解析构建失败;Spring Security 语义不可迁移;Subject 必须在异常和异步完成路径释放;过期与角色不足需专门测试;报告须脱敏令牌与 OIDC 密钥;原生镜像需显式注册使用反射的令牌解析器。输入不足时输出 missing 提示。