线程Active Directory COM Exception - An operations error occurred (0x80072020)为我指明了正确的方向--所描述的问题是与权限相关的。
作为一种解决方法,我将应用程序池标识从ApplicationPoolIdentity切换到了NetworkService,并且能够执行查询而不会出现错误。令人困惑的是,在同一个域中的另一台IIS7 was服务器上,我可以将应用程序池标识保留为ApplicationPoolIdentity。
在使用ApplicationPoolIdentity进行此查询时,我是否遗漏了什么?
FWIW,代码相当简单:
PrincipalContext context = new PrincipalContext(ContextType.Domain, theDomain);
UserPrincipal p_up = new UserPrincipal(context);
p_up.GivenName = "John"; //error occurred here
p_up.Surname = "Doe";
PrincipalSearcher ps = new PrincipalSearcher(p_up);
PrincipalSearchResult<Principal> psr = ps.FindAll();发布于 2013-05-06 17:08:26
也许它可以依赖于计算机的域LDAP访问配置。但是NetworkService和ApplicationPoolIdentity应该在计算机帐户下访问网络...
https://stackoverflow.com/questions/12537453
复制相似问题