通过Ldap实现人事系统组织人事和AD的同步

项目需求:
同步人事系统的组织架构-对应AD的OU树
同步人事系统的员工-对应AD的用户

 

创建OU 名字不能重复,需要父级路径(parentOrganizeUnit)以及新ou的名字(name),如果最父级则上级路径为域节点
DirectoryEntry CreateOrganizeUnit(string OrgId,string name, string parentOrganizeUnit,int Id,ADInfo ad)

更改OU名称 需要旧的OU路径(oldUnit)以及“OU=新OUName”(newUnit)
DirectoryEntry UpdateOrganizeUnit(string newUnit, string OUName, string oldUnit, int Id,ADInfo ad) 使用Renname

更改OU上级 需要新的上级路径(newparentOrganizeUnit)旧OU的路径(oldUnit)
DirectoryEntry MoveOrganizeUnit(string oldUnit, string newparentOrganizeUnit, int Id,ADInfo ad)

创建ou用户需要ou路径(orgPath) 以及用户信息(user)
AddADAccount(string orgPath, EmpInfo user, int Id,ADInfo ad)
注意ou树下的名字是cn字段(不能重复),cn需要重新赋值时用rename
sAMAccountName 用户(不能重复)
userPrincipalName 有域名的用户名 (不能重复)
邮箱为空不能赋值(mail)

移动用户 需要用户路径(user_path)以及OU路径(target_path)
MoveUser(string user_path, string target_path,string OuName, int Id,ADInfo ad)

设置密码

 NewUser.Invoke("SetPassword", new object[] { accountPwd });

设置用户下次登录必须修改密码

 NewUser.Properties["pwdLastSet"].Value = 0;

对应TXT 代码

 https://wenku.baidu.com/view/e95ea71e0875f46527d3240c844769eae109a3ef.html#

posted @ 2019-08-03 19:58  周捷Jay  阅读(2606)  评论(0编辑  收藏  举报