• 检查用户是否有操作权限


    在aspx页面中检查用户拥有访问此页权限之后,即可检查到用户是否拥有相关的操作权限,如“添加”,“编辑”,“更新”,“删除”等操作权限。

    存储过程: 

    代码
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROCEDURE [dbo].[usp_CheckOperationAction]
    (
        
    @UsersId int,
        
    @PagesId int,
        
    @OperationValue int
    )
    AS
    DECLARE @UsersRoleCount INT,@UsersModuleCount INT,@Result BIT 
      
    --检索用户所拥有的角色
    SELECT @UsersRoleCount =(SELECT COUNT(*FROM [UsersRole] UR 
    INNER JOIN [RolePages] RP ON (UR.[RoleId] = RP.[RoleId]
    WHERE UR.[IsEnable] = 1 AND RP.[IsEnable] = 1 AND UR.[UsersId] = @UsersId AND RP.[PagesId] = @PagesId )

      
    --检索用户是否拥有操作权限。
    SELECT @UsersModuleCount =(SELECT COUNT(*FROM [UsersModule] UM 
    INNER JOIN [ModulePages] MP ON (UM.[ModuleId] = MP.[ModuleId])
    WHERE (UM.[Purview] & @OperationValue = @OperationValueAND MP.[IsEnable] = 1 AND UM.[UsersId] = @UsersId AND MP.[PagesId] = @PagesId )

        
    IF ((@UsersRoleCount > 0OR (@UsersModuleCount > 0))
            
            
    --操作允许
            SET @Result = 1
        
    ELSE
            
    --操作拒绝
            SET @Result = 0  
        
    RETURN @Result
  • 相关阅读:
    MySql学习20----数据库范式
    MySql学习17----数据库事务(01)
    MySql学习19-----用户管理
    MySql学习18----数据库事务---命令使用(02)
    MySql学习16----查看mysql库大小、表大小、索引大小
    MySql学习13----触发器
    MySql学习15----MySql日志
    java公开课-04-log4j
    java公开课-04-异常
    java公开课-03-内部类
  • 原文地址:https://www.cnblogs.com/insus/p/1779555.html
Copyright © 2020-2023  润新知