从Web应用程序访问Active Directory

时间:2012-07-31 11:25:16

标签: c#-4.0 active-directory windows-server-2008

我真的坚持这个问题。基本上,我有一台运行Active Directory的Windows 2008r2服务器。在另一台服务器(不在同一域中)运行MVC3 Web应用程序。我想要做的是验证具有活动目录的用户以及获取一些基本信息,即employeeId。我还希望用户能够通过此Web应用程序更改其密码。

这是一个自定义的Web应用程序,我不想使用像exchange这样的东西。

我已经设法通过在web.config中使用广告连接字符串或在我的代码中指定管理员用户名和密码来实现此目标。但是,考虑到安全性并且管理员帐户可能在某些时候更改密码,这并不直观。

我可能错了,但我想我想要做的就是向管理员角色做一些AD请求。

有什么方法可以实现这个目标吗?

提前致谢! 干杯

1 个答案:

答案 0 :(得分:1)

我将回答我自己的问题。

解决此问题的最佳方法是将ADFS 2.0与基于声明的身份验证配合使用。当用户需要访问权限时,他/她将被重定向到ADFS 2.0的登录页面,一旦用户通过身份验证,ADFS 2.0就会将相应的声明发送回用户(加密)。这些声明可以在使用WIF框架的MVC 3应用程序中使用,并且可以包含诸如employeeId,FirstName,LastName,Email,DN等值...取决于如何为该特定应用程序设置ADFS 2.0。

希望这有助于某人。