首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ASP.NET表单身份验证+ NTLM + LDAP

ASP.NET表单身份验证+ NTLM + LDAP
EN

Stack Overflow用户
提问于 2011-04-03 21:26:35
回答 1查看 3.4K关注 0票数 4

我正在尝试将LDAP支持添加到使用表单身份验证的现有ASP.NET网站。这不是什么大问题,我只是构建了一个简单的登录对话框(普通HTTP POST),查询LDAP目录,并通过表单身份验证票证登录用户。

如果能通过NTLM (集成的Windows身份验证)自动获取用户凭据,而无需登录对话框(就像在同一个Active Directory中的计算机上使用ASP.NET Windows身份验证时所得到的一样),那就太好了。有没有简单的方法可以做到这一点(请记住,我不能对我的ASP.NET应用程序使用Windows身份验证,并且服务器不在Active Directory域中,我需要能够手动查询LDAP目录)?或者我必须手动完成所有的LDAP握手/质询/响应?

谢谢你的帮助,~ saxx

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-05-19 18:20:39

我就是在这里的intranet上这样做的。这些是我使用的步骤。

  • 创建一个登录页面(login.aspx似乎不错)&设置web应用程序进行表单身份验证。将授权设置为拒绝匿名。这意味着,如果用户没有身份验证票证,任何使用你的应用程序的尝试都会导致用户被重定向到你的登录页面。
  • 现在是重要的一步。在IIS中,将应用程序设置为仅允许匿名。在您的登录页面上,将其更改为only Windows Integrated。现在,当用户跳转到您的登录页面时,IIS会强制执行NTLM身份验证。现在我们在头文件中有了用户名。
  • 第二个重要的步骤。在page_load方法中添加:

这样做的目的是获取IIS将始终提供给我们的用户名,并将其放入表单身份验证票证中。

当然,您可能需要做一些整理工作,比如添加一个注销功能,或者剥离用户名的域名。

西蒙

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5529847

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档