首页 > 解决方案 > 用户未通过登录控制 ASP .NET 进行身份验证

问题描述

基础设施细节:

我们在负载均衡器 (AWS ELB) 后面的 AWS EC2 实例上部署了一个企业级 .net 应用程序,所有流量都通过 F5 和 AWS Route53 路由。

问题:

我面临的问题是,每当具有有效凭据的用户尝试登录我的应用程序时,用户都会收到错误消息 - “用户无法通过身份验证”,并且不知何故用户名被未知字符串“hsilver”替换。如果用户清除他的 cookie/缓存,这个问题就会消失

我更想知道如何用未知字符串替换用户名(我们没有任何代码用于在登录页面的登录控件中设置用户名。)

我可以在 IIS 级别看到一些日志,上面写着 - “事件代码:4005 事件消息:请求的表单身份验证失败。原因:提供的票证已过期。”

仍然无法将请求从何处返回到浏览器以及用户名如何被未知字符串“hsilver”替换

标签: c#amazon-ec2asp.net-membershipamazon-elbf5

解决方案


我们可以确定根本原因,我们的服务器在生产池中的一个时间不知何故不同步,因此 ASP.NET 无法解密从客户端收到的身份验证票证。


推荐阅读