为了账号安全,请及时绑定邮箱和手机立即绑定

检查用户是否有操作权限

标签:
SQL Server

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

存储过程: 

5acf07550001405b00110016.jpg代码

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 = @OperationValue) AND MP.[IsEnable] = 1 AND UM.[UsersId] = @UsersId AND MP.[PagesId] = @PagesId )

    IF ((@UsersRoleCount > 0) OR (@UsersModuleCount > 0))
        
        --操作允许
        SET @Result = 1
    ELSE
        --操作拒绝
        SET @Result = 0  
    RETURN @Result

 

 

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消