mcpField
A
access-control-rbac

access-control-rbac

github.com/aj-geddes安全373760 次安装34 周前更新
代码仓库

关于 access-control-rbac

用于设计和实施基于角色的访问控制,涵盖权限管理、属性策略与最小权限原则,并提供多种语言的参考实现。

主要功能

  1. 01RBAC 权限管理
  2. 02基于属性的访问策略
  3. 03角色层级设计
  4. 04访问变更审计与复核
  5. 05Node.js、Python 和 Java 参考指南

适用场景

  1. 01多租户应用的权限控制
  2. 02企业访问管理与 API 授权
  3. 03管理面板和数据访问控制
  4. 04合规场景下的权限审查

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/aj-geddes/useful-ai-prompts --skill access-control-rbac

安装后在 Claude Code 中输入/access-control-rbac确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
java-spring-security-rbac.md
nodejs-rbac-system.md
python-abac-attribute-based-access-control.md
scripts/
security-checklist.sh

详细介绍

访问控制与 RBAC

目录

概述

实施全面的基于角色的访问控制系统,管理权限、制定基于属性的策略,并遵循最小权限原则。

适用场景

  • 多租户应用
  • 企业访问管理
  • API 授权
  • 管理员控制面板
  • 数据访问控制
  • 合规要求

快速入门

最简可运行示例:

// rbac-system.js
class Permission {
  constructor(resource, action) {
    this.resource = resource;
    this.action = action;
  }

  toString() {
    return `${this.resource}:${this.action}`;
  }
}

class Role {
  constructor(name, description) {
    this.name = name;
    this.description = description;
    this.permissions = new Set();
    this.inherits = new Set();
  }

  addPermission(permission) {
    this.permissions.add(permission.toString());
  }

  removePermission(permission) {
// ... (see reference guides for full implementation)

参考指南

references/ 目录中的详细实现:

指南内容
Node.js RBAC 系统Node.js RBAC 系统
Python ABAC(基于属性的访问控制)Python ABAC(基于属性的访问控制)
Java Spring Security RBACJava Spring Security RBAC

最佳实践

✅ 应该做
  • 遵循最小权限原则
  • 使用角色层级结构
  • 审计访问权限变更
  • 定期审查访问权限
  • 职责分离
  • 记录权限
  • 测试访问控制
  • 使用基于属性的策略
❌ 不应该做
  • 授予过多权限
  • 共用账户
  • 跳过访问权限审查
  • 将权限硬编码
  • 忽略审计日志
  • 造成角色膨胀

评论

支持 Markdown