如何使用其传递Windows凭据将用户登录到Forms身份验证?

时间:2012-03-26 18:37:44

标签: asp.net-membership forms-authentication windows-authentication

我需要一个在Forms身份验证下运行的应用程序,但是会通过其传递的Windows凭据自动记录某人。所以,基本上,我需要两者 - 没有登录屏幕的表单身份验证,只需从Windows传递。

显然,我无法运行这两种方法。我有一个想法是将应用程序设置为Forms,其中一个受Windows保护的登录页面,然后从那里检测到他们的Windows用户名,然后手动将它们登录到幕后的表单中。

这个想法有多合理?

1 个答案:

答案 0 :(得分:1)

令我惊讶的是,ASP.NET中的这种“混合”身份验证模型没有“自动”支持,但是您可以实现几种已知的解决方案,以满足您的需求。

这是一篇很好的文章,讨论了相关因素,并作为我最近如何处理我写的MVC 3应用程序的相同要求的“指南”:

http://www.codeguru.com/csharp/.net/net_security/authentication/article.php/c19559/ASPNET-Mixed-Mode-Authentication.htm

我没有按照这篇文章的说法,因为我对如何处理角色和会话超时管理的要求略有不同,但这篇文章是一个很好的开始!请密切注意machine.config和web.config文件中表单身份验证密钥的配置...

祝你好运!