域控批量创建域用户,并授权组

编程

域控批量创建域用户,并授权组

  1. 创建一个csv的模板文件

    samid

    display

    ou-1

    dc-1

    dc-2

    pwd

    dept

    group

    1

    刘一

    技术中心

    test

    com

    12345678

    研发部

    Domain Admins

    2

    刘二

    测试中心

    test

    com

    12345678

    研发部

    Domain Admins

    3

    刘三

    开发中心

    test

    com

    12345678

    研发部

    Domain Admins

    4

    刘四

    开发中心

    test

    com

    12345678

    研发部

    Domain Admins

    5

    刘五

    开发中心

    test

    com

    12345678

    研发部

    Domain Admins

    6

    刘六

    测试中心

    test

    com

    12345678

    研发部

    Domain Admins

    7

    刘七

    测试中心

    test

    com

    12345678

    研发部

    Domain Admins

    8

    刘八

    技术中心

    test

    com

    12345678

    研发部

    Domain Admins

  2. 编写一个bat批处理

    @echo off

    echo 获取Administrator权限

    cacls.exe "%SystemDrive%System Volume Information" >nul 2>nul

    if %errorlevel%==0 goto Admin

    if exist "%temp%getadmin.vbs" del /f /q "%temp%getadmin.vbs"

    echo Set RequestUAC = CreateObject^("Shell.Application"^)>"%temp%getadmin.vbs"

    echo RequestUAC.ShellExecute "%~s0","","","runas",1 >>"%temp%getadmin.vbs"

    echo WScript.Quit >>"%temp%getadmin.vbs"

    "%temp%getadmin.vbs" /f

    if exist "%temp%getadmin.vbs" del /f /q "%temp%getadmin.vbs"

    exit

    :Admin

    echo 成功取得Administrator权限

    for /f "skip=1 eol=; tokens=1-9 delims=," %%a in (G:domindomainuser.csv) do dsadd user "cn=%%b,OU=%%c,dc=%%d,dc=%%e" -samid "%%a" -upn "%%a@chenfan.com" -display "%%b" -ln "%%b" -pwd %%f -dept %%c

    timeout /nobreak /t 3

    for /f "skip=1 eol=; tokens=1-9 delims=," %%a in (G:domindomainuser.csv) do net group "Domain Admins" %%a /add

    pause

    以上代码大概的意思是,先获取管理员权限,然后循环读取刚刚创建的csv文件,并逐一复制创建账号,等等3秒后循环读取csv文件逐一授权域管理员权限。具体命令与命令参数如下:

    • skip=1 跳过第一行数据,也就是跳过标题

    • eol; 注释行的符号为;

    • tokens=1-9 每次提取的变量个数(可以往多了写,不影响的)

    • delims, 每个变量的分割符号是 ,

    • %%a in 引用 %%a变量为第一列的值,%%b则是第二列的值依次类推 ,in 后面的括号则是csv模板文件的路径地址

    • do 这后面跟的就是你需要循环执行的命令,跟其他的开发语言类似

    • "cn=%%b,OU=%%c,dc=%%d,dc=%%e" 这里一一对应模板中的二、三、四、五列中的值,cn你可以理解为你用户的显示名,ou则为组织单位(如果存在多级组织单位的则一次层级写多个ou,先小再大的顺序。例如你需要将你的用户创建在开发中心的开发组那么这里就需要写两个ou,顺序则是 ou=开发组,ou=开发中心),dc则为你的域名(例如我的域名是test.com,那么写的格式则是dc=test,dc=com

    • -samid 用户的登录名(Windows 2000以前版本格式)

    • -upn 用户登录名

    • -display 用户显示名称

    • -ln 用户的姓氏

    • -pwd 指定用户密码

    • -dept 用户组织中的部门

      dsadd user完整的命令参数可参考官方文档:点击前往查看

  1. 演示测试

    我这里就批量创建两个账号做一个测试演示。

    3.1 创建csv文件

    samid

    display

    ou-1

    dc-1

    dc-2

    pwd

    dept

    group

    11999

    刘九

    技术中心

    test

    com

    12345678

    研发部

    Domain Admins

    11998

    刘八

    技术中心

    test

    com

    12345678

    研发部

    Domain Admins

    3.2 双击运行bat批处理

    3.3 创建后效果如下图,因另外一个账号没什么不同我就不一一截图了。参数不懂的可以看我发的图来对应起来。

    image-20210813153507260

    image-20210813153606727

    image-20210813153653762

    image-20210813153735312

作者:自在拉基

来源:https://www.cnblogs.com/98record/p/yu-kong-pi-liang-chuang-jian-yu-yong-hu-bing-shou.html

以上是 域控批量创建域用户,并授权组 的全部内容, 来源链接: utcz.com/z/519869.html

回到顶部