我正在编写以下方法将活动目录中的用户添加到C#中的自定义组。 我有一个名为“SHO用户”的OU和一个名为“SHO Sharepoint用户”的子012 我的所有用户都保存在子ou下。 我确实在名为“Test GRP”的第一个“SHO Users”下有一个组。 我需要用下面的代码添加一些用户到“测试GRP”组,但没有运气。 我会很感激任何帮助。 感谢C#将LDAP用户添加到组
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");
}
如果您使用的是.NET 3.5,则应该使用System.DirectoryServices.AccountManagement命名空间(http://msdn.microsoft.com/zh-cn/library/system.directoryservices.accountmanagement(v = vs.90)的.aspx)。 – Kevin
不幸的是,我不在.Net 3.5上,我想我没有别的选择只是使用directoryentry函数 – Armin
运行这个帐户的帐户是否有权将成员添加到组中?据我所知,与DirectoryEntries合作对此非常敏感。您需要确保应用程序池标识具有此域权限,否则您需要将呼叫包装在做出 – Kevin