既然是说,就不整源码什么的,如何使用你看官方文档就可以
我主要说说rbac的意境。
在rbac里有role,perssion,rule,user。
role就是角色,含义是抽象的,代表的是user的分类
perssion是权限,含义也是抽象的,至于怎么理解,稍后联合user,rule一起说。
rule是规则,表示你有没有权利使用这个角色或者权限。
user就是用户,通常会把一个角色指派给用户,但是也可以只指派给用户一个权限。
这些了解了,剩下的就是哪些是预设的,哪些是在预设之后使用的
perssion是预设的,理论上,Yii四张表中,最先出现的一条数据就是item里的perssion(当然第一个是role也没问题)
其次,rule也是预设的,有多少规则写完以后,用控制台或者自己写个接口运行一下,直接生成,以后只加不减(减也可以,但是容易引发删除异常)
然后就添加role
建立role和perssion的关系
最后把role指派给用户
这样理解就比较清晰了吧,这回再去看官方文档,也许就能更理解了吧
PS:之前我有个误区,我把assignment表里的user_id理解成了token,用户授权给第三方,就相当于创建一个token,然后把角色给这个token。
最后一句,总而言之呢,item,item_chile,rule这三张表的数据很有限,assignment这个表的数据等于账号表的数据,这是我前期没领悟到的,希望能帮助到你。