我对网络应用程序中的角色管理有点困惑。
假设:用户属于一个角色,一个角色拥有一个或多个权限,权限可以是:查看页面options.html。
如果角色由权限组成(查看此页面、查看该页面等),我们应该如何检查用户允许在代码中查看哪个页面?
我想到了两个选择:
a)角色级别:如果用户是该角色的成员,则显示页面...
b)权限级别:如果用户有权限ToViewThatPage则显示页面...
如果 a) 是可行的方法,那么为什么我们需要权限?
管理员角色有权查看该页面,稍后有人会更改权限。
在我们的代码中,我们询问用户是否是管理员角色的成员,但我们不检查权限。
问题:
如何在源代码(JSP/JSF、ASP.NET)中管理用户角色/权限?
最佳答案
如果您不使用角色,那么维护用户就会变得很麻烦,因为当需求发生变化时您必须更改每个用户。如果您不使用页面或功能级别权限,那么维护代码就会变得很麻烦,因为当需求发生变化时您必须更改代码。
最好的选择是让页面上的功能在需要时需要权限,让用户属于一个或多个角色,然后找到一种将角色与权限相匹配的方法。
关于web-applications - Web 应用程序中的模糊用户管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4923786/