python - Flask如何实现RBAC的权限管理
高洛峰
高洛峰 2017-04-17 16:57:23
[Python讨论组]
高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(2)
怪我咯

RBAC几乎无关语言、框架,主要是数据库结构上面设计;通常来讲需要5张表:
1、 auth_user // 用户表
2、 auth_node // 可授权节点表
3、 auth_role // 角色表
4、 auth_user_role // 用户《=》角色关系对应表,因为用户和角色是many-to-many的关系(or ones-to-one,看实际情况)
5、 authenticated // 角色授权表 同样是many-to-many的关系

用户可对应N个角色(不一定非一成不变),每个角色可授权N个节点,节点权限验证的时候,使用用户的所有角色去取得已授权的节点列表,然后判断,就这么简单。开发中可能会根据实际情况有一些变动,灵活处理即可。

另外说一句,Flask有RBAC的实现方案,不过没用过,github上面关注度也不高,给传送门吧 https://github.com/shonenada/flask-rbac

高洛峰

flask 不是有自己的 权限管理机制嘛? flask-web开发一书上不是讲有吗 我见很方便

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号