zoukankan      html  css  js  c++  java
  • 扩展ASP.NET MEMBERSHIP权限功能(一 )

      扩展ASP.NET MEMBERSHIP权限功能

      目前常用的ASP.NET 的membership功能,可以将权限控制到页,需要我们在web.config中进行设置,如果需求稍多一点,你会发现有些力不从心,网上有很多开源的权限管理系统,但差不多都是重新设计开发,所以我这里要做的是在membership的基础上增加 用户组权限到每个页面及按钮的功能,如A组只能新增,他的页面上面就只有新增按钮,B组只能删除和修改 他的界面上就没有新增的功能,即使B组知道新增的URL,进入后也会提示无权限,各个功能都能过后台数据库进行配置,全局来控制。

      membership的用法不用多说,下面讲讲思路

      1. 当用户访问文件目录,读取当前目录下面的web.config

      2. 根据web.config中的设定每个文件权限,并匹配数据库中的信息,如果符合条件显示按钮或页面,不成立隐藏或提示

      1.数据库

      创建表

      aspnet_Ex_PermissionsForRoles
      

      创建视图

      vw_aspnet_Ex_PermissionsForRoles

      

         创建存储过程

      aspnet_Ex_GetPermissionByRoles

      

    代码
    CREATE PROCEDURE [dbo].[aspnet_Ex_GetPermissionByRoles]
        
    @roles                nvarchar(max)=NULL,
        
    @path                nvarchar(max)=NULL
    AS
    BEGIN
        
    SET NOCOUNT ON;

        
    declare @sql nvarchar(2000)
        
    set @sql='select * from [vw_aspnet_Ex_PermissionsForRoles] where RoleName in('+@roles+') and ModulePath='''+@path+''''
        
    if @roles is not null
            
    EXEC sp_executesql @sql
    END

      数据库准备完毕
     

      下面是网站结构

      

       

      项目文件结构

      

      下一篇介绍相关代码

      

      目录

      扩展ASP.NET MEMBERSHIP权限功能(四 )之页面权限
      扩展ASP.NET MEMBERSHIP权限功能(三 )之权限控件
      扩展ASP.NET MEMBERSHIP权限功能(二 )
      扩展ASP.NET MEMBERSHIP权限功能(一 )

  • 相关阅读:
    LINUX和git
    drf [Django REST Framework]
    python用法小技巧
    爬虫
    django入门到精通
    前端框架
    mysql数据库
    网络编程和并发编程
    面向对象
    python基础
  • 原文地址:https://www.cnblogs.com/hubj/p/1734447.html
Copyright © 2011-2022 走看看