我有2個結構域,A和B.域A具有基組A包含用戶從域B
我的代碼:GroupPrincipal.GetMembers和交叉域成員錯誤
using (var context = new PrincipalContext(ContextType.Domain, DomainName, User, Password))
{
using (var groupPrincipal = GroupPrincipal.FindByIdentity(context, IdentityType.SamAccountName,
groupName))
{
if (groupPrincipal == null) return null;
using (var principalSearchResult = groupPrincipal.GetMembers(true))
{
var changedUsersFromGroup =
principalSearchResult
.Where(member => member is UserPrincipal)
.Where(member => IsModifiedUser(member, usnChanged))
.Cast<UserPrincipal>()
.Select(adsUser => new AdsUser(adsUser)).Cast<IAdsUser>()
.ToArray();
return changedUsersFromGroup;
}
}
}
系統.DirectoryServices.AccountManagement.PrincipalOperationException: 嘗試解析跨商店引用時,在主體的SID所指示的域中找不到目標主體 。
但是,如果我從這裏
new PrincipalContext(ContextType.Domain, DomainName, User, Password)
到域B添加用戶,它工作正常。
我該如何解決它?
如果您有時間去反編譯GAC中的相關程序集,您可能會看到此錯誤消息的條件是什麼條件。我個人的猜測是有一個當時連接問題給DC,所以這個消息是誤導性的。除非第二次嘗試,否則解決起來很難。 –