【问题标题】:Accessing Active Directory from ASP.net App从 ASP.net 应用程序访问 Active Directory
【发布时间】:2014-08-11 22:54:17
【问题描述】:
我的 asp.net 4 MVC 应用程序的某些部分可以访问 Active Directory 以检查组成员身份。当我从我的计算机上运行该站点时,它运行良好,因为我是域管理员。当我在标准用户下从测试计算机运行站点时,尝试访问 AD 时出现 DirectoryServicesCOM 错误。显然这是一个权限问题。
我的问题是,我应该告诉 IIS 中的什么位置和什么内容才能以特定帐户访问 AD?
【问题讨论】:
标签:
c#
asp.net
asp.net-mvc
iis-7
active-directory
【解决方案1】:
您使用什么来访问 AD?我假设System.DirectoryServices
您的应用程序池以什么帐户运行以及 IIS 的版本是什么?假设 IIS7 或更高版本,您可能正在使用 AppPoolIdentity,这意味着您正在以匿名用户身份访问 AD。将身份更改为NetworkService & 它应该使用您的网络服务器的机器帐户。
如果您需要权限来执行活动,则需要使用特定帐户。如果您使用AccountManagement 对象,则在上下文类中指定凭据。如果您在Protocols 中使用类,那么您可以使用连接来完成。 MSDN & Google 有很多例子。
您应该了解所使用方法的安全含义,就像所有与安全相关的事情一样。