2017-09-28 9 views
0

私はLDAP接続をバインドするサービスアカウントを持っていますが、JAAS LdapLoginModuleを使用してアカウントを認証しています。 LDAPバインドが成功すると、そのユーザー名とパスワードで他の通常のユーザーを検索または認証または検索する必要があります。他のアカウントでLDAPにバインドし、LDAPサーバーでパスワードを使用してユーザーを検索します。

したがって、私はユーザーとLDAPのバインド許可のパスワードで検索クエリを見つけられなかったので、この通常のユーザーには許可されません。私はすべてのグループとその中のユーザーを取得することができますが、私はパスワードを見つけることができませんでした。

答えて

0

LDAPディレクトリを認証プロバイダとして使用する「通常の」方法では、漏れを防ぐためにパスワード属性を読み取ることはできません。

通常行われることは、誰かがこの属性だけで認証できるようにすることです。つまり、誰でもバインド操作を試みるために属性を使用できます。

だからあなたのケースに対処するための2つの方法:

  1. [推奨されません]:パスワード属性(=>潜在的なセキュリティ問題を作成する)
  2. を読み取るために検索するために使用するユーザーを許可するアクセス権を変更
  3. はパスワード属性にのみバインドへの匿名接続を許可する

EDIT:コメントでの質問に答えるために:

私は先に述べたように、マスターアカウントとは別のユーザーのパスワード属性を(プロトコルのLDAP操作のように)比較および/または読み取るには、マスターアカウントで許可する必要がありますが、推奨されません。

それを許可する方法、それはあなたが使用するLDAP実装に依存(。つまり、どのディレクトリ:OpenLDAPの、AD、ApacheDSの、など)

それとも、誰もがスタンダールがあるディレクトリ上で結合させ

  • は、ユーザーのDNと、彼は提供されたパスワードと
  • 再バインドをバインドしようとするユーザーのDNを検索し、マスターパスワードを使用して

    • バインド:これを行う方法
      • バインドOK:正しいパスワード
      • バインドKO:無効な資格
  • +0

    JASSログインを使用して、マスターアカウントのパスワードでユーザーを正常にバインドしましたが、実際にLDAPサーバーにログインしようとしているユーザーのユーザー名とパスワードを検証する必要があります。 – Shardendu

    +0

    @ Shardendu私の回答をさらに編集しました;) – Esteban

    +0

    通常のユーザーにバインド許可がないため、通常のユーザーをバインドできた場合LDAPにバインドできません私は私がマスターユーザーによってバインドする必要はないと思う。存在するユーザーのパスワードとユーザー名を比較する方法はありますか? – Shardendu

    0

    以下を行う必要があります。

    1. ディレクトリへのバインドを検索する権限を持つ管理者ユーザーとして。
    2. スクリーンネームや電子メールなど、固有の属性を持つユーザーを検索します。
    3. 指定したパスワードでそのユーザーをバインドしようとします。

    これらすべてが成功した場合、ユーザー属性とパスワードは正しいものでした。そうでない場合、そうではありません。

    +0

    私はマスターユーザーと他の通常のユーザーのみバインド権限を持っています私はユーザー名とパスワードで検証する必要がありますので、別の方法があります – Shardendu

    +0

    これは間違っているか、LDAPサーバーをセットアップした人は誰でも実行しました。これがあなたのやり方です。 – EJP

    関連する問題