我有一个使用NTLM身份验证的Intranet的MVC应用程序,但我希望能够允许外部用户访问该应用程序。我们内部网的所有外部连接都来自NAT,因此有一个IP地址,可用于表示请求是否为外部。我希望所有内部用户都进行NTLM身份验证,因为他们已经这样做,但来自外部IP的任何连接都会自动获得匿名身份验证(“匿名”是任何潜在的默认用户,例如标准网络服务或IUSR_帐户,指定的域用户(严重)当然,为了其他目的而被锁定)等)。结果是没有人应该看到密码请求,除非内部并且浏览器默认使用NTLM。
我知道通常混合模式身份验证充其量只是尴尬,但我想知道这个特定的用例是否可能有其他方法解决问题。我考虑过的一些可能性是: