Python 权限控制模块 Casbin

作者:星星在线? 时间:2022-09-21 07:35:46 

简介

Casbin是一个强大的、高效的开源访问控制框架,其权限管理机制支持多种访问控制模型。

casbin 的主要特性包括:

  • 支持自定义请求的格式,默认的请求格式为{subject, object, action};

  • 具有访问控制模型 model 和策略 policy 两个核心概念;

  • 支持 RBAC 中的多层角色继承,不止主体可以有角色,资源也可以具有角色;

  • 支持超级用户,如 root 或 Administrator,超级用户可以不受授权策略的约束访问任意资源;

  • 支持多种内置的操作符,如 keyMatch,方便对路径式的资源进行管理,如 /foo/bar 可以映射到 /foo*;

casbin 不做的事情:

  • 身份认证
    authentication(即验证用户的用户名、密码),casbin 只负责访问控制。应该有其他专门的组件负责身份认证,然后由 casbin 进行访问控制,二者是相互配合的关系;

  • 管理用户列表或角色列表
    casbin 认为由项目自身来管理用户、角色列表更为合适,casbin 假设所有策略和请求中出现的用户、角色、资源都是合法有效的。

为什么我要使用 Casbin?

在我做的那么多的项目中,权限处理经常是一个比较头疼的问题,而且每个项目有不同的权限控制方式,我一直在想有没有一种通用的权限控制框架,可以适用各种不同的权限控制,每个项目只要做简单的修改就能完全适用,直到无意中看到 casbin 这个库。

目前我只是在初步的尝试使用,因此这里只做简单的使用记录,把我在项目中使用的记录下来,供自己后面继续研究使用,也算是给想要使用此库的 pythoner 一个例子。

官方文档地址

官方提供了一个非常好的编辑器,可以让我们直接体验和测试 casbin 的权限处理。

Python 权限控制模块 Casbin

我们简单的以官方提供的例子来做一个说明,首先 Policy 里面配置的是权限策略,从权限策略中可以看出用户 alice 拥有角色 data2_admin,而角色 data2_admin 对数据 data2 有 read/write 权限,因此用户 alice 对数据 data2 拥有 read/write,可以看到下面的测试中也是 true。

来源:https://juejin.cn/post/7085490095955902501

标签:Python,权限,控制,模块,Casbin
0
投稿

猜你喜欢

  • SqlServer 索引自动优化工具

    2012-10-07 10:41:09
  • SQL Server数据库日志清除的两个方法

    2009-01-08 13:44:00
  • ASP对FoxPro自由表(DBF文件)的操作

    2010-05-27 12:20:00
  • python开发简单的命令行工具简介

    2021-01-06 14:39:20
  • Python tensorflow与pytorch的浮点运算数如何计算

    2023-06-28 14:13:15
  • 让你的空间支持域名绑定子目录的解决办法

    2010-09-15 10:03:00
  • python封装成exe的超详细教程

    2021-07-30 14:46:20
  • Python中利用xpath解析HTML的方法

    2023-10-02 06:55:02
  • python 七种邮件内容发送方法实例

    2022-01-13 21:06:38
  • PyQT5之使用QT Designer创建基本窗口方式

    2023-10-06 05:59:41
  • 如何通过python实现全排列

    2022-11-30 16:49:46
  • 用python做个代码版的小仙女蹦迪视频

    2022-10-14 12:48:59
  • python实现用户名密码校验

    2022-12-14 07:48:33
  • python 利用文件锁单例执行脚本的方法

    2021-11-08 08:05:38
  • pytorch教程resnet.py的实现文件源码分析

    2023-11-07 21:18:47
  • 银行账号输入格式化, 支持部分浏缆器

    2007-09-26 18:27:00
  • PHP 引用的概念

    2023-11-14 21:24:28
  • PHP页面静态化的优缺点与实现

    2023-05-27 09:14:40
  • 详解Python中的字符串格式化

    2023-09-10 22:38:14
  • python3 读写文件换行符的方法

    2021-09-29 11:21:22
  • asp之家 网络编程 m.aspxhome.com