easyrbac:基于角色的人类访问控制
easyrbac的Python项目详细描述
#易生银行
[![构建状态](https://travis-ci.org/prodics/rbac.svg?branch=master)(https://travis ci.org/prodicus/rbac)
``````````
`````python
>easyrbac import accesscontrollist,user,role
每个人的角色=角色('Everyone')
管理员角色=角色('Admin')
所有人用户=用户(角色=[Everyone角色])
管理员用户=用户(角色=[Admin角色,Everyone角色])
acl=AccessControlList()
acl.resource读取规则(每个人角色,'Get',/api/v1/employee/1/info')
acl.resource删除规则(管理员角色,'Delete',,'/api/v1/employee/1/')
尚未为特定对象定义规则,默认情况下将不允许任何此类操作。
对于[角色中的用户角色,每个用户中的角色的[role.get_name()]:
断言ACL。是否允许写入(用户角色,“写入”,'/api/v1/employee/1/info')==false
'/api/v1/employee/1/')==true
否则:
断言acl.is_delete_allowed(user_role,'delete','/api/v1/employee/1/')==false
`````
todo
-[]添加表示父级的层次角色<;->;子关系
-[]将此添加到瓶子/烧瓶顶部
-[]使其“pip”可安装
-[http://profesandhu.com/articles/adcom/advcom/adv-comp-u-rbac.pdf](http://profesandhu.com/articles/advcom/adv-comp-u-rbac.pdf)
-[http://www.comp.nus.edu.sg/~tankl/cs5322/读数/rbac1.pdf](http://www.comp.nus.edu.sg/~tankl/cs5322/读数/rbac1.pdf)
-[http://www.comp.com/http://www.com/ansi-rbac-intro/](https://symas.com/http://www.com/www.symas.com/ansi.com/ansi简介/)
-[https://pythonhosted.org/flask principal/](https://pythonhosted.org/flask principal/)
-[https://iamfortress.net/2014/11/24/使用角色进行访问控制不是rbac/](https://iamfortress.net/2014/11/24/使用角色进行访问控制不是rbac/)
-[http://cloudify.co/2016/04/15/simple secure role-based access control rest api rbac server devops cloud orchestration.html](http://cloudify.co/2016/04/15/simple secure role-based access control rest api rbac server devops cloud orchestration.html)
[![构建状态](https://travis-ci.org/prodics/rbac.svg?branch=master)(https://travis ci.org/prodicus/rbac)
``````````
`````python
>easyrbac import accesscontrollist,user,role
每个人的角色=角色('Everyone')
管理员角色=角色('Admin')
所有人用户=用户(角色=[Everyone角色])
管理员用户=用户(角色=[Admin角色,Everyone角色])
acl=AccessControlList()
acl.resource读取规则(每个人角色,'Get',/api/v1/employee/1/info')
acl.resource删除规则(管理员角色,'Delete',,'/api/v1/employee/1/')
尚未为特定对象定义规则,默认情况下将不允许任何此类操作。
对于[角色中的用户角色,每个用户中的角色的[role.get_name()]:
断言ACL。是否允许写入(用户角色,“写入”,'/api/v1/employee/1/info')==false
'/api/v1/employee/1/')==true
否则:
断言acl.is_delete_allowed(user_role,'delete','/api/v1/employee/1/')==false
`````
todo
-[]添加表示父级的层次角色<;->;子关系
-[]将此添加到瓶子/烧瓶顶部
-[]使其“pip”可安装
-[http://profesandhu.com/articles/adcom/advcom/adv-comp-u-rbac.pdf](http://profesandhu.com/articles/advcom/adv-comp-u-rbac.pdf)
-[http://www.comp.nus.edu.sg/~tankl/cs5322/读数/rbac1.pdf](http://www.comp.nus.edu.sg/~tankl/cs5322/读数/rbac1.pdf)
-[http://www.comp.com/http://www.com/ansi-rbac-intro/](https://symas.com/http://www.com/www.symas.com/ansi.com/ansi简介/)
-[https://pythonhosted.org/flask principal/](https://pythonhosted.org/flask principal/)
-[https://iamfortress.net/2014/11/24/使用角色进行访问控制不是rbac/](https://iamfortress.net/2014/11/24/使用角色进行访问控制不是rbac/)
-[http://cloudify.co/2016/04/15/simple secure role-based access control rest api rbac server devops cloud orchestration.html](http://cloudify.co/2016/04/15/simple secure role-based access control rest api rbac server devops cloud orchestration.html)