27

こんにちは、openca でユーザーを認証するために LDAP テスト サーバーを使用しようとしています。

私は現在、phpldapadminを介して次のように接続しています:

ログイン DN : cn=admin,dc=example,dc=com
パスワード : mypass

しかし、opencaで何かがうまくいかない... datasources.xmlで、ldap構成の設定を見つけて、

<name>basedn</name>

私にとってのベースはどれですか?私はすでに試しました

cn=admin,dc=example,dc=com

dc=example,dc=com

LDAP管理エクスプローラーでもLDAPに接続できます。

ありがとう !

4

2 に答える 2

37

ベース DN はdc=example,dc=com.

openca についてはわかりませんが、これまでのところトラフィックがほとんどないため、この回答を試してみます。

ベース DN は、サーバーがユーザーを検索するポイントです。adminしたがって、単純にログイン名として使用しようとします。

openca がほとんどの LDAP 対応アプリケーションと同じように動作する場合、次のようになります。

  1. ユーザーの LDAP 検索はadmin、サーバーによってベース dn ( dc=example,dc=com) から開始されます。
  2. ユーザーが見つかると、完全な dn ( cn=admin,dc=example,dc=com) を使用して、提供されたパスワードにバインドされます。
  3. LDAP サーバーはパスワードをハッシュし、保存されているハッシュ値と比較します。一致すれば、あなたは入ります。

ステップ 1 を正しく行うのが最も難しい部分ですが、ほとんどの場合、それを頻繁に行うことができないためです。構成ファイルで注意する必要があるのは、次のとおりです。

  • dnアプリケーションが LDAP サーバーにバインドするために使用します。これは、アプリケーションの起動時、ユーザーが認証される前に発生します。のような完全な dn を指定する必要がありますcn=admin,dc=example,dc=com
  • 認証方法。通常は「簡易バインド」です。
  • ユーザー検索フィルター。ユーザーの名前が付けられた属性を見てobjectClassくださいadmin。またはのいずれinetOrgPersonかになりますuser。のようなものもありtopますが、無視してかまいません。openca の設定には、 のような文字列があるはず(objectClass=inetOrgPerson)です。それが何であれ、管理者ユーザーのオブジェクト クラスと一致することを確認してください。この検索フィルタでは、2 つのオブジェクト クラスを指定できます(|(objectClass=inetOrgPerson)(objectClass=user))

Apache の Directory Studioなどの LDAP ブラウザをダウンロードします。アプリケーションの資格情報を使用して接続するため、アプリケーションが見ているものが表示されます。

于 2013-06-10T03:33:32.017 に答える