从Web应用程序访问Active Directory
问题描述:
我真的被这个问题困住了。基本上,我有一个运行Active Directory的Windows 2008r2服务器。在另一台服务器上(不在同一个域中)运行一个MVC3 Web应用程序。我想要做的是使用活动目录对用户进行身份验证,并获得一些基本信息,即employeeId。我也希望用户能够通过这个网络应用程序更改他们的密码。从Web应用程序访问Active Directory
这是一个自定义的Web应用程序,我不想使用交换等东西。
我通过在web.config中使用广告连接字符串或在我的代码中指定了管理员用户名和密码,在某种程度上实现了这一目标。但是,考虑到安全性,管理员帐户可能会在某些时候更改密码,这并不直观。
我可能是错的,但我想我想做的是有点向管理员角色的AD请求。
有什么办法可以做到这一点?
在此先感谢! 干杯
答
我会回答我自己的问题。
解决此问题的最佳方法是将ADFS 2.0与基于声明的身份验证一起使用。当用户需要访问时,他/她被重定向到ADFS 2.0的登录页面,并且只要用户通过身份验证,ADFS 2.0就会向用户发送适当的声明(加密)。这些声明可以在使用WIF框架的MVC 3应用程序中使用,并且可以包含像employeeId,FirstName,LastName,Email,DN等的值......取决于如何为特定应用程序设置ADFS 2.0。
希望这可以帮助别人。