如何检测 ASP.NET 中位置所需的角色?
我正在开发一个 ASP.NET 授权模块,到目前为止,它在与 MVC 应用程序一起使用时工作得很好。
然而,我的要求之一是它也必须与普通的旧 ASP.NET 应用程序一起工作。
为此,我需要检测用户访问任意 URL 所需的角色。
例如,假设我们在 web.config 中:
<location path="foo">
<system.web>
<authorization>
<deny user="?"/>
<allow role="bar, superFoo"/>
</authorization>
</system.web>
</location>
除了自己读取 web.config 之外,我如何检测路径 foo
需要角色 bar
和 <代码>superFoo?
我正在通过 IHttpModule 接口的实现来检查角色要求。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
![扫码二维码加入Web技术交流群](/public/img/jiaqun_03.jpg)
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
对于 ASP.NET Web 表单应用程序,您必须调用 Roles 类中的
GetRolesForUser()
或IsUserInRole(String)
方法来查看用户是否是在角色中。For a ASP.NET web forms application You have to call
GetRolesForUser()
orIsUserInRole(String)
methods in Roles class to see if the user is in the roles.您可以使用 UrlAuthorizationModule.CheckUrlAccessForPrincipal。
You can check ability of access to path by using UrlAuthorizationModule.CheckUrlAccessForPrincipal.