IT記事、時々ぼのぼの

ぼのぼのに毎日癒されつつ仕事しているエンジニアのブログです。


PowershellでのActiveDirectoryドメイン参加

Windows 7以降のPCにて、Active Directoryへのドメイン参加コマンドを探してみた。
Windows Vista以前では、netdomコマンドなどがあったり、Windows 7以降でもwmic.exeや、VBSからのドメイン参加もできました。

しかし、VBSやwmic.exeだと、パスワードの入力のところがどうもマスクづらかったりしたので、Powershellで検討してみました。

使ったコマンドレット

Add-Computer

注意事項

以降のコマンドを実行する場合は、Powershellを「管理者として実行」しておく必要があります。
f:id:red9999:20140624003634p:plain:w200

ドメイン参加

シンプルにドメイン参加するだけであれば、以下のコマンドを実行し、権限のあるユーザー情報を入力する。

# Add-Computer -DomainName ドメイン名 -Credential Get-Credential

OUを指定する場合

ドメイン参加後にOUを移動するのが面倒な場合、参加と同時にOUを指定することができる。

# Add-Computer -DomainName ドメイン名 -OUPath 'OU=階層2,OU=階層1,DC=hogehoge,DC=local' -Credential ドメイン名\ユーザー名

バッチ実行する場合

バッチファイルに以下のように記載し、右クリックから「管理者として実行」することにより、管理者でコマンドが実行できます。
f:id:red9999:20140624005120p:plain:w200

# Powershell -Command $cred = get-credential; Add-Computer -DomainName ドメイン名 -OUPath 'OU=階層2,OU=階層1,DC=hogehoge,DC=local' -Credential $cred

今回はあえて都度資格情報を入力できるように作りました。
セキュリティ的に気にしなければ、パスワード埋め込みも簡単にできると思います。