我正在尝试使用.NET Core 2.1中的DirectoryServices.AccountManagement
来查找我们商店位置的用户帐户。
如果我只是使用OU的引导来更新DirectoryEntry
,它将毫无问题地拉回条目。但是,一旦我尝试使用AccountManagement
主体,它总是为商店的用户帐户返回null。
每个商店位置也都有一个通讯组,我可以使用Principal.FindByIdentity
来查找那些,而不是商店的实际用户帐户。
using (PrincipalContext pc = new PrincipalContext(ContextType.Domain, _domainName, _username, _password))
{
// returns null
var testOU = Principal.FindByIdentity(pc, IdentityType.Guid, store.ActiveDirectoryOU.ToString());
// returns proper DirectoryEntry for store's User Account
var testEntry = new DirectoryEntry("LDAP://<GUID=" + store.ActiveDirectoryOU + ">");
// returns proper Principal for store's distribution group
var testGroup = Principal.FindByIdentity(pc, store.ActiveDirectoryGroup.ToString());
}
是否存在某种设置可以防止某些用户帐户对DirectoryServices.AccountManagement
可见?还是我犯了一些新错误?
答案 0 :(得分:0)
您正在使用Principal.FindByIdentity而不是UserPrincipal.FindByIdentity来获取特定用户。可能是这个问题吗?
请参见this example。