我有一个方法 AddUserToGroup 可以将用户添加到事件目录组。
我在未连接到包含用户和组的域 Controller 的计算机上调用该方法。
调用 group.Save() 时抛出 PrincipalOperationException:
“无法检索有关域的信息 (1355)。”
AD 是否阻止未在域中注册的客户端进行修改?我可以从同一个客户端愉快地查询域(例如,返回组中的用户)。
将用户添加到组的方法:
public static void AddUserToGroup(string userId,
string groupName)
{
try
{
using (var pc = GetPrincipalContextFromConfig())
{
var group = GroupPrincipal.FindByIdentity(pc, groupName);
try
{
group.Members.Add(pc, IdentityType.Guid, userId);
group.Save();
}
catch (PrincipalExistsException e)
{
//...
}
}
}
catch (DirectoryServicesCOMException e)
{
//...
}
}
最佳答案
无论您的应用程序在什么 ID 下运行,都需要对 AD 具有“写入”权限。几乎任何 ID 都可以查询 AD,但只有明确授予权限的 ID 才能写入。
关于c# - 事件目录是否防止不在域中的客户端进行修改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2162527/