优雅的Web许可方案

Oni*_*ght 1 permissions binary flags

我目前正在编写一个大约6-12页的Web应用程序.在每个页面上,我希望用户能够执行以下一些(或全部)操作:查看,添加,更新和删除.

我想到的当前权限方案是在数据库中有一个整数.该整数将对应于二进制数(例如:26 - > 11010).生成的二进制数用作"切换"并确定用户具有的权限.什么位表示权限存储在另一个表中的定义.

我的问题是,如果每个页面有4个选项(查看,添加,编辑,删除),那么这种确定权限的方式可能会失控.

是否有人对于权限方案有任何其他想法,这种方案与此一样灵活(关于可配置性),但不是压倒性的(关于整数限制)?

Chr*_*s K 5

也许更好的答案,如果你真的需要走这条路线,就是在你的数据库中有一个每页/每用户行,并有一组权限,所以你的表看起来像这样:

 page        user     create read update delete 
 =====       =====    ====== ==== ====== ======
 test.html   joe      y      y    y      n 
 test2.html  joe      n      y    y      n 
Run Code Online (Sandbox Code Playgroud)

或者,通常情况下,您最好拥有角色,例如作者,编辑,审阅者,管理员,并为您的角色提供细粒度的权限,并将用户置于角色中.