- - PR -
ASP,ADSIによるActiveDirectory認証
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2005-06-23 19:01
こんにちわ。
ASP,ADSIによるActiveDirectoryの認証について質問させて頂きます。 現在は、アカウントロックのチェックを行った後、認証を行っております。 これを、認証が通った場合のみ、アカウントロックされているというメッセージを表示したいと考えています。 ロックされているユーザの認証を行った場合、ロックによるエラーとパスワード不正によるエラーとの判別ができないので、パスワードの正当性が判断出来ずに困っております。 以下についてご存知の方がおられましたら、教えて頂ければと思います。 ・アカウントロックされているユーザの認証を行う方法はあるのでしょうか ・アカウントロックを一時的に解除し、認証後にもう一度ロックする、といった方法は可能でしょうか 以下、ソースになります。 ======================================================= 'ユーザオブジェクトの取得 Set oAdoCon = Server.CreateObject("ADODB.Connection") oAdoCon.ConnectionString = "Provider=ADSDSOObject;User ID=bind;Password=****;" oAdoCon.Open Set oAdoCom = CreateObject("ADODB.Command") Set oAdoCom.ActiveConnection = oAdoCon oAdoCom.CommandText = _ "SELECT badPwdCount " & _ "FROM 'LDAP://192.168.1.1/DC=RKC,DC=local' " & _ "WHERE objectClass = 'user' AND CN='" & Request("USERID") & "'" Set oAdoUser = oAdoCom.Execute 'アカウントロックのチェック If Clng(oAdoUser("badPwdCount")) >= 5 Then メッセージ表示:"このユーザはパスワードを5回以上間違えました" End If '認証 Set oAdsiNmsp = GetObject("LDAP:") Set oAdsiUser = oAdsiNmsp.OpenDSObject("LDAP://192.168.1.1/" & _ oAdoUser("distinguishedName"), _ oAdoUser("distinguishedName"), _ Request("PASSWORD"), 0) If Err <> 0 Then メッセージ表示:"ユーザ名またはパスワードが間違っています" End If ======================================================= 以上、宜しくお願い致します。 |
1