擴充ASP.NET MEMBERSHIP許可權功能(一 )

來源:互聯網
上載者:User

  擴充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許可權功能(一 )

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.