C# 4.0 从web应用程序访问Active Directory

C# 4.0 从web应用程序访问Active Directory,c#-4.0,active-directory,windows-server-2008,C# 4.0,Active Directory,Windows Server 2008,我真的被这个问题难住了。基本上,我有一个运行Active Directory的Windows2008R2服务器。在另一台服务器(不在同一域中)上运行MVC3 Web应用程序。我想做的是用active directory对用户进行身份验证,并获取一些基本信息,即employeeId。我还希望用户能够通过此web应用更改密码 这是一个自定义web应用程序,我不想使用exchange之类的东西 通过在web.config中使用ad连接字符串或在代码中指定管理员用户名和密码,我在某种程度上实现了这一目标

我真的被这个问题难住了。基本上,我有一个运行Active Directory的Windows2008R2服务器。在另一台服务器(不在同一域中)上运行MVC3 Web应用程序。我想做的是用active directory对用户进行身份验证,并获取一些基本信息,即employeeId。我还希望用户能够通过此web应用更改密码

这是一个自定义web应用程序,我不想使用exchange之类的东西

通过在web.config中使用ad连接字符串或在代码中指定管理员用户名和密码,我在某种程度上实现了这一目标。但是,考虑到安全性和管理员帐户可能会在某个时候更改密码,这是不直观的

我可能错了,但我想我要做的是以管理员的角色对AD进行一些请求

我有什么办法可以做到这一点吗

提前谢谢!
干杯

我要回答我自己的问题

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

希望这对别人有帮助