網頁如果要設定權限,怎麼設計比較好?

发布于 2022-09-07 21:30:31 字数 234 浏览 31 评论 0

比如說上方有選單

報表
統計
文章
商品

管理員
編輯
會計

這是每一個職稱的名字
每一個職稱能進入的頁面不同
比如說管理員可以進入以上四個頁面
編輯只能進文章跟商品
會計只能進報表跟統計

前提是管理員可以勾選每個職缺可進入哪些頁面

1.數據庫會怎麼設計呢
2.頁面怎麼擋比較有效率呢

有大神能指點一下嗎?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

江湖彼岸 2022-09-14 21:30:32

根据你的场景设定,需要五张表

  1. Role - 定义角色名称: 字段 id, name
  2. Function - 定义所有需要控制访问的页面 id, page_url, name -- page_url是相对路径,加索引
  3. RoleFunction - 定义角色可以访问的页面 id, role_id, function_id
  4. Member - 定义人员,分配角色 id, name
  5. MemberRole - 给人员分配单个或多个角色 id, member_id, role_id

有了上面四张表,在进入需要授权的每个页面前判断当前用户是否有权限

  1. 根据MemberRole表获得当前用户的所有role,进而获得所有可访问的page_url
  2. 当前页面的pageUrl若在上面返回的page_url中,则展示内容给用户。 否则提示用户没有访问权限。

这两步使用一个sql语句就可以完成。

若要更复杂的功能,比如管理员可以编辑A页面,其他用户只可以查看A页面,那么需要在RoleFunction表中添加一个字段 opeartion, 对应的值分别为 edit 和 view

听,心雨的声音 2022-09-14 21:30:32

RBAC权限设计了解一下

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文