简体   繁体   English

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

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

I have an ASP .NET WCF service web that uses Windows Authentication.我有一个使用 Windows 身份验证的 ASP .NET WCF 服务 Web。 After deploying the web service to the server (Windows Server 2012) and enabling Windows Authentication on IIS, I visit the page using localhost going directly to the server.将 Web 服务部署到服务器 (Windows Server 2012) 并在 IIS 上启用 Windows 身份验证后,我使用直接进入服务器的 localhost 访问该页面。 It prompts for credentials, I provide my AD username/password once and it works.它提示输入凭据,我提供了一次我的 AD 用户名/密码,它可以工作。

Now, if I have the same server behind an AWS Application Load Balancer and I hit the DNS of the webservice which is mapped to the app load balancer then noticed an issue here.现在,如果我在 AWS 应用程序负载均衡器后面有相同的服务器,并且我点击了映射到应用程序负载均衡器的网络服务的 DNS,然后注意到这里的一个问题。

The window pops up for entering Windows credentials.弹出窗口以输入 Windows 凭据。 But when I enter correct credentials it doesn't take them.但是当我输入正确的凭据时,它不会接受它们。 It repeatedly prompts for user/password?它反复提示输入用户/密码? What's happening?发生了什么? ALB doesn't support AD integrated auth for IIS? ALB 不支持 IIS 的 AD 集成身份验证?

Any ideas?有任何想法吗?

The application load balancer will not work because of logon issues and connections to other user's sessions.由于登录问题和与其他用户会话的连接,应用程序负载平衡器将无法工作。

Windows Authentication (either Kerberos or NTLM fallback) needs for the TCP connection to maintain the same source port in order to stay authenticated.you have to use the network load balancer instead of the application load balancer. Windows 身份验证(Kerberos 或 NTLM 回退)需要 TCP 连接保持相同的源端口以保持身份验证。您必须使用网络负载平衡器而不是应用程序负载平衡器。

Windows Authentication over the Layer 7 “application” load balancer is not possible.无法通过第 7 层“应用程序”负载平衡器进行 Windows 身份验证。

There seems to be a workaround for this solution in AWS Application Load Balancer. AWS Application Load Balancer 中似乎有针对此解决方案的解决方法。 You need to enable sticky sessions in your ALB settings.您需要在 ALB 设置中启用粘性会话。 I tried this and now I don't get the repeated windows auth pop up prompting repeatedly for user name and password for windows auth enabled web application.我试过这个,现在我没有得到重复的 windows auth 弹出提示,提示重复输入启用 windows auth 的 web 应用程序的用户名和密码。 But this quick fix may not help for stateless applications.但是这种快速修复可能对无状态应用程序没有帮助。

Enabling sticky session on the ALB does allow Windows auth to work but we are seeing in some cases that you can end up authenticated as the wrong user.在 ALB 上启用粘性会话确实允许 Windows 身份验证工作,但我们看到在某些情况下,您最终可能会以错误的用户身份进行身份验证。 We see this happening when several users are logging in the same time.当多个用户同时登录时,我们会看到这种情况。 Just a heads up.只是抬头。

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

相关问题 AWS Elastic Load Balancer (ELB) 后面的 Windows 身份验证不起作用 - Windows Authentication behind AWS Elastic Load Balancer (ELB) not working 有没有人让 OQTANE 在 AWS 应用程序负载均衡器后面工作 - Has anyone gotten OQTANE to work behind an AWS Application Load Balancer AWS 应用程序负载均衡器背后的 wordpress 网站 - wordpress website behind AWS Application load balancer 如何将经典负载均衡器放在AWS应用程序负载均衡器之后 - How to put classic load balancers behind an AWS application load balancer 修复了 AWS 应用程序负载均衡器后面的服务的 IP 地址 - Fixed IP address for service behind aws application load balancer 在 AWS 应用程序负载均衡器后面添加 x-pack enabled Elasticsearch 由于缺少身份验证导致健康检查失败 - Adding x-pack enabled Elasticsearch behind AWS application load balancer causing health check failure due to missing authentication AWS Application Load Balancer- - AWS Application Load Balancer - 带有 OneLogin 的 AWS 应用程序负载均衡器出现 561 身份验证错误 - AWS Application Load Balancer with OneLogin Giving 561 Authentication Error 网络负载平衡器后面的应用程序负载平衡器的安全组不起作用 - Security group for Application Load Balancer behind Network Load Balancer doesn't work 带有经典负载均衡器的AWS Application负载均衡器 - AWS Application load balancer with classic load balancer
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM