偏身份边界与权限治理的总装图,回答“谁以什么身份访问什么资源”应该如何被长期设计和运营 (2025-2026)
| 上层 | 依赖的下层 | 关系说明 |
|---|---|---|
| 认证 | 身份凭证 | 没有稳定的密码策略、密钥轮换、证书签发和设备信任,后续任何认证协议都只是纸面安全。 |
| 授权 | 认证结果 | “你是谁”和“你能做什么”是两件事。认证做得再强,权限边界混乱仍然会导致越权和横向访问。 |
| 单点登录 | 认证协议 + 目录系统 | SSO 不只是跳转登录页,而是统一身份源、会话边界、信任关系和生命周期管理。 |
| 租户隔离 | 授权模型 | 多租户系统的真正难点往往不是登录,而是用户、角色、资源和数据如何在租户边界内可靠隔离。 |
| 审计合规 | 全链路身份上下文 | 没有身份、角色、设备、来源和操作记录的贯通,很多权限事故只能靠事后猜测。 |
| 身份平台化 | 工程与治理 | IAM 最难的部分,不是协议名词,而是把账号、权限、审批、回收和审计做成组织级稳定能力。 |
服务端持有会话状态,客户端通常只持有 Session ID。优点是可控、易失效;代价是会话存储、扩缩容和跨节点一致性。
Cookie 只是浏览器携带状态的方式。真正的风险在于 HttpOnly、Secure、SameSite 和跨域策略配置是否正确。
对浏览器 Web 应用来说,很多安全问题不是“要不要 JWT”,而是会话边界、CSRF、防盗用和注销链路是否设计完整。
JWT 适合做可自包含的声明载体,但一旦写入过多状态、过长过期时间或缺少撤销策略,就会放大风险和运维难度。
解决“授权委托”,即让第三方在有限范围内代表用户访问资源。它重点关心角色、授权范围和令牌生命周期;如果重点是开放平台接入流程,可与 API 集成专题配合阅读。
OIDC 建立在 OAuth2 之上,补齐了身份层语义,让“我是谁”和“我被授权访问什么”可以分层处理。
统一入口、减少重复登录、集中管控账号生命周期、降低离职残留账号和密码分散管理风险。
当多个系统或多个组织之间需要互信时,身份联邦比“每套系统自己建一份账号体系”更可持续。
不是协议跳转,而是目录同步、角色映射、审批流、会话失效、退出登录和跨系统审计是否贯通。
角色驱动授权,易理解、易维护,适合大部分企业后台与平台系统。
当权限依赖资源属性、组织层级、区域、数据分类或关系图谱时,ABAC / ReBAC 往往比纯 RBAC 更贴近真实业务。
多租户权限的难点在于“同一角色在不同租户下的作用不同”,以及资源查询、缓存、导出和审计都不能越界。
用户密码、API Key、数据库凭证、工作负载令牌、证书和云临时凭证都属于 IAM 范畴,只是载体不同。
最小权限、定期轮换、短期凭证、审批发放、撤销路径、泄露检测和全链路审计。
最危险的不是“没有权限系统”,而是系统里长期存在一批没人知道是谁在用、也没人敢删的高权限凭证。
| 类别 | 常见项目 / 服务 | 定位 | 适用场景 | 关键考量 |
|---|---|---|---|---|
| 身份提供商 | Keycloak / Auth0 / Okta / Entra ID | 认证、SSO、用户目录 | 统一登录、B2B、内部平台 | 扩展性、审计、协议兼容 |
| 目录系统 | AD / LDAP / FreeIPA | 账号源与组织结构 | 企业内网、统一身份源 | 同步方式、组织映射、遗留兼容 |
| 授权引擎 | OPA / Cedar / Casbin / Zanzibar 类模型 | 策略计算与权限判断 | 细粒度授权、平台治理 | 策略复杂度、性能、可解释性 |
| Secrets 管理 | Vault / AWS Secrets Manager / KMS | 密钥与凭证生命周期 | 应用凭证、证书、轮换 | 轮换能力、审批流、审计 |
| 多因素认证 | Authenticator / FIDO2 / WebAuthn | 补强登录安全 | 高风险后台、管理系统 | 用户体验、恢复机制、设备兼容 |
| 审计与治理 | SIEM / IAM Audit / Access Review | 留痕、复盘、权限回收 | 合规、敏感系统、零信任治理 | 上下文完整性、回收效率、告警质量 |
| 方案 | 强项 | 代价 | 适合场景 |
|---|---|---|---|
| RBAC | 易理解、易配置、易审计 | 复杂场景下角色容易膨胀 | 大多数后台系统、组织权限 |
| ABAC | 可表达资源属性与上下文条件 | 策略设计和解释成本更高 | 多租户、数据分类、区域化策略 |
| ReBAC | 表达“谁和谁是什么关系”更自然 | 模型与实现复杂度明显更高 | 协作平台、文档空间、共享资源 |
| 协议 | 关注点 | 适用场景 | 关键提醒 |
|---|---|---|---|
| OAuth2 | 授权委托 | 开放平台、第三方访问 | 它解决的是授权,不是完整身份语义 |
| OIDC | 现代身份认证 | Web / App / SSO | 适合把认证与 OAuth2 流程统一化 |
| SAML | 企业身份联邦 | 传统企业系统、老牌 SaaS | 存量多,但新系统一般更倾向 OIDC |
用户、组织、租户、角色、资源和工作负载身份都应该有清晰主源和同步机制,不能在每个系统里各自生长。
权限系统如果只停留在“菜单可见不可见”,而没有覆盖 API、数据导出、运维操作和批处理任务,风险会长期外溢。
IAM 不是一次性上线项目,而是随着组织结构、业务边界、云资源和合规要求不断演进的长期能力。
| 检查项 | 至少确认什么 | 常见翻车点 |
|---|---|---|
| 角色变更 | 旧角色回收、新角色生效路径、历史会话是否同步失效 | 后台页面看起来权限变了,但旧 Token / Session 仍可继续访问敏感资源 |
| 租户切换 | 租户上下文、缓存键、导出任务、搜索索引都带租户边界 | 用户切租户后看到上一个租户缓存结果,造成横向越权 |
| 高权限审批 | 审批人、时效、原因、留痕和自动回收是否闭环 | 临时提权最后变成永久高权限,谁批的、何时该收回都不清楚 |
| 机器凭证轮换 | 双凭证切换窗口、回滚方案、过期前告警 | 新凭证没全量切换就把旧凭证停掉,导致批任务或回调链路大面积失败 |
| 审计追踪 | 登录、授权、提权、失败尝试、敏感操作是否可按主体追溯 | 日志很多,但缺少主体、租户、资源上下文,事故发生后根本复盘不出来 |
| 阶段 | 要做什么 | 风险控制 |
|---|---|---|
| 申请 | 说明资源、动作、数据范围、期限、业务理由和是否生产 / 高危。 | 申请页展示敏感等级、历史使用、替代方案和最小权限建议。 |
| 审批 | 业务 owner、数据 owner、安全 owner 或生产 owner 按风险分级审批。 | 高危权限强制双人复核,审批人不能同时是执行人和复核人。 |
| 授权 | 按角色、资源、动作、数据范围和有效期发放权限。 | 默认临时授权,生产和管理员权限自动过期,不发永久大角色。 |
| 使用 | 记录关键操作、参数、对象范围、前后值、trace 和业务单号。 | 异常时间、异常地点、批量导出、越权尝试和高危操作触发告警。 |
| 回收 | 到期、转岗、离职、项目结束、长期未使用或风险事件后回收。 | 回收结果可证明,未回收项必须有例外原因和复查日期。 |
| 复核 | 定期输出高权限、长期权限、异常授权、未使用权限和机器账号清单。 | 复核不能只发邮件,要有 owner 确认、整改跟踪和二次抽查。 |
| 复核整改项 | 判断问题 | 整改动作 |
|---|---|---|
| 长期未使用权限 | 过去 30/60/90 天是否没有访问或操作记录? | 自动回收或要求 owner 说明保留理由和下一次复查日期。 |
| 高权限账号 | 是否仍需要管理员、生产写、批量导出或密钥管理权限? | 降权、拆分职责、改成临时授权或增加双人复核。 |
| 异常授权链 | 审批人是否也是执行人、申请人直属下级或缺少数据 / 安全 owner? | 补审批链,重跑授权流程,必要时暂停权限。 |
| 共享与机器账号 | 是否有真实 owner、用途、轮换周期、最小权限和泄露响应路径? | 拆分身份、绑定 owner、轮换密钥、限制资源和动作范围。 |
| 例外权限 | 例外是否超过期限、是否仍有补偿控制、是否可以迁回标准权限? | 关闭例外、补偿控制升级,或登记新的到期复查点。 |
| 隔离面 | 最低要求 | 判断重点 |
|---|---|---|
| 租户上下文 | 请求、任务、消息、日志和 trace 都携带可靠租户标识 | 租户隔离不能只靠开发人员记得加查询条件 |
| 数据访问门禁 | 在 ORM、网关、数据服务或策略层强制注入隔离条件 | 手写 SQL 自觉不是治理机制 |
| 派生链路覆盖 | 缓存 key、搜索索引、报表、导出文件和对象存储都有租户边界 | 串租户常发生在主库以外的派生副本 |
| 资源配额 | 按租户配置 QPS、并发、队列、存储、任务资源和成本归因 | 多租户不仅隔离数据,也要隔离噪声邻居 |
| 隔离审计 | 关键访问、导出、配置和运维动作能证明发生在哪个租户范围内 | 隔离有效性需要能被测试和审计证明 |
身份上下文化: 用户、设备、网络、租户和工作负载上下文会越来越多地参与授权决策。
机器身份治理增强: 工作负载令牌、服务账号和短期凭证的重要性会持续提升,不再只关注人类账号。
权限治理平台化: 审批、回收、审计和访问评审会更多沉淀为组织级标准能力。
细粒度授权引擎: 随着多租户和平台化增强,策略引擎和关系型授权模型会更常见。
Passkey / WebAuthn: 减少密码依赖的无密码登录会继续扩张,但组织级落地仍需兼顾恢复和兼容性。
临时凭证与零信任接入: 长期静态凭证会继续被更短周期、更强审计的访问方式替代。
协议理解停留在名词层: OAuth2、OIDC、SAML 名词很多,但真正风险通常来自实现和边界错误。
身份系统碎片化: 每个产品自己建一套账号和权限,最终会让治理、审计和回收全面失控。
只管登录不管生命周期: 入转调离、租户变更、项目结束和权限回收缺失,会持续积累高风险残留权限。