beego利用casbin进行权限管理——第一节 起步、测试
2017-11-06 18:46
507 查看
casbin很好,支持beego等框架,拿过来试了一下,先记录如下:
1、我的权限设计思路类似hauth是:a)用户;b)角色;c)权限;d)资源放在树状目录下,数据库记录的是目录的id,而非具体的路径。向用户分配角色,再将权限分配给角色。
2、casbin中下载beego-orm-adapter,并修改一点代码:
3、beego项目中conf目录下拷入rbac_model.conf;建立一个rolecontrollers.go,其中代码来自beego-orm-adapter中的readme.md,如下图:
4、bee run就会新建一个casbin_rule的数据库,填入策略数据如下图:
5、可以建个路由访问test()测试一下了:
问题:用户访问的资源比如是/v1/v2/v3/data.jpg,而数据库中所保存的资源data.jpg的路径不是明确的,只是保存了它所属的目录v3的id——目录v3的数据库也只保存了它父级v2的id……(也就是说/v1/v2/v3/data.jpg中的v1随时可能改名成v4,然后整个资源路径就变成/v4/v2/v3/data.jpg )所以策略要用保存id来实现。
先到这了。
1、我的权限设计思路类似hauth是:a)用户;b)角色;c)权限;d)资源放在树状目录下,数据库记录的是目录的id,而非具体的路径。向用户分配角色,再将权限分配给角色。
2、casbin中下载beego-orm-adapter,并修改一点代码:
3、beego项目中conf目录下拷入rbac_model.conf;建立一个rolecontrollers.go,其中代码来自beego-orm-adapter中的readme.md,如下图:
4、bee run就会新建一个casbin_rule的数据库,填入策略数据如下图:
5、可以建个路由访问test()测试一下了:
问题:用户访问的资源比如是/v1/v2/v3/data.jpg,而数据库中所保存的资源data.jpg的路径不是明确的,只是保存了它所属的目录v3的id——目录v3的数据库也只保存了它父级v2的id……(也就是说/v1/v2/v3/data.jpg中的v1随时可能改名成v4,然后整个资源路径就变成/v4/v2/v3/data.jpg )所以策略要用保存id来实现。
先到这了。
相关文章推荐
- beego利用casbin进行权限管理——第四节 策略更新
- beego利用casbin进行权限管理——第二节 策略存储
- beego利用casbin进行权限管理——第三节 策略查询
- Centos7 搭建git服务器,并利用Gitosis进行权限管理
- 试试利用eoLinker进行环境管理提高测试效率
- 利用session 会话分析是否登陆,进行登陆权限管理
- 利用位运算进行权限管理
- 怎么利用jira的Issue style 的可定制性来进行需求和测试用例方面的管理与testLink集成
- 利用位运算进行权限管理
- Tabular系列之问题1:如何利用其他人的账号进行权限测试?
- 利用Spring aop 进行权限管理
- 利用位运算进行权限管理
- 利用位运算进行权限管理
- SpringSecurity04 利用自定义方法对用户的权限进行管理
- 利用JMeter进行压力测试(1)(转)
- QA管理:推动开发团队进行测试认证
- firefox 利用 Selenium IDE 对 DBackup 进行自动化测试
- 利用google对特定站点进行测试的实现
- 6、Jenkins利用Role-based Authorization Strategy插件管理项目权限
- 利用zabbix API进行管理