ActiveDirectoryでメールアドレスからユーザーを検索するスクリプト

08.20

ActiveDirectory で通常検索に使用する属性は SamAccountName になります。

一般的には SamAccountName が Windows にログオンする際に使用するIDとなりますが、メールアドレス属性は通常使用する、

Get-ADUser などで直接指定して検索することができません。

それなのに・・渡されたリストの一覧はメールアドレスなんてことが良くあります。

オンプレの ExhangeServer の場合、メールボックス(リモートメールボックス)を作成すると自動的に EmailAddress 属性にプライマリ SMTP アドレスの値が入ります。

そのため以下のように Filter を駆使してユーザーを検索します。

 

Get-ADUser -Filter {EmailAddress -eq <Emailアドレス>} -Properties *

 

リストから取り込むのであれば $List = Get-Content <リストへのPath> で取り込んだ後に、Foreach-Object で一つ一つ展開して Emailアドレスに $_ を指定してあげれば一気に全件取得可能です。

100件あったら・・手動でやっている人と上記のように上手に時間を節約するかで、結果は同じなのに片方の人は残業して、片方の人はゆったり仕事ができる。

インフラの仕事はそんな分野になりますので、Windowsエンジニアであれば必ず Powershell は覚えたいです。

 

関連記事

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

2018年12月
« 11月    
 12
3456789
10111213141516
17181920212223
24252627282930
31  
ページ上部へ戻る