windows 利用脚本 新建名称为hr、tech、sale的3个组织单元;每个组织单元内新建与组织单元同名的全局安全组;每个组内新建20个用户:人力部(hr101-hr120)、营销部(sale101-sale120)、技术部(tech101-tech120),所有用户不能修改其口令,必须启用密码复杂度要求、密码长度最小为8位、密码最长期限为10天、允许失败登录尝试的次数为4次、重置失败登录尝试计数(分钟)为5分钟、直至管理员手动解锁帐户,并且只能每天8:00-18:00可以登录
时间: 2023-04-07 11:04:23 浏览: 317
powshell 脚本批量新建组织OU
可以回答这个问题。您可以使用以下脚本来完成此任务:
```
# 创建组织单元
New-ADOrganizationalUnit -Name "hr" -Path "OU=Groups,DC=example,DC=com"
New-ADOrganizationalUnit -Name "tech" -Path "OU=Groups,DC=example,DC=com"
New-ADOrganizationalUnit -Name "sale" -Path "OU=Groups,DC=example,DC=com"
# 创建全局安全组
New-ADGroup -Name "hr" -GroupScope Global -Path "OU=hr,OU=Groups,DC=example,DC=com"
New-ADGroup -Name "tech" -GroupScope Global -Path "OU=tech,OU=Groups,DC=example,DC=com"
New-ADGroup -Name "sale" -GroupScope Global -Path "OU=sale,OU=Groups,DC=example,DC=com"
# 创建用户
$Password = ConvertTo-SecureString "P@ssw0rd" -AsPlainText -Force
$PasswordPolicy = New-Object -TypeName Microsoft.ActiveDirectory.Management.ADPasswordPolicy -ArgumentList @("Complex", 8, 10, 4, (New-TimeSpan -Minutes 5), $false)
$UserOU = "OU=hr,OU=Groups,DC=example,DC=com"
for ($i=101; $i -le 120; $i++) {
$UserName = "hr$i"
New-ADUser -Name $UserName -UserPrincipalName "$UserName@example.com" -AccountPassword $Password -Enabled $true -PasswordNeverExpires $false -PasswordPolicy $PasswordPolicy -Path $UserOU
Add-ADGroupMember -Identity "hr" -Members $UserName
}
$UserOU = "OU=tech,OU=Groups,DC=example,DC=com"
for ($i=101; $i -le 120; $i++) {
$UserName = "tech$i"
New-ADUser -Name $UserName -UserPrincipalName "$UserName@example.com" -AccountPassword $Password -Enabled $true -PasswordNeverExpires $false -PasswordPolicy $PasswordPolicy -Path $UserOU
Add-ADGroupMember -Identity "tech" -Members $UserName
}
$UserOU = "OU=sale,OU=Groups,DC=example,DC=com"
for ($i=101; $i -le 120; $i++) {
$UserName = "sale$i"
New-ADUser -Name $UserName -UserPrincipalName "$UserName@example.com" -AccountPassword $Password -Enabled $true -PasswordNeverExpires $false -PasswordPolicy $PasswordPolicy -Path $UserOU
Add-ADGroupMember -Identity "sale" -Members $UserName
}
# 设置登录时间限制
$LogonHours = New-Object -TypeName System.Collections.BitArray -ArgumentList 168
$LogonHours.Set(0, 480, $true)
$LogonHours.Set(1080, 1440, $true)
Set-ADUser -Identity "hr*" -LogonHours $LogonHours
Set-ADUser -Identity "tech*" -LogonHours $LogonHours
Set-ADUser -Identity "sale*" -LogonHours $LogonHours
```
请注意,您需要将 `example.com` 替换为您的域名,并根据需要更改组织单元和用户的名称。
阅读全文