批量更新Active Directory站点&服务 [英] Bulk Updates to Active Directory Sites & Services

查看:53
本文介绍了批量更新Active Directory站点&服务的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

嗨;

有人可以帮我,怎么创建一个脚本批量更新到Windows 2008 R2 Active Directory&服务?特别是在子网列表上..

最好的问候
MMuhammimi

推荐答案

嗨MMuhammimi

感谢帖子。

当你拥有这些工具时,一切都很简单。这是一个让你前进的脚本。但是,此脚本有一些假设,您需要进行一些修改。它为您提供了一个起点。如果您有更多属性,只需添加它们并展开它。

我希望它适合你。
这是剧本:
= ====================== ========
''------------------------------------- --------------
'脚本:createusers2.vbs
'输入:它使用带有布局登录名,名字,姓氏,密码的CSV文件br />
明确的选项

昏暗的sCSVFileLocation
昏暗的sCSVFile
昏暗的objFSO
昏暗的对象
昏暗的线条
昏暗的条纹
Dim oNewUser

---------- LDAP连接变量----------
Dim oRootLDAP
Dim oContainer

'----------其他变量--------------------
Dim sLogon
Dim sFirstName
Dim sLastName
Dim sDisplayName
Dim sPassword
Dim nPwdLastSet
Dim nUserAccountControl'用于启用帐户
Dim sDomain

'----------修改此项以匹配贵公司的AD域----------
sDomain =" corp.myDomain.com"

'----------输入文件位置----------
sCSVFileLocation =" C:\ myUserBase"
'----------输入文件的完整路径----------
sCSVFile = sCSVFileLocation&" myusers.csv"

'----------用于打开CSV文件并选择所有记录的命令----------
set objFSO = CreateObject(" Scripting.FileSystemObject" )set objFile = objFSO.OpenTextFile(sCSVFile,1)

'----------创建与Active Directory用户容器的连接.----- -----

设置oContainer = GetObject(" LDAP:// mycorpdc / OU = Import,dc = corp,dc = myDomain,dc = com")

'----------即使发生错误也允许继续处理(即重复用户)----------
在错误恢复下左侧

直到objFile.AtEndOfStream'读取sInputFile文件中的值(单元格)。

''---------开始创建用户帐户----------
'从CSV文件中读取变量信息
'并构建所需的一切创建帐户
strLine = objFile.ReadLine
strItems = split(strLine,",")

sLogon = strItems(0)
sFirstName = strItems( 1)
sLastName = strItems(2)
sDisplayName = sFirstName&" "& sLastName
sPassword = strItems(3)

----------构建用户帐户----------
oNewUser.put" sAMAccountName",lcase( sLogon)
oNewUser.put" givenName",sFirstName
oNewUser.put" sn",sLastName
oNewUser.put" UserPrincipalName",lcase(SLogon)&" @" ;& sDomain
oNewUser.put" DisplayName",sDisplayName
oNewUser.put" name",lcase(sLogon)

-------- - 将此信息写入Active Directory,以便我们可以----------
'修改密码并启用用户帐号
oNewUser.SetInfo

' ----------更改用户密码----------
oNewUser.SetPassword sPassword
oNewUser.Put" pwdLastSet",-1
问候 

Hi MMuhammimi

Thanks for the post here.

Everything is simple when you have the tools. Here is a script to get you going. However, this script has some assumptions and you will need to make some modifications. It gives you a starting point. If you have more attributes just add them in and expand it.

I hope it works for you.
Here is the script:
==============================
' ---------------------------------------------------
' Script: createusers2.vbs
' Input: It uses a CSV file with layout logonname,firstname,lastname,password


Option Explicit

Dim sCSVFileLocation
Dim sCSVFile
Dim objFSO
Dim objFile
Dim strLine
Dim strItems
Dim oNewUser

' ----------LDAP connection variables----------
Dim oRootLDAP
Dim oContainer

' ----------Other variables--------------------
Dim sLogon
Dim sFirstName
Dim sLastName
Dim sDisplayName
Dim sPassword
Dim nPwdLastSet
Dim nUserAccountControl ' Used to enable the account
Dim sDomain

' ----------Modify this to match your company's AD domain----------
sDomain="corp.myDomain.com"

' ----------Input file location----------
sCSVFileLocation = "C:\myUserBase"
' ----------Full path to input file----------
sCSVFile = sCSVFileLocation&"myusers.csv"

' ----------Commands used to open the CSV file and select all of the records----------
set objFSO = CreateObject("Scripting.FileSystemObject")
set objFile = objFSO.OpenTextFile(sCSVFile, 1)

' ----------Create a connection to the Active Directory Users container.----------

Set oContainer = GetObject("LDAP://mycorpdc/OU=Import,dc=corp,dc=myDomain,dc=com")

' ----------Allows processing to continue even if an error occurs (i.e. dup user)----------
on error resume next

Do Until objFile.AtEndOfStream ' Reads the values (cells) in the sInputFile file.

' --------- Start creating user account----------
' Read variable information from the CSV file
' and build everything needed to create the account
strLine = objFile.ReadLine
strItems = split(strLine,",")

sLogon = strItems(0)
sFirstName = strItems(1)
sLastName = strItems(2)
sDisplayName = sFirstName&" "&sLastName
sPassword = strItems(3)

' ----------Build the User account----------
Set oNewUser = oContainer.Create("User","cn="&sFirstName&" "&SLastName)

oNewUser.put "sAMAccountName",lcase(sLogon)
oNewUser.put "givenName",sFirstName
oNewUser.put "sn",sLastName
oNewUser.put "UserPrincipalName",lcase(SLogon)&"@"&sDomain
oNewUser.put "DisplayName",sDisplayName
oNewUser.put "name",lcase(sLogon)

' ----------Write this information into Active Directory so we can----------
' modify the password and enable the user account
oNewUser.SetInfo

' ----------Change the users password----------
oNewUser.SetPassword sPassword
oNewUser.Put "pwdLastSet", -1

Regards 

Arjuna V
____________________________________________________________________________________________ **********如果确实有帮助,请将此标记为答案。或回发****************

_____________________________________________________________________________________

_____________________________________________________________________________________


这篇关于批量更新Active Directory站点&服务的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆