使用powershell将用户添加到广告
我有一个关于如何使用powershell将用户添加到广告的问题,我写了一个小脚本,但我在尝试创建用户时总是出错使用powershell将用户添加到广告,powershell,active-directory,ldap,Powershell,Active Directory,Ldap,我有一个关于如何使用powershell将用户添加到广告的问题,我写了一个小脚本,但我在尝试创建用户时总是出错 $connection= "LDAP://ou=Users, dc="domain", dc="com" $OU = [adsi] $Connection $User = $OU.Create("user", "Test Person") $User.Put("Firstname", "Test") $U
$connection= "LDAP://ou=Users, dc="domain", dc="com"
$OU = [adsi] $Connection
$User = $OU.Create("user", "Test Person")
$User.Put("Firstname", "Test")
$User.Put("Surname", Person)
$User.Put("Email", "email@e.com")
$User.SetInfo()
我认为我的连接字符串是错误的,但我已经尝试了不同的方法,仍然没有成功。这是我在本地尝试的。需要让它工作,但通常我的广告是在不同的服务器上,如何做到这一点呢
提前感谢。尝试一下:
$container = [ADSI] "LDAP://dc.sopragroup.lan/cn=Users,dc=sopragroup,dc=lan"
$UserName = "user"
$User = $container.Create("User", "cn=" + $UserName)
$User.Put("sAMAccountName", $UserName)
$User.Put("givenName", "Test")
$User.Put("sn", "Person")
$User.Put("mail", "email@e.com")
$User.SetInfo()
$User.psbase.InvokeSet('AccountDisabled', $false)
$User.SetInfo()
$User.SetPassword("P@55w0rd")
尝试一下:
$container = [ADSI] "LDAP://dc.sopragroup.lan/cn=Users,dc=sopragroup,dc=lan"
$UserName = "user"
$User = $container.Create("User", "cn=" + $UserName)
$User.Put("sAMAccountName", $UserName)
$User.Put("givenName", "Test")
$User.Put("sn", "Person")
$User.Put("mail", "email@e.com")
$User.SetInfo()
$User.psbase.InvokeSet('AccountDisabled', $false)
$User.SetInfo()
$User.SetPassword("P@55w0rd")
下面是另一个例子(@Andy Arismendi是第一个),还有一些其他细节:
DirectoryEntry
构造函数attribute=value
。在Active Directory中,您不能选择由架构施加的属性。对于用户
或inetOrgPerson
而言,对于组织单元
而言,它是OU
。在您的例子中,对象的名称是CN=testperson
Clear-Host
$dn = New-Object System.DirectoryServices.DirectoryEntry ("LDAP://192.168.234.200:389/dc=dom,dc=fr","administrateur@dom.fr","admin")
# Create an OU
$Monou = $dn.create("OrganizationalUnit", "ou=Monou")
#$Monou.Description = "Une description"
$Monou.put("Description", "Une description")
$Res = $Monou.Setinfo()
# Create a user
$objUtilisateur = $Monou.create("inetOrgPerson", "cn=Marc Assin")
$objUtilisateur.setinfo()
$objUtilisateur.samaccountname = "Massin"
$objUtilisateur.givenName = "Marc"
$objUtilisateur.sn = "Assin"
#$objUtilisateur.displayName = $objUtilisateur.givenName + " " + $objUtilisateur.sn
$objUtilisateur.userPrincipalName = "Massin@dom.fr"
# Pu the state of the account#$objUtilisateur.SetPassword("test.2010")
$objUtilisateur.pwdLastSet = 0
$objUtilisateur.userAccountControl = 544
# Write the datas of the user
$objUtilisateur.SetInfo()
下面是另一个例子(@Andy Arismendi是第一个),还有一些其他细节:
DirectoryEntry
构造函数attribute=value
。在Active Directory中,您不能选择由架构施加的属性。对于用户
或inetOrgPerson
而言,对于组织单元
而言,它是OU
。在您的例子中,对象的名称是CN=testperson
Clear-Host
$dn = New-Object System.DirectoryServices.DirectoryEntry ("LDAP://192.168.234.200:389/dc=dom,dc=fr","administrateur@dom.fr","admin")
# Create an OU
$Monou = $dn.create("OrganizationalUnit", "ou=Monou")
#$Monou.Description = "Une description"
$Monou.put("Description", "Une description")
$Res = $Monou.Setinfo()
# Create a user
$objUtilisateur = $Monou.create("inetOrgPerson", "cn=Marc Assin")
$objUtilisateur.setinfo()
$objUtilisateur.samaccountname = "Massin"
$objUtilisateur.givenName = "Marc"
$objUtilisateur.sn = "Assin"
#$objUtilisateur.displayName = $objUtilisateur.givenName + " " + $objUtilisateur.sn
$objUtilisateur.userPrincipalName = "Massin@dom.fr"
# Pu the state of the account#$objUtilisateur.SetPassword("test.2010")
$objUtilisateur.pwdLastSet = 0
$objUtilisateur.userAccountControl = 544
# Write the datas of the user
$objUtilisateur.SetInfo()
我收到以下错误:检索成员“Create”时发生以下异常:“从服务器返回了引用”。在C:\Users\User\Desktop\addusers.ps1:72 char:10+$User=@user1002583,是否更改LDAP字符串以匹配您的环境?这在我拥有的测试域控制器上测试正常。当然,我必须更改域名以匹配。这是关于您得到的错误的,看起来您的LDAP字符串需要更正。你有UAC运行吗?如果是这样,请确保运行PowerShell提升版。@user1002583我在回答中更新了LDAP字符串以匹配您的屏幕截图。好的,我似乎成功地在本地添加了一个人,但是如果我的广告不是本地的,而是在其他服务器上,我的连接字符串会是什么样子?还有一个问题是,我如何向帐户添加图片?@user1002583很高兴它对您有效。请确保将您发现的对您有帮助的答案标记为答案。我建议为你关于如何向广告账户添加图片的问题创建一个新帖子。谢谢。我收到以下错误:检索成员“Create”时发生以下异常:“从服务器返回了一个引用。”在C:\Users\User\Desktop\addusers.ps1:72 char:10+$User=@user1002583是否更改了LDAP字符串以匹配您的环境?这在我拥有的测试域控制器上测试正常。当然,我必须更改域名以匹配。这是关于您得到的错误的,看起来您的LDAP字符串需要更正。你有UAC运行吗?如果是这样,请确保运行PowerShell提升版。@user1002583我在回答中更新了LDAP字符串以匹配您的屏幕截图。好的,我似乎成功地在本地添加了一个人,但是如果我的广告不是本地的,而是在其他服务器上,我的连接字符串会是什么样子?还有一个问题是,我如何向帐户添加图片?@user1002583很高兴它对您有效。请确保将您发现的对您有帮助的答案标记为答案。我建议为你关于如何向广告账户添加图片的问题创建一个新帖子。谢谢