ASP.NET MVC 的新功能。我正在寻找一些不完全特定于 MVC 的 UI 设计理念。可能没有确切的答案,但这是我已经开始的。
需要有一个带有 3 个选项卡的页面。权限 | 团体 | 用户
1) 权限视图将允许您对网格中的权限执行 CRUD 操作 仅当权限未在任何组中使用时才允许删除特定权限。
2) 在组视图中,网格中允许对组进行 CRUD 操作。此外,还提供了一个权限链接,允许为组执行映射(添加/删除)权限同样,仅当组未被任何用户使用时,才允许对组执行 DELETE 操作。
3) 在用户视图中,将显示系统中所有现有的用户。网格显示允许按用户名、名字或姓氏搜索用户。应为每个用户提供组链接,单击该链接允许为用户进行映射(添加/删除)组。在同一视图中的此映射下方,应提供单独的权限覆盖部分,以便可以使用 IsGranted (true/false) 添加特定权限。
数据库设计说明:
1) 组将被分配权限。根据用户所属的组,用户将获得权限。
2) UserPermissionOverrides 将处理以下情况 - 用户需要被授予某些权限(无论他们处于何种角色)或 - 如果需要从用户撤消某些权限,即使他们属于某个组。这将使我们能够灵活地处理添加或删除特定权限的特殊场景。
因此,当用户登录时 - 上面的 1) 将用于检索用户的组权限,然后 2) 将被执行以检索覆盖(授予/撤销)。结合 1) 和 2) 将为我们提供用户的最终权限,然后将其存储在表单身份验证 cookie 中以防止进一步的数据库命中