title: Active Directory域用户绑定指定的计算机
categories:

  • Microsoft
    tags:
  • Active Directory
    img: >-
    https://xdm-images-1310997794.cos.ap-guangzhou.myqcloud.com/images/202305081452978.png
    abbrlink: 1068

    date: 2023-01-08 14:34:46

域用户绑定到指定计算机

需求:设置域用户只能登录到指定的计算机上。

进入服务器管理器,选择用户和计算机:
选中用户,点击属性

image-20230508114257786

选择“账户”

image-20230508114309212

输入要绑定的计算机名,再点击添加

image-20230508114319134

批量绑定指定用户帐户与计算机帐户

1、复制代码保存为 XX.ps1

Clear 
Import-CSV input.csv| % { 
$UserN = $_.UserName 
$ComputerN = $_.ComputerName 
$ObjFilter = "(&(objectCategory=person)(objectCategory=User)(samaccountname=$UserN))" 
$objSearch = New-Object System.DirectoryServices.DirectorySearcher 
$objSearch.PageSize = 15000 
$objSearch.Filter = $ObjFilter 

$objSearch.SearchRoot = "LDAP://dc=域名,dc=域名后缀" 
$AllObj = $objSearch.findOne() 
$user = [ADSI] $AllObj.path 
$ErrorActionPreference = "silentlycontinue" 
If (($user.get("userWorkstations")) -ne $null) 
{$ComputerN = $user.get("userWorkstations")+","+ $ComputerN} 
Write-host -NoNewLine "Updating $UserN Properties ..." 
$user.psbase.invokeSet("userWorkstations",$ComputerN) 
Write-host "Done!" 
$user.setinfo() 
} 

注意: 例ad域为 admin.com \|上述 “LDAP://dc=admin,dc=com”

2、创建Input.csv名单

image-20230508114340601

UserName :ad域账户名 ComputerName:指定加域的计算机名,如果向在同一个账户下绑定多台计算机添加在已添加计算机名后面添加“ ,”空格再添加新的计算机名

3-1、运行

选择XX.ps1文件右击Powershell 运行

image-20230508114357003

这时候可以看到已经添加成功了

image-20230508114410357

3-2、也可以通过命令行的方式

把上面的脚本(XXX.ps1)和下面的Input.csv保存到C盘C:\Scripts (无此文件夹可自行新建)

1、管理员身份运行power shell(第一运行的时候默认禁用脚本,需要打开)

image-20230508114424418

输入命令开启

set-executionpolicy remotesigned

image-20230508114434232

2、进入C盘根目录——进入Scripts目录执行脚本

cd / 
cd Scripts

image-20230508114441116

3、执行(XXX.ps1)脚本

image-20230508114448240

image-20230508114458065