今日のコマンドレットでは、Get-AdComputer
に焦点を当てます。このコマンドレットは、Get-AdUserの兄弟です。Active Directory(AD)からユーザーを取得する代わりに、このコマンドレットはOU内のコンピューターを見つけます。
このコマンドレットは、ActiveDirectory PowerShellモジュールに含まれています。まだインストールしていない場合は、こちらで確認してください。
基本情報
Get-AdComputer
コマンドレットを使用したことがない場合は、基本を理解してください。Identity
パラメーターとFilter
パラメーターを使用して、コンピューターを検索して取得します。
Identityパラメーター
基本的な使い方では、Identity
パラメーターを使用して、ADから単一のコンピューターオブジェクトを取得します。コンピューターの名前がFOOの場合、以下のように値を指定します。
デフォルトでは、このコマンドレットはわずかなAD属性のみを返します。コンピューターのすべてのAD属性を表示したい場合は、Properties
パラメーターを使用します。
以下の例では、Properties
パラメーターにアスタリスクを使用することで、PowerShellはすべてのAD属性を返します。ただし、いくつかの属性のみを表示したい場合は、コンマ区切りで指定することもできます。
他のすべてのActive Directory PowerShellコマンドレットのIdentityパラメーターと同様に、識別名(DN)、GUID、またはSIDを指定することもできます。
Filterパラメーター
複数のコンピューターアカウントを見つける必要がある場合は、Filter
パラメーターを使用してください。 Filter
パラメーターは、多くのActiveDirectoryコマンドの共通パラメーターです。アカウントが返されるために満たす必要がある条件を指定することができます。
Identity
パラメーターを使用しない場合は、Filter
パラメーターを使用する必要があります。たとえば、AD内のすべてのコンピューターアカウントを見つけたい場合は、アスタリスクを指定することができます。アスタリスクは、すべてのコンピューターアカウントに一致するワイルドカードです。
おそらく、「F」で始まるすべてのコンピューターを見つける必要があります。その場合、以下に示すようにフィルター構文を作成します。
LDAPFilterパラメーター
LDAPフィルターに精通している場合は、LDAPFilter
パラメーターも使用できます。LDAPフィルターを使用すると、特定のコンピューターを絞り込むためにLDAP構文を使用することができます。LDAPFilter
は、SearchBase
パラメーターと併用するか、単独で使用することができます。
以下では、LDAPフィルターを使用して、Fで始まるすべてのコンピューターを見つけています。
フィルターの作成方法についての詳細は、PowerShellでActive DirectoryとLDAPフィルターを学ぶを参照してください。
OU内のコンピューターの検索
Identity
パラメーターを使用して名前でコンピューターアカウントを検索するか、Filter
パラメーターを使用してさまざまなAD属性で検索するのは1つのオプションです。また、コンピューターアカウントを配置されているOUで検索することもできます。
SearchBase
パラメータを使用して、OUおよび/またはその子OUに対して検索を制限することができます。
たとえば、Domain Controllers OU内のすべてのドメインコントローラを検索する必要があるかもしれません。 SearchBase
パラメータを使用して、返されるコンピュータアカウントのスコープをこれらのマシンに限定することができます。
SearchBase
パラメータは、検索の「開始」を定義します。ドメインのルートではなく、OUで開始するようPowerShellに指示します。
SearchBase
パラメータを使用するには、OUの識別名(DN)を指定します。以下に、company.priドメインのDomain Controllers OU内のすべてのコンピュータアカウントを検索する例があります。
子OU内のアカウントの取得
SearchBase
パラメータを使用すると、PowerShellはその特定のOU内のコンピュータアカウントのみを返します。子OU内のコンピュータアカウントは返されません。そのため、SearchScope
パラメータを使用することができます。
SearchScope
パラメータを使用すると、親OUからどの程度深く探索するかを定義できます。このパラメータには3つの値(0
、1
、2
)があります。デフォルトでは0
に設定されており、ベースのOUのコンピュータのみが返されます。
ベースのOUと直接の子OUで再帰的に検索する場合は、1
の値を使用できます。ただし、最も一般的な値は2
で、子、孫、およびそれ以上のOUを再帰的に検索することを意味します。
要約
Get-AdComputer
は、ADコンピューターアカウントに関する情報を見つけるための便利なコマンドレットです。 Get-AdComputer
の使用方法を学ぶことは最大の課題ではなく、フィルターの構文を理解することです。上記のリンクされたフィルターの記事を読むと、複雑になることがわかります。
フィルターをマスターしたら、ADコンピューターアカウントから必要な情報を簡単に取得できるようになります!
これらは、このコマンドレットの一日の一般的な使用例です。詳細な説明については、Microsoftのドキュメントを参照してください。