コマンドラインから Active Directory で管理しているオブジェクトを表示する

omae です。Active Directory で管理しているオブジェクトをコマンドラインから参照できるコマンドがあるのですが、毎回「なんて名前だっけ…」と忘れてしまうので、メモを兼ねて書いておきます。

Windows Server 2003 以降には dsquery というコマンドが標準で入っており、このコマンドで Active Directory をクエリできます。

Builtin コンテナにあるオブジェクトをクエリするには以下のコマンドを実行します。

C:\>dsquery * "CN=Builtin,DC=opengroove,DC=local"
"CN=Builtin,DC=opengroove,DC=local"
"CN=Administrators,CN=Builtin,DC=opengroove,DC=local"
"CN=Users,CN=Builtin,DC=opengroove,DC=local"
"CN=Guests,CN=Builtin,DC=opengroove,DC=local"
"CN=Print Operators,CN=Builtin,DC=opengroove,DC=local"
"CN=Backup Operators,CN=Builtin,DC=opengroove,DC=local"
"CN=Replicator,CN=Builtin,DC=opengroove,DC=local"
"CN=Remote Desktop Users,CN=Builtin,DC=opengroove,DC=local"
"CN=Network Configuration Operators,CN=Builtin,DC=opengroove,DC=local"
"CN=Performance Monitor Users,CN=Builtin,DC=opengroove,DC=local"
"CN=Performance Log Users,CN=Builtin,DC=opengroove,DC=local"
"CN=Distributed COM Users,CN=Builtin,DC=opengroove,DC=local"
"CN=Server Operators,CN=Builtin,DC=opengroove,DC=local"
"CN=Account Operators,CN=Builtin,DC=opengroove,DC=local"
"CN=Pre-Windows 2000 Compatible Access,CN=Builtin,DC=opengroove,DC=local"
"CN=Incoming Forest Trust Builders,CN=Builtin,DC=opengroove,DC=local"
"CN=Windows Authorization Access Group,CN=Builtin,DC=opengroove,DC=local"
"CN=Terminal Server License Servers,CN=Builtin,DC=opengroove,DC=local"

特定アカウント(ここでは Guest アカウント)の属性をクエリするには -attr * を付けます。

C:\>dsquery * "CN=Guest,CN=Users,DC=opengroove,DC=local" -attr *
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: user
cn: Guest
description: コンピュータ/ドメインへのゲスト アクセス用 (ビルトイン アカウント)
distinguishedName: CN=Guest,CN=Users,DC=opengroove,DC=local
instanceType: 4
whenCreated: 05/10/2007 07:53:23
whenChanged: 05/10/2007 07:53:23
uSNCreated: 8195
memberOf: CN=Guests,CN=Builtin,DC=opengroove,DC=local
uSNChanged: 8195
name: Guest
objectGUID: {C5D1E20D-00C1-498B-952B-CF86FA8682E2}
userAccountControl: 66082
badPwdCount: 2
codePage: 0
countryCode: 0
badPasswordTime: 128856403556663503
lastLogoff: 0
lastLogon: 0
pwdLastSet: 0
primaryGroupID: 514
objectSid: S-1-5-21-1910479612-2582990179-2480390514-501
accountExpires: 9223372036854775807
logonCount: 0
sAMAccountName: Guest
sAMAccountType: 805306368
objectCategory: CN=Person,CN=Schema,CN=Configuration,DC=opengroove,DC=local
isCriticalSystemObject: TRUE
ADsPath: LDAP://sancha.opengroove.local/CN=Guest,CN=Users,DC=opengroove,DC=local

実際にやりたかったのは msDS-KeyVersionNumber の値を確認したかったのでした。この場合には -attr msDS-KeyVersionNumber を指定します。

C:\>dsquery * "CN=Guest,CN=Users,DC=opengroove,DC=local" -attr msDS-KeyVersionNumber
  msDS-KeyVersionNumber
  1

dsquery 以外にも Active Directory を操作するためのコマンドが用意されています。 また、特にコマンドラインでないといけないという制限がないのであれば Adsiedit でやるとよいでしょう。いつもはこの Adsiedit で確認しています。

参考

Comments are closed.