gpt4 book ai didi

asp.net 授权 : location and IPrincipal. IsInRole

转载 作者:行者123 更新时间:2023-12-02 21:24:54 26 4
gpt4 key购买 nike

场景

我正在使用自定义IPrincipalIIdentity进行asp.net授权。我设置了PrincipalIdentity期间PostAuthenticateRequest使用 IHttpModule 的事件.

web.config 大约如下所示:

<system.web>
<authorization>
<allow verbs="GET,POST" roles="domain\group"/>
<deny verbs="*" users="*"/>
</authorization>
</system.web>
<location path="~/admin/user_search.aspx">
<system.web>
<authorization>
<allow verbs="GET,POST" roles="admin"/>
<deny verbs="*" users="*"/>
</authorization>
</system.web>
</location>

问题

提出请求时 IPrincipal.IsInRole方法被调用一次来检查 domain\group但不会再次被调用来检查 admin角色。是什么原因造成的?我有 location语法不正确或者是否存在更深层次的问题?

注释

我最初以为 admin 目录中的 web.config 会覆盖根目录中的 web.config,但我尝试将其完全删除并将其用于 location元素。到目前为止,两者都没有奏效。

最佳答案

不要在 元素的路径开头使用波形符 (~),因为它们不会被解释。在您的示例中,path="admin/user_search.aspx"应该是正确的。

关于asp.net 授权 : location and IPrincipal. IsInRole,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/584050/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com