在研究如何在Winforms应用程序中执行基于角色的访问控制时,我遇到了一些使用WindowsIdentity和WindowsPrincipal的解决方案。这让我思考了一个群体和一个角色之间的差异,当然也有一些答案(比如这和这),它们似乎表明它们是不同的(尽管前者确实说"...Unfortunately, operating systems tend to blur the distinction, treating roles as groups.")。
WindowsPrincipal.IsInRole()方法求和;
“确定当前主体是否属于具有指定名称的Windows用户组。”
这是否意味着,在这方面,Windows组被认为是角色?
有一些Windows 文档讨论如何分配Windows或组角色,但我对此并不熟悉。有人能确认在该链接中讨论的角色是WindowsPrincipal文档中提到的角色吗?
发布于 2017-12-29 14:55:39
“将Windows用户或组分配给角色”(https://technet.microsoft.com/en-us/library/cc731411(v=ws.11%29.aspx))一文是关于Windows 授权管理器的。本文说,您可以将用户和组添加到角色中,因此,对于授权管理器而言,角色与Windows组并不相同。
在WindowsPrincipal.IsInRole()中,使用“角色”一词只是因为WindowsPrincipal实现了ClaimsPrincipal,后者实现了IPrincipal,因此需要实现IsInRole()方法。因此,在WindowsPrincipal的上下文中,角色与Windows相同。
https://stackoverflow.com/questions/48014684
复制相似问题