gpt4 book ai didi

asp.net - NTLM 和自动匿名身份验证 IIS

转载 作者:行者123 更新时间:2023-12-02 12:04:11 25 4
gpt4 key购买 nike

我的 Intranet 有一个 MVC 应用程序,它使用 NTLM 身份验证,但我希望能够允许外部用户访问该应用程序。我们 Intranet 的所有外部连接都通过 NAT 进行,因此具有单个 IP 地址,可用于指示请求是否是外部的。我希望所有内部用户都像他们已经做的那样进行 NTLM 身份验证,但来自外部 IP 的任何连接都会自动获得匿名身份验证(“匿名”是任何潜在的默认用户,例如标准网络服务或 IUSR_ 帐户、指定的域用户(严格来说)当然,出于其他目的而被锁定)等)。结果是除非是内部用户并且拥有默认使用 NTLM 的浏览器,否则任何人都不应看到密码请求。

我知道通常混合模式身份验证充其量是很尴尬的,但我想知道这个特定的用例是否可能有其他方法解决这个问题。我考虑过的一些可能性是:

  1. 在请求到达 WindowsAuthenticationModule 之前拦截请求,无论是在 IIS 中、global.asax 中的事件之一还是 HTTPHandler 中,以便我们可以为指定用户注入(inject)身份验证。
  2. 在 NAT 上,有一种方法可以在指定用户的 HTTP 请求中注入(inject) NTLM header 。
  3. 当外部用户通过不同的主机访问它时(DNS 在他们的末端进行处理以符合他们的命名约定),让 IIS 提供一个简单的代理站点,该代理站点接受请求,将请求转发到主网站使用指定用户的 NTLM,然后将响应发送回原始请求者。

最佳答案

我使用您描述的请求拦截方法开发了一个网站。这是link以及详细信息。

关于asp.net - NTLM 和自动匿名身份验证 IIS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4077411/

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