- PR -

ADの検索でアカウントの状態を利用するには?

1
投稿者投稿内容
ラン
会議室デビュー日: 2005/04/15
投稿数: 13
投稿日時: 2005-06-15 10:49
いつもお世話になっております。

現在下記のようにAD内のユーザーを検索してます。

Set con = CreateObject("ADODB.Connection")
con.Provider = "ADsDSOObject"
con.Open DNS
strQ = "SELECT ADsPath,cn, FROM 'LDAP://<ドメインパス>' "
strQ = strQ & "WHERE objectCategory='person' "
strQ = strQ & "AND objectClass='user'"

この中で、displaynameなどの属性は検索条件と
したり検索結果として取得することが出来るのですが、
検索条件をアカウントの有効、無効状態を条件としたり
結果として取得する方法がわからず困っております。
SELECTの中に状態でありますAccountDisabledを入れると
エラーになりますし、また条件の中で
AccountDisabled='0'としても検索されません。

アカウントの有効、無効状態を検索の中で
利用するにはどのようにしたらよいでしょうか。
何かアドバイスがありましたらぜひご教授ください。
よろしくお願いいたします。
NT
会議室デビュー日: 2005/05/20
投稿数: 7
投稿日時: 2005-06-15 11:28
無理な気もしますが、アカウントの有効か無効かを判断する属性はuserAccountControlと言う属性です。
詳しくは、下記のサイトで見てください。
http://support.microsoft.com/default.aspx?scid=kb%3Bja%3B305144
ラン
会議室デビュー日: 2005/04/15
投稿数: 13
投稿日時: 2005-06-15 16:26
NT様
アドバイスありがとうございました。
参考にさせていただきました。
私も無理のような気もしますがもう少し調査してみたいと思います。
ありがとうございました。
ちゃっぴ
ぬし
会議室デビュー日: 2004/12/10
投稿数: 873
投稿日時: 2005-06-15 23:40
WMIでいけませんかね?
コード:

Set objWMIService = GetObject( _
"winmgmts:\\" & strComputer & "\root\cimv2")
Set colUsers = objSWbemServices.ExecQuery( _
"SELECT Name FROM Win32_UserAccount Where Disabled = True")

For Each objUser In colUsers
WScript.Echo objUser.Name
Next



Win32_UserAccount
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmisdk/wmi/win32_useraccount.asp

[ メッセージ編集済み 編集者: ちゃっぴ 編集日時 2005-06-15 23:41 ]
1

スキルアップ/キャリアアップ(JOB@IT)