zoukankan      html  css  js  c++  java
  • mvc超简单权限控制-只在登录的时候控制相关页面和相关增删查按钮权限

    目前实现只在登录时,根据登录账号进行相关页面,相关增删查相关功能按钮的权限控制。

    相应数据库中有5张表来控制权限:

    权限基础表:PowerID是在数据库中select newid()获取到的,PowerCode随意编号,PowerName按功能描述取名字。

    insert into CM_Power(PowerID, PowerCode, PowerName) values('5164df24-c12a-4b39-846d-047174f90f9e', '0101', '审核运动')

    insert into CM_Power(PowerID, PowerCode, PowerName) values('E4AEC0CE-764C-41F1-B5DB-AE3034E5D958', '0104', '增减按钮')
    insert into CM_Power(PowerID, PowerCode, PowerName) values('44E3D13A-374E-4ED2-A449-AE9011D0FB43', '010401', '增加按钮')

    分组基础表:GroupID是select newid()获取的,GroupName最好是按功能描述--也就是和上面权限大致意思一样,便于以后对应设置。

    insert into CM_Group (GroupID, GroupName) values('e4a4e3e3-79f7-45e5-9cc3-5ed41ac24ae5','审核运动')
    insert into CM_Group (GroupID, GroupName) values('91B09676-1598-4F57-AB9C-15104661CA35','新增调整总里程')

    组权限功能表:设置每个功能小组对应什么权限,GroupID对应分组基础表中的小组id,PowerCode权限code对应权限基础表中的code表--该code值,是要以后查询出来写后台的。

    insert into CM_GroupPower (GroupID, PowerCode)values('e4a4e3e3-79f7-45e5-9cc3-5ed41ac24ae5','0101')
    insert into CM_GroupPower (GroupID, PowerCode)values('91B09676-1598-4F57-AB9C-15104661CA35','010401')

    所有用户分组表:设置所有登录用户的账号,以便在登录时控制整体权限--各页面权限和增删查功能按钮权限。

    GroupID对应分组基础表中id,UserID对应dbo.user基础表中的ID.

    注意:CM_UserGroup这张表很关键,一个登录账号可以在多个不同的分组,相当于具有不同的功能权限。

    例如,以下是一个登录账号有3个分组,有3个模块的功能。

    insert into CM_UserGroup (GroupID, UserID) values('c7a000ab-16ac-4c25-93ef-14019fbefb5c','086DE0CE-8225-4EA8-88D2-FFD65254C2ED')
    insert into CM_UserGroup (GroupID, UserID) values('e4a4e3e3-79f7-45e5-9cc3-5ed41ac24ae5','086DE0CE-8225-4EA8-88D2-FFD65254C2ED')
    insert into CM_UserGroup (GroupID, UserID) values('91B09676-1598-4F57-AB9C-15104661CA35','086DE0CE-8225-4EA8-88D2-FFD65254C2ED')

     总结:以上叙述都是针对一个简单的项目。一般项目有menu菜单表,记录所有页面id,在这个表中对应每个id设置不同的权限,例如:场和公司权限。

  • 相关阅读:
    python threading模块中对于信号的抓取
    docker挂载NVIDIA显卡运行pytorch
    更换HomeBrew源
    IX-Protected Dataplane Operating System解读
    NFV、DPDK以及部分用户态协议研究
    (一)最小的Django
    (二)无状态的web应用(单py的Django占位图片服务器)
    Windows7 64位环境下Python-igraph环境配置
    关于docker使用的几个小问题(二)
    关于docker使用的几个小问题(一)
  • 原文地址:https://www.cnblogs.com/Ly426/p/9894689.html
Copyright © 2011-2022 走看看