如果我在我的 ASP.NET web 应用程序的 web.config 中放置这样的东西:
<authorization>
<allow roles="MyUsers" />
<deny users="*" />
</authorization>
然后有一个 ActiveDirectory 组
SpecialGroup
在里面 MyUsers
, 是否允许 SpecialGroup 的成员访问我的应用程序?
最佳答案
是的,它会。当您登录时,会构建一个安全 token ,其中包含您所属的所有组¹ 的详细信息,其中包括所有嵌套组。该 token 用于确定访问权限。这就是为什么当您被添加到组时必须注销和重新登录的原因。
但可以肯定的是,我在我的网站上对其进行了测试,并且它按描述的那样工作。
¹ 实际上,可能存在于太多组中,以至于它们无法全部放入 token (大小有限)中,在这种情况下,您的 token 包含前“n”组(取决于返回的顺序)域 Controller ,因此您可以看到一些奇怪的行为)。
关于asp.net - web.config 中的授权是否也检查子组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1129008/