首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用户权限控制

用户权限控制
EN

Stack Overflow用户
提问于 2017-01-23 18:12:40
回答 2查看 370关注 0票数 0

我正在开发一个WPF应用程序,它有一些权限限制,所以有一些屏幕只有管理员才能看到,一些功能只允许他们使用。

目前,我正在检查每个屏幕的构造函数方法上的权限访问级别,每个屏幕都有一个用户对象流经应用程序。但我不禁想到,一定有更聪明、更恰当的方法来做到这一点。

有没有可能使用某种PermissionHandler类来进行验证,并根据用户的权限级别设置用户可以和不能做的事情?

谢谢你的到来。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-01-23 19:08:10

我认为您想要做的是将安全内容放在业务逻辑层而不是UI中。

我不确定您的项目架构/设计模式,但这个QA是将安全逻辑转移到控制器或ViewModel:https://softwareengineering.stackexchange.com/q/197977/38951中的一个很好的开始

票数 1
EN

Stack Overflow用户

发布于 2017-01-23 18:34:08

这当然是有可能的。您可以使用单例模式,也可以使用静态类。类似这样的东西(伪代码):

代码语言:javascript
运行
复制
public static class PermissionHandler
{
    public static User {get;set;}
    public static Login(string username, string password)
    {
        //set User here 
    }
}

然后您甚至可以绑定到User.Claims或在PermissionHandler上创建一个方法来获得正确的权限。无论如何,如果你只是用它来显示/隐藏你的控件,你的应用程序可以很容易地被黑客攻击,例如使用Snoop。因此,如果你真的需要“保护”某些功能的使用,你应该在业务逻辑或服务器端(如果你有的话)中进行检查。

如果你选择服务器端,我强烈建议你使用令牌服务。例如https://jwt.io/ADFS。当然还有很多其他的,但对于这种QA格式来说,这将花费太长的时间……

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41803807

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档