私は以下の質問が複数回尋ねられていることを知っています。ldap3 pythonを使用したActive Directory認証、クリアテキストのパスワードを避ける方法
しかし、SSLなしでそれを回避する方法はありますか?ここで
は問題です:
私は、Active Directoryでユーザーを認証休息ベースのAPIを実装してきました。
私たちのセキュリティチームは、UIからAPIへプレーンテキストのパスワードを渡すことがセキュリティリスクであると懸念しています。
しかし、Active Directoryにはプレーンテキストのパスワードが必要なので、これを実行しています。 それはちょうどPOSTリクエストでJSON形式で行く:
{"user":"uname","password":"password"}
ここで私はPythonのLDAP3モジュールから使用ADの認証コードがあります。
s = Server(AD_SERVER, port=AD_PORT, use_ssl=True, get_info=ALL)
c = Connection(s, user=userName, password=password, authentication=NTLM)
c.bind()
上記では、ハッシュまたは暗号化された形式でパスワードを送信する方法があります。 Active Directoryまたはldap3がこの接続にこのようなメカニズムをサポートしているかどうかはわかりません。
いずれのリードも認められます。
あなたのコードスニペットには 'use_ssl = true'と記載されていますので、何が問題なのですか?接続が実際に暗号化されていることを確認するには、デバッグトレースフラグを有効にして、SSL/TLSのチャットを探します。または、ポート686(LDAPS)でAD接続を強制します。ポート389ではLDAPをオプションのTLSとともに使用します –