【问题标题】:ASP.NET Forms and Windows Authentication for Different Domains不同域的 ASP.NET 表单和 Windows 身份验证
【发布时间】:2012-07-25 07:16:19
【问题描述】:

我有以下要求:如果域 2 中的用户进入域 1 中的 ASP.NET 站点,则该站点应显示自定义登录表单以验证用户。但是,如果来自域 1 的用户浏览到同一个 ASP.NET 站点(在域 1 上),则会发生 Windows 身份验证(使用 Active Directory),因此用户应该直接进入站点内容而不会看到登录表单。

我该怎么做呢?

我是否首先需要检测request domains?我已经在 Page_Load() 中尝试了 HttpContext.Current.Request,但尚未成功检测到请求来自哪个域。

另外,我应该如何设置站点身份验证模式?域 1 用户是否需要 Windows 身份验证,域 2 用户是否需要 forms authentication?我也未能成功,因为 IIS 7.5 抱怨我无法同时打开 Windows 和 Forms 身份验证。

谢谢。

【问题讨论】:

    标签: asp.net .net forms-authentication windows-authentication


    【解决方案1】:

    当然不是答案,但由于篇幅原因,我将其添加为答案而不是评论。 AFAIK,IIS 7.5 允许启用两种身份验证,但不允许通过 web.config 启用,您必须通过 IIS 管理控制台执行此操作,此外,您描述的场景是通过 Sharepoint 2010 中的声明身份验证(Intranet 的窗口和 Extranet 的表单)处理的。我认为同样的方法可以用于 ASP.NET 应用程序,因为 Sharepoint 也是建立在 ASP.NET 3.5 之上的。此外,您还可以查看 .Net 中存在的联合身份验证 API。您可以浏览以下链接 Claims Aware ASP.NET ApplicationsFederated AuthenticationEnabling Federated Authentication for ASp.NET in Azure。希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-30
      • 2010-10-27
      • 2020-06-21
      相关资源
      最近更新 更多