0

1 つのパラメーターを送信する 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-ADAccountコマンドレットからコマンドレットにパイプしてSync-ADObjectいますが...ドキュメント
よると、デフォルトではコマンドレットは何も返しません。その部分については、パラメータを追加する必要があります。Unlock-ADAccount-PassThru

これを試して:

Param([string]$user="")

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