批量取消VPN权限
$USER = Get-ADUser -SearchBase "DC=im30,DC=com" -Filter 'msNPAllowDialin -eq $True -and Enabled -eq $True' -Properties msNPAllowDialin# 将msNPAllowDialin设置为【通过NPS网络策略控制访问】$USER | ForEach-Object {Set-ADUser $_.SamAccountName -Clear msNPAllowDialin}# 将msNPAllowDialin设置为【允许访问】# Set-ADUser $USER.Trim() -Replace @{msNPAllowDialin=$true}
说明:
msNPAllowDialin的默认值是【通过NPS网络策略控制访问】;- 还可以将其设置为允许访问(
$true)、拒绝访问($false)
- 还可以将其设置为允许访问(
- 若
msNPAllowDialin的值不是True或False,在查看属性时,则不显示msNPAllowDialin字段; - 因此,若要将
msNPAllowDialin恢复默认值,需直接删除该属性字段,而非设置为$null(会报错)Set-ADUser $_.SamAccountName **-Clear** msNPAllowDialin
批量开通VPN权限
Import-Csv "D:\all_vpn_user.csv"|
ForEach-Object {Set-ADUser $_.SamAccountName -Replace @{msNPAllowDialin=$true}}

