我正在编写以下方法,将活动目录中的用户添加到C#中的自定义组。 我有一个名为" SHO用户"和一个名为" SHO Sharepoint User" 我的所有用户都保存在sub-ou下。 我确实有一个小组在第一个" SHO用户"命名为#34;测试GRP"。 我需要将一些用户添加到"测试GRP"使用以下代码组但没有运气。 我真的很感激任何帮助。 感谢
public void AddToGroup(string userDn, string groupDn)
{
try
{
DirectoryEntry dirEntry = new DirectoryEntry("LDAP://" + groupDn);
dirEntry.Properties["member"].Add(userDn);
dirEntry.CommitChanges();
dirEntry.Close();
}
catch (System.DirectoryServices.DirectoryServicesCOMException E)
{
//doSomething with E.Message.ToString();
}
}
protected void btnAdd_Click(object sender, EventArgs e)
{
string UserId = txtFirstname.Text + " " + txtLastname.Text;
AddToGroup("CN=" + UserId + ",OU=SHO Sharepoint User,OU=SHO Users,dc=test,dc=com", "CN=Test GRP,CN=Groups,DC=test,DC=com");
}
答案 0 :(得分:1)
尝试此功能:
public void AddToGroup(string userDn, string groupDn)
{
try
{
DirectoryEntry dirEntry = new DirectoryEntry("LDAP://" + groupDn);
dirEntry.Invoke("Add", new object[] { userDn });
dirEntry.CommitChanges();
dirEntry.Close();
}
catch (System.DirectoryServices.DirectoryServicesCOMException E)
{
//doSomething with E.Message.ToString();
}
}
要检查连接字符串是否正确,您可以使用工具AdExplorer。只需选择您感兴趣的对象,然后从顶部栏中复制地址。