0

我正在尝试运行一个发送一个参数的 ps1 文件。此脚本用于解锁 AD 上的帐户。

我的 ps1 文件是:

Param([string]$user="")
Get-ADUser -Properties * -Filter {mail -like "$user"} |
    Unlock-ADAccount |
    Sync-ADObject -Destination "AZUDCMO01"

我使用以下方法调用它:

PS C:\Users\fornecedor.bmc01> .\bmc_unlock_ad.ps1 "andreza.perez@grupomoura.com"

没有返回错误,但帐户仍然被锁定。

有人试过这种方法解锁帐户吗?

4

1 回答 1

0

为此,您根本不想使用该-Properties *参数。您只需要获取一个具有足够属性的 ADUser 对象,以便能够通过管道发送它。 Get-ADUser为此返回足够多的属性。

话虽如此,您是从Unlock-ADAccountcmdlet 到Sync-ADObjectcmdlet 的管道,但是...
根据docsUnlock-ADAccount默认情况下 cmdlet 不返回任何内容。对于该部分,您需要添加参数-PassThru

尝试这个:

Param([string]$user="")

Get-ADUser -Filter {mail -like "$user"} |
    Unlock-ADAccount -PassThru |
    Sync-ADObject -Destination "AZUDCMO01"
于 2019-01-10T09:14:56.990 回答