Yuchai_PowerShell_进行域用户、组、计算机管理
程序员文章站
2023-12-30 15:59:58
...
1、用户操作
1.1、创建用户
创建用户需要5个必须值:
- 用户显示姓名,例如
张三
- 登录帐号(按照玉柴的规则就是工号),例如
100101010
- 部门OU,格式参照标准为
广西玉柴专用汽车有限公司/专用汽车板块/广西玉柴机器集团有限公司
- 密码,初始密码由OID传送过来,必须负荷玉柴云以及AD域的复杂度要求
- 邮箱地址(如果邮箱地址标记为empty,则不记录邮件地址)
注:如果部门OU不存在,则会自动创建
.\Script\NewUser.ps1 "用户姓名" "登录帐号" "部门OU" "密码" "邮箱地址"
# Example
.\Script\NewUser.ps1 "张三" "zhangsan123" "/AA/BB/专用汽车板块/广西玉柴机器集团有限公司" "[email protected]" "[email protected]"
1.2、用户自定义值信息添加/修改
移除用户安全组需要传递八个参数,第一个为用户登录名,后七个为自属性值名称,需按顺序输入
- 用户登录帐号
- cusEmpIsExternal
- cusEmpIsManual
- custEmpCompanyCode
- custEmpTitleCode
- custEmpStatus
- custEmpOrgCode
- custEmpSyncSystem
注:每次更新都必须把所有值输入
.\Script\Set_Aduser_cusAttr.ps1 "用户登录帐号" "cusEmpIsExternal" "cusEmpIsManual" "custEmpCompanyCode" "custEmpTitleCode" "custEmpStatus" "custEmpOrgCode" "custEmpSyncSystem"
# Example
.\Script\Set_Aduser_cusAttr.ps1 "testuser01" "0" "0" "JS010801022404" "JS01080102240406" "JS0108010224040603" "在岗" "0"
1.3、判断用户是否存在
判断用户是否存在需要传递1个参数值,就是用户登录帐号
- 登录帐号(按照玉柴的规则就是工号),例如
100101010
.\Script\Get_UserExist.ps1 "用户登录帐号"
# Example
.\Script\Get_UserExist.ps1 "100101010"
1.4、判断用户密码是否正确
判断用户密码需要传递2个值:
- 登录帐号(按照玉柴的规则就是工号),例如
100101010
- 密码,密码由OID传送过来,必须负荷玉柴云以及AD域的复杂度要求
注:如果用户帐号是被禁用状态,会提示帐号被禁用
.\Script\PasswordCheck.ps1 "用户登录帐号" "密码"
# Example
.\Script\PasswordCheck.ps1 "100101010" "[email protected]"
1.5、修改密码
修改密码需要传递3个值:
- 登录帐号(按照玉柴的规则就是工号),例如
100101010
- 密码,密码由OID传送过来,必须负荷玉柴云以及AD域的复杂度要求
- 需要修改的用户数量。为了提高执行效率,一次性需要修改大量用户,可启用批量修改功,这里可以输入需要一次性修改的用户数,并且传递同等用户数量后方可执行,具体执行方式参照以下样本
密码复杂度如果不符合AD规则,会导致密码修改失败
.\Script\C_WriteIn.ps1 "登录帐号" "密码" "修改用户数"
# Example, 1 user
.\Script\C_WriteIn.ps1 "testuser" "[email protected]" "1"
# Example 3 users
.\Script\C_WriteIn.ps1 "testuser1" "[email protected]" "3"
.\Script\C_WriteIn.ps1 "testuser2" "[email protected]" "3"
.\Script\C_WriteIn.ps1 "testuser3" "[email protected]" "3"
1.6、判断用户状态–是否锁定
判断用户状态是否被锁定需要传递1个值:
- 登录帐号(按照玉柴的规则就是工号),例如
100101010
.\Script\Get_UserLockInfo.ps1 "登录帐号"
# Example
.\Script\Get_UserLockInfo.ps1 "testuser"
1.7、判断用户状态–帐号过期
判断用户状态是否被锁定需要传递1个值:
- 登录帐号(按照玉柴的规则就是工号),例如
100101010
.\Script\Get_UserAccountExpDate.ps1 "登录帐号"
# Example
.\Script\Get_UserAccountExpDate.ps1 "testuser"
1.8、判断用户状态–密码过期
判断用户状态是否被锁定需要传递1个值:
- 登录帐号(按照玉柴的规则就是工号),例如
100101010
.\Script\Get_UserPwdExpDate.ps1 "登录帐号"
# Example
.\Script\Get_UserPwdExpDate.ps1 "testuser"
1.9、用户属性修改
用户属性修改需要传递两个值,第一个登录名,第二个为对应要修改的属性值
- 用户登录名
- 属性内容
.\Script\Set_Aduser_Department.ps1 "用户登录帐号" "部门"
.\Script\Set_Aduser_Descr.ps1 "用户登录帐号" "备注"
.\Script\Set_Aduser_Mail.ps1 "用户登录帐号" "邮件地址"
.\Script\Set_Aduser_Mobile.ps1 "用户登录帐号" "手机"
.\Script\Set_Aduser_Telephone.ps1 "用户登录帐号" "座机"
.\Script\Set_Aduser_Title.ps1 "用户登录帐号" "职位"
.\Script\Set_Aduser_Company.ps1 "用户登录帐号" "公司"
# Example
.\Script\Set_Aduser_Department.ps1 "testuser01" "信息部"
.\Script\Set_Aduser_Descr.ps1 "testuser01" "这是个测试帐号"
.\Script\Set_Aduser_Mail.ps1 "testuser01" "[email protected]"
.\Script\Set_Aduser_Mobile.ps1 "testuser01" "13800001111"
.\Script\Set_Aduser_Telephone.ps1 "testuser01" "33669988"
.\Script\Set_Aduser_Title.ps1 "testuser01" "主管"
.\Script\Set_Aduser_Company.ps1 "testuser01" "玉柴公司"
1.10、获取用户所属组
获取用户所属组传递一个值,用户登录帐号
- 用户登录名
.\Script\Get_UserMemberOf.ps1 "用户登录帐号"
#
.\Script\Get_UserMemberOf.ps1 "testuser"
1.11、判断用户是否属于该组
判断用户是否属于该组需要传递两个值,第一个登录名,第二个为安全组名
- 用户登录名
- 安全组
.\Script\Get_UserGroup.ps1 "用户登录帐号" "安全组名"
#
.\Script\Get_UserGroup.ps1 "testuser" "IT部"
1.12、移动用户
移动用户需要两个值:
- 登录帐号(按照玉柴的规则就是工号),例如
100101010
- 部门OU,格式参照标准为
广西玉柴专用汽车有限公司/专用汽车板块/广西玉柴机器集团有限公司
注:移动用户过程中,如果部门不存在,则会根据HR给出的信息创建该部门OU
# 部门OU范本,必须要满足以下格式方可执行成功
# "业务部办公室/业务部/广西玉柴专用汽车有限公司/专用汽车板块/广西玉柴机器集团有限公司"
.\Script\MoveUser.ps1 "登录帐号" "部门OU"
# Example
.\Script\MoveUser.ps1 "testuser" "业务部/广西玉柴专用汽车有限公司/专用汽车板块/广西玉柴机器集团有限公司"
1.13、禁用用户
禁用用户只需要传递一个参数:
- 登录帐号(按照玉柴的规则就是工号),例如
100101010
.\Script\DisableUser.ps1 "用户登录帐号"
# Example
.\Script\DisableUser.ps1 "100010101"
.\Script\DisableUser.ps1 "testuser"
1.14 、删除用户
删除用户只需要传递一个参数
- 登录帐号(按照玉柴的规则就是工号),例如
100101010
.\Script\Remove_User.ps1 "用户登录帐号"
# Example
.\Script\Remove_User.ps1 "100010101"
.\Script\Remove_User.ps1 "testuser"
2、OU操作
2.1、判断OU是否存在
判断OU是否存在需要传递一个值,部门名称
- 部门OU,格式参照标准为
广西玉柴专用汽车有限公司/专用汽车板块/广西玉柴机器集团有限公司
# 部门OU范本,必须要满足以下格式方可执行成功
# "业务部办公室/业务部/广西玉柴专用汽车有限公司/专用汽车板块/广西玉柴机器集团有限公司"
.\Script\Get_OUExist.ps1 "部门OU"
# example
.\Script\Get_OUExist.ps1 "业务部/广西玉柴专用汽车有限公司/专用汽车板块/广西玉柴机器集团有限公司"
2.2、创建OU
创建OU是否存在需要传递一个值,部门名称
- 部门OU,格式参照标准为
广西玉柴专用汽车有限公司/专用汽车板块/广西玉柴机器集团有限公司
# 部门OU范本,必须要满足以下格式方可执行成功
# "业务部办公室/业务部/广西玉柴专用汽车有限公司/专用汽车板块/广西玉柴机器集团有限公司"
.\Script\CCOU.ps1 "部门OU"
# example
.\Script\CCOU.ps1 "业务部/广西玉柴专用汽车有限公司/专用汽车板块/广西玉柴机器集团有限公司"
2.3、查询OU
查询OU是否存在需要传递一个值,部门名称
- 部门OU,格式参照标准为
广西玉柴专用汽车有限公司/专用汽车板块/广西玉柴机器集团有限公司
# 部门OU范本,必须要满足以下格式方可执行成功
# "业务部办公室/业务部/广西玉柴专用汽车有限公司/专用汽车板块/广西玉柴机器集团有限公司"
.\Script\Get_OUInfo.ps1 "部门OU"
# example
.\Script\Get_OUInfo.ps1 "业务部/广西玉柴专用汽车有限公司/专用汽车板块/广西玉柴机器集团有限公司"
2.4、删除OU
删除OU是否存在需要传递一个值,部门名称
- 部门OU,格式参照标准为
广西玉柴专用汽车有限公司/专用汽车板块/广西玉柴机器集团有限公司
# 部门OU范本,必须要满足以下格式方可执行成功
# "业务部办公室/业务部/广西玉柴专用汽车有限公司/专用汽车板块/广西玉柴机器集团有限公司"
.\Script\Remove_OU.ps1 "部门OU"
# example
.\Script\Remove_OU.ps1 "业务部/广西玉柴专用汽车有限公司/专用汽车板块/广西玉柴机器集团有限公司"
3、用户组操作
3.1、创建全局安全组
创建全局安全组需要传递两个参数
- 安全组名
- 安全组所在OU
.\Script\Create_Security_Global.ps1 "安全组名" "部门OU"
# Example
.\Script\Create_Security_Global.ps1 "TestGroups01" "专用汽车板块/广西玉柴机器集团有限公司"
.\Script\Create_Security_Global.ps1 "信息部" "专用汽车板块/广西玉柴机器集团有限公司"
3.2、判断用户组是否存在
创建全局安全组需要传递一个参数
- 安全组名
.\Script\Get_Group.ps1 "安全组名"
# Example
.\Script\Get_Group.ps1 "信息部"
3.3、查询用户组
查询用户组需要传递一个参数
- 安全组名
.\Script\Get_GroupInfo.ps1 "安全组名"
# Example
.\Script\Get_GroupInfo.ps1 "信息部"
3.4、创建本地安全组
创建本地安全组需要传递二个参数
- 安全组名
- 安全组所在OU
.\Script\Create_Security_DomainLocal.ps1 "安全组名" "部门OU"
# Example
.\Script\Create_Security_DomainLocal.ps1 "TestGroups02" "专用汽车板块/广西玉柴机器集团有限公司"
.\Script\Create_Security_DomainLocal.ps1 "财务部" "专用汽车板块/广西玉柴机器集团有限公司"
3.5、添加用户至安全组
添加用户至安全组需要传递两个参数
- 用户登录帐号
- 安全组名称
.\Script\Add_userTo_Groups.ps1 "用户登录帐号" "安全组"
# Example
.\Script\Add_userTo_Groups.ps1 "TestGroups01" "信息部"
3.6、用户移除安全组
移除用户安全组需要传递两个参数
- 用户登录帐号
- 安全组名称
.\Script\Remove_User_from_Groups.ps1 "用户登录帐号" "安全组"
# Example
.\Script\Remove_User_from_Groups.ps1 "TestGroups01" "信息部"
3.7、删除用户组
删除用户安全组需要传递两个参数
- 用户登录帐号
.\Script\Remove_Groups.ps1 "安全组"
# Example
.\Script\Remove_Groups.ps1 "信息部"
4、计算机操作
4.1、获取/查询计算机信息
查询计算机信息需要传递一个值
- 计算机名
.\Script\Get_ComputerInfo.ps1 "计算机名"
# Example
.\Script\Get_ComputerInfo.ps1 "信息部电脑01"
4.2、创建新计算机
创建计算机需要传递1个值
- 计算机名
.\Script\New_Computer.ps1 "计算机名"
# Example
.\Script\New_Computer.ps1 "信息部电脑01"
4.3、修改移动计算机
修改计算机需要传递2个值
- 计算机名
- 部门OU,格式参照标准为
广西玉柴专用汽车有限公司/专用汽车板块/广西玉柴机器集团有限公司
# 部门OU范本,必须要满足以下格式方可执行成功
# "业务部办公室/业务部/广西玉柴专用汽车有限公司/专用汽车板块/广西玉柴机器集团有限公司"
.\Script\MoveComputer.ps1 "计算机名" "业务部/广西玉柴专用汽车有限公司/专用汽车板块/广西玉柴机器集团有限公司"
# Example
.\Script\MoveComputer.ps1 "计算机名" "/业务部/广西玉柴专用汽车有限公司/专用汽车板块/广西玉柴机器集团有限公司"
4.4、删除计算机
创建计算机需要传递1个值
- 计算机名
.\Script\Remove_Computer.ps1 "计算机名"
# Example
.\Script\Remove_Computer.ps1 "信息部电脑01"