【问题标题】:Different authentication mechanism for different pages不同页面的不同认证机制
【发布时间】:2011-08-04 10:10:45
【问题描述】:

我正在使用当前仅从 Intranet 使用的 ASP.NET 应用程序。它的身份验证模式是集成的 Windows 安全性。我现在有一个要求,即系统的一部分应该通过基于表单的身份验证在外部可见。

是否可以在 web.config 中设置身份验证,以通过表单访问其中一个页面,而其他页面使用集成身份验证?可以使用单个 web.config 来完成,还是我需要一个带有自己的 web.config 文件的子文件夹?

我知道我可以为外部部件创建一个单独的应用程序,但这意味着我希望避免移动公共部件。

【问题讨论】:

    标签: asp.net authentication web-config


    【解决方案1】:

    authentification-tag 只能位于 Machine.config、根级 Web.config、应用级 Web.config (source)。

    我想您应该在 IIS 中为每种授权模式创建新网站,并添加指向源代码位置的虚拟目录。每个网站都应该有带有授权设置的自定义 web.config。

    【讨论】:

      【解决方案2】:

      您可以设置两个 MembershipProvider 来使用 FormsAuthentication 对用户进行身份验证。

      例如,如果您希望您的应用程序使用 ActiveDirectory 对 Intranet 用户进行身份验证,您将选择您的第一个 MembersipProvider,而其他人则选择第二个(您可以在登录页面中简单地管理它)。

      http://msdn.microsoft.com/en-us/library/system.web.security.activedirectorymembershipprovider.aspx

      或者您可以实现自己的 MembershipProvider: http://msdn.microsoft.com/en-us/library/f1kyba5e.aspx

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-10-29
        • 2011-11-15
        • 2023-03-16
        • 1970-01-01
        • 2023-01-21
        • 1970-01-01
        • 2014-02-07
        • 2014-08-17
        相关资源
        最近更新 更多