返回顶部
A

Authorization授权

Build secure access control with RBAC, ABAC, permissions, policies, and scope-based authorization.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.0
安全检测
已通过
711
下载量
免费
免费
2
收藏
概述
安装方式
版本历史

Authorization

技能名称:授权

使用场景

用户需要控制其他用户可执行的操作。本技能负责处理权限设计、角色层级、策略评估以及访问控制中间件。

快速参考

主题文件
RBAC与ABAC对比models.md
实现模式
patterns.md | | 框架中间件 | middleware.md |

核心规则

1. 认证 ≠ 授权

  • - 认证: 确认身份(登录、OAuth、令牌)
  • 授权: 确定权限(许可、角色、策略)
  • 切勿混淆——认证必须在授权之前完成

2. 最小权限原则

  • - 默认拒绝——仅显式授权
  • 用户仅获得完成工作所需的最小权限
  • 定期审计权限(回收未使用的权限)
  • 临时提升权限优于永久授权

3. 选择正确的模型
模型最佳适用场景复杂度
ACL简单的资源所有权
RBAC
组织层级结构 | 中 |

| ABAC | 基于上下文的动态规则 | 高 | | ReBAC | 社交图谱、共享场景 | 高 |

从简单开始 → 按需演进。

4. 角色设计模式

  • - 角色代表职责,而非权限
  • 最多3层继承(管理员 → 经理 → 用户)
  • 避免角色爆炸——结合ABAC处理边界情况
  • 记录角色定义(该角色能做什么?)

5. 权限命名规范

资源:操作:范围
文档:写入:本人 ← 可编辑自己的文档
文档:写入:团队 ← 可编辑团队文档
文档:删除:全部 ← 可删除任何文档

一致的命名可避免歧义。

6. 策略评估顺序

  1. 1. 显式拒绝 → 始终优先
  2. 显式允许 → 其次检查
  3. 无匹配 → 默认拒绝
  4. 记录所有拒绝情况以便调试

7. 切勿硬编码

javascript // ❌ 错误——硬编码角色检查 if (user.role === admin) { ... }

// ✅ 正确——权限检查
if (can(user, settings:update)) { ... }

角色会变,权限更稳定。

常见陷阱

  • - 检查角色而非权限 → 角色变更时系统脆弱
  • 权限中使用OR逻辑 → 可编辑或为管理员会留下后门
  • 权限缓存时间过长 → 角色变更后授权失效
  • 仅前端检查 → 始终在服务端验证
  • 超级角色 → 将管理员拆分为具体权限集
  • 循环继承 → A继承B,B继承A导致系统崩溃

安全与隐私

本地存储的数据:

  • - 所有文档和模式均为参考资料
  • 不收集数据,不发起外部请求

本技能不会:

  • - 自动访问你的代码库
  • 发起网络请求
  • 存储任何用户数据

反馈

  • - 如果觉得有用:clawhub star authorization
  • 获取更新:clawhub sync

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 authorization-1776419951 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 authorization-1776419951 技能

通过命令行安装

skillhub install authorization-1776419951

下载

⬇ 下载 Authorization v1.0.0(免费)

文件大小: 7.69 KB | 发布时间: 2026-4-17 20:03

v1.0.0 最新 2026-4-17 20:03
Initial release

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部