用azure中的多个Web服务器进行用户身份验证

时间:2015-03-31 16:26:55

标签: asp.net azure single-sign-on forms-authentication

我有一个ASP.NET应用程序,它在Azure中运行多个Web服务器(这些都是虚拟机,而不是Azure网站)。

如果用户登录(目前形成身份验证),一切都很好,但如果他点击链接,他可能会被重定向到未设置会话cookie的服务器组中的另一台服务器。

如何在azure中解决这个问题,以便用户登录所有计算机,或者是否有办法绑定"用户到特定服务器,以便他不会在服务器之间跳转?

感谢您的帮助! 代谢

1 个答案:

答案 0 :(得分:1)

您必须将会话状态更改为保存在外部持久性解决方案中,如SQL Server或Redis,而不是InProc(这意味着在内存中),这是您现在拥有的设置。 SQL Server的here描述了执行此操作的步骤。然后,如果某人最终在另一台服务器上,他仍然会被认证,因为会话将从持久性解决方案中加载。