私はPythonのLDAPモジュールを使用してユーザーログインを検証しています。 ログインに失敗すると、ldap.INVALID_CREDENTIALSログインが表示されますが、パスワードが間違っているか、アカウントがロックされている可能性があります。アカウントは3回目の試行後にロックされます。PythonでLDAPを使用してActive Directoryユーザーアカウントがロックされているかどうかを検出します
私は、アカウントがロックされていることを検出し、同じ「無効なログイン」メッセージではなく、欲求不満のユーザーに報告したいと考えています。
Iが見出さ溶液探し:でuserAccountControl LOCKEDフラグはADで使用されていない
- 。
- lockoutTimeの属性ではなく
使用する必要があり、私はロックされたユーザーを検索するために使用されなければならないLDAPクエリは次のとおりです。
(&(objectClass=user)(lockoutTime>=1))
または特定のユーザーのために:
(&(objectClass=user)(sAMAccountName=jabberwocky)(lockoutTime>=1))
しかし、これが機能していない場合、クエリは毎回結果を返しません。
と等しくないlockoutTimeの名前の存在属性を持つことになります'使用しているなら'(!lockoutTime = 0 ) '、あるいは'(lockoutTime> 0) 'であってもよい。 '(!lockoutTime> = 1)'だけがこれを避けているようです。 –