問題タブ [ldapauth]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
active-directory - パスポート-ldapauth が正しく機能していません
このリンクHow To Install and Configure a Basic LDAP Server を使用して、ローカル システムに LDAP サーバーをセットアップしました。LDAPサーバーを実行して、グループ、ユーザーなどを追加することができましたphpldapadmin
. この画像に示すように、ユーザーを追加しました
LDAP サーバーでユーザーを確認するには、以下のコマンドを使用しました
パスワードの入力を求められた後、パスワードを入力すると結果が表示されます
次に、passport-ldapauthモジュールを使用しようとしました。私がこれのために書いたコードは
このコードを実行した後、 にのみcheck ldap
点滅カーソルが表示されterminal
ます。次に、呼び出し機能console.log("user authenticated or not");
かどうかを確認するために我慢しましたが、コンソールには表示されませんが。問題は何でしょうか?LDAP サーバーから応答がないのはなぜですか?LdapStrategy
callback
user authenticated or not
check ldap
passport-ldapaut
ubuntu 14.04 LTS を使用しています。node --version は v0.10.28 です。
更新: ldapauthモジュールも 試しましたが、同じ結果が得られませんでした。上記の Web サイトの変更されたコードを確認してください。
ここでもサーバーからの応答ldap
がありません。サーバーに問題はありますか?
python-3.x - LDAP を正しく認証するには?
LDAP 認証を使用する必要があるプロジェクトに取り組んでいます。Flask アプリケーションに追加する前に、Stack Overflow で練習するためのリンクを見つけた後、ldap.forumsys.com のサーバーを使用しています。
Python コード内で ldapsearch bash コマンドを実行すると、大量のユーザー名 (Tesla など) とそれに関連するデータ (パスワード ハッシュはありません) が取得されます。ここに示すように、ユーザー名/ユーザーデータを抽出できます。
しかし、LDAP はデータベースと同じではないことに気付きました。ユーザーのログイン情報を認証するために使用できるパスワード ハッシュを見つけたいと思っていました。
それで、私は python-ldap3 モジュールを試しました:
残念ながら、conn.entries を呼び出した後、リストにデータが返されないようです。
ldap3 モジュールが接続をバインドしていることがわかります。ldapsearch コマンドもバインドしますか? パスワード ハッシュがない場合、クライアント側でユーザーが入力したユーザー名/パスワードをどのように認証すればよいですか?
どうもありがとうございました。
node.js - Passport_ldapauth でセッションを適切に使用するにはどうすればよいですか?
私はドキュメントを読み、passport_ldapauth とセッションを使用して、ログインとログアウトのエンドポイントで動作する Expressjs アプリを用意しました。セッションは、sequelize を使用してデータベースに保存され、セッション ID、有効期限、パス、およびドメインのみを含む Cookie がブラウザーに保存されます。
現在、他のエンドポイントを保護しようとしています。コンソールでは、デシリアライザーが最初にヒットし、適切なクエリがデータベースのセッション テーブルに送信され、適切なセッション ID でユーザーを検索して見つけていることがわかります。
しかし、その後、passport_ldapauth が呼び出され、パスワードがないため、「資格情報がありません」というフラッシュ メッセージと 400 が返されます。
これは、回答が得られなかった 2 番目のコメント ( https://github.com/vesse/passport-ldapauth/issues/53 ) でkav が言及していたことだと思います。
おそらく私はこれを複雑にしていますか?ユーザーが他のルートにログインしたら、「ldapauth」の代わりに「セッション」戦略 (存在する場合) に切り替える必要がありますか? それとも、これは機能するはずですが、そうではありませんか? それとも、私は何か間違ったことをしていますか?
問題のルートは次のとおりです。
私を支援するために他に何を提供する必要がありますか?
おそらく私のシリアライザーまたはデシリアライザーが悪いのでしょうか? ログイン/ログアウトエンドポイントで機能するようです。下記参照:
Active Directory から返されるユーザー オブジェクトは非常に大きいことに注意してください。これが、最小限のユーザー名とセッション ID として全体を書き直す理由です。確かではありませんが、findOne によって返されるユーザーは、データベースの「データ」列に含まれる「パスポート」オブジェクトである場合とそうでない場合があると思います。うーん。そうであることを確認する必要がありますか?ユーザーが DB の行全体である可能性があります。