检查用户是否有操作权限

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

存储过程: 

ExpandedBlockStart.gif代码
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

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值