[ActiveDirectory] ユーザー管理(4) Set-ADUser コマンドレット

[ad code=2 align=left]

今回は 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プロパティを省略しています。

[sourcecoe language=”powershell”]
Get-ADUser -Identity NaotoDate | Set-ADUser -Department “営業部”
[/sourcecode]

既存ユーザーのインスタンスを変更後、設定を反映する

「既存ユーザーのインスタンス」とは、ユーザー情報の実体そのものと考えてください。

たとえば、ユーザー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

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>