繁体   English   中英

Windows 身份验证在 AWS Application Load Balancer 后面不起作用

[英]Windows authentication does not work behind AWS Application Load Balancer

我有一个使用 Windows 身份验证的 ASP .NET WCF 服务 Web。 将 Web 服务部署到服务器 (Windows Server 2012) 并在 IIS 上启用 Windows 身份验证后,我使用直接进入服务器的 localhost 访问该页面。 它提示输入凭据,我提供了一次我的 AD 用户名/密码,它可以工作。

现在,如果我在 AWS 应用程序负载均衡器后面有相同的服务器,并且我点击了映射到应用程序负载均衡器的网络服务的 DNS,然后注意到这里的一个问题。

弹出窗口以输入 Windows 凭据。 但是当我输入正确的凭据时,它不会接受它们。 它反复提示输入用户/密码? 发生了什么? ALB 不支持 IIS 的 AD 集成身份验证?

有任何想法吗?

由于登录问题和与其他用户会话的连接,应用程序负载平衡器将无法工作。

Windows 身份验证(Kerberos 或 NTLM 回退)需要 TCP 连接保持相同的源端口以保持身份验证。您必须使用网络负载平衡器而不是应用程序负载平衡器。

无法通过第 7 层“应用程序”负载平衡器进行 Windows 身份验证。

AWS Application Load Balancer 中似乎有针对此解决方案的解决方法。 您需要在 ALB 设置中启用粘性会话。 我试过这个,现在我没有得到重复的 windows auth 弹出提示,提示重复输入启用 windows auth 的 web 应用程序的用户名和密码。 但是这种快速修复可能对无状态应用程序没有帮助。

在 ALB 上启用粘性会话确实允许 Windows 身份验证工作,但我们看到在某些情况下,您最终可能会以错误的用户身份进行身份验证。 当多个用户同时登录时,我们会看到这种情况。 只是抬头。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM