上线前检查清单
把 IAM 接入生产前,遗漏任一项(如 Redis 成真相来源、审计关闭、clientType 不匹配)都可能引发安全或可用性问题。本清单汇总必查项。
- MySQL 为真相来源:确认
muer.schema.enabled=true,Flyway 历史表已建;切勿让 Redis 决定授权。 - Redis 仅索引:
muer.token.redis-prefix非空,muer.token.ttl为正。MySQL 是持久授权状态(principal/permission/template/profile/scope/session 记录)的权威;Redis 只保存不透明 Token 到 Session 的索引。若 Redis 中 Token 数据丢失,已签发 Token 可能无法继续解析、用户需要重新登录,但不会改变 MySQL 中的授权事实;Muer 不会把 MySQL 当作已签发 Token 的自动回源来重建 TokenRecord。 - 会话配置:
muer.session.enabled=true,touch-interval合理(默认10m)。 - clientType:
muer.client-types≥1 且非空,登录clientType精确匹配。 - 审计开启:
muer.audit.enabled=true(属性已暴露),事件可回溯。 - 诊断可用:
muer.diagnostics.enabled=true,便于排障(见 授权诊断)。 - 反向代理:透传
Authorization与X-Forwarded-*头(见 反向代理)。 - 吊销能力:确认
POST /iam/sessions/{sessionId}/revoke可达,异常可强制下线。
最小生产配置(application.yml):
muer: enabled: true token: { ttl: 8h, redis-prefix: iam } session: { enabled: true, touch-interval: 10m } schema: { enabled: true, history-table: iam_flyway_schema_history } audit: { enabled: true } diagnostics: { enabled: true } client-types: [WEB]- 配置全集
MuerProperties:https://github.com/wbh123/Muer-IAM-Framework/blob/main/muer-spring-boot-autoconfigure/src/main/java/cloud/muer/autoconfigure/
当前版本:0.1.0-SNAPSHOT(Release Candidate),尚未发布。