今回は Set-ADUser コマンドレットを使用して、Active Directoryユーザーのプロパティを変更する方法について見ていきたいと思います。
Set-ADUser
Set-ADUserコマンドレットを使用すると、既存のActive Directoryユーザーのプロパティを変更することができます。
指定できるパラメーター数が非常に多いのですが、これはGUIメニューの「Active Directory ユーザーとコンピューター」で指定できる項目がパラメーターとして提供されているだけですので、あまり戸惑うことはないでしょう。
ユーザーのメールアドレスを変更する
ユーザー”NaotoDate”のメールアドレスを”daten@corp.contoso.com”に変更するには、下記のようにします。
Set-ADUser -Identity NaotoData -EmailAddress "daten@corp.contoso.com"
上記コマンドによって作成されたユーザーを「Active Directory ユーザーとコンピューターで確認すると、下記のようになります。
パイプライン経由で取得したユーザーのプロパティを変更する
Get-ADUserコマンドレットを使用して取得した既存のユーザーを、パイプラインを使用してSet-ADUserコマンドレットに渡すことが可能です。
下記は、Get-ADUserコマンドレットでユーザー”NaotoDate”を取得し、Set-ADUserへ渡す例です。
パイプラインでユーザーを受け取っているので、Set-ADUserコマンドレットで-Identityプロパティを省略しています。
Get-ADUser -Identity NaotoDate | Set-ADUser -Department "営業部"
既存ユーザーのインスタンスを変更後、設定を反映する
「既存ユーザーのインスタンス」とは、ユーザー情報の実体そのものと考えてください。
たとえば、ユーザーNaotoDateの実体は、下記$user変数のことを言います。
$user = Get-ADUser -Identity "NaotoDate"
$user変数にはユーザー”NaotoDate”の情報が格納されているので、下記のようにして$userの情報を変更後、Set-ADUserコマンドレットで更新をかけることができます。
Set-ADUserコマンドレットでユーザーのインスタンスを用いて設定を反映する場合は-Instanceパラメーターを使用します。
#ユーザー情報を取得して$userへ代入(これがユーザーのインスタンス) $user = Get-ADUser "NaotoDate" #ユーザーインスタンスの情報を変更(ここではメールアドレス) $user.EmailAddress = "nao@corp.contoso.com" #Set-ADUserコマンドレットで設定を反映させる Set-ADUser -Instance $user
コメント
[…] [ActiveDirectory] ユーザー管理(4) Set-ADUser コマンドレット […]