2009-06-25 12 views
2

パスワードリセットの質問に対する回答をLDAPに保存したい。私は答えが塩ではさまれるべきであることを知っています。私は次のことについて洞察したいと思います:パスワードリセットに関する質問をLDAPに保存する

  • 私たちはどのような属性クラスを使用しますか?
  • LDAPサーバーにハッシュ操作を実行させることは可能ですか?
  • コンテナがハッシュの実行方法を公開していない場合、LDAP比較操作を使用する方法はありますか?
  • 答えは、どのディレクトリサービスベンダーと一緒に行くのですか?
  • この目的のために、属性attributeClassを拡張することは可能ですか?

答えて

0

アイデアが完全にオフになっている可能性があります。パスワードが秘密の質問の答えである各ユーザーのアカウントが重複しないようにしてください。
この方法では、ハッシング/塩/暗号化について考える必要はなく、ログオンユーザーAPIと呼ばれる答えを検証する必要もありません。
これらの重複したユーザーは、非常に限られたセキュリティグループに属します。

1

Sun Directory Serverでこのような機能を検索しましたが、それを見つけることができませんでした。私は(私が正しく覚えていればjava.security.MessageDigestを使って)クライアントコードに実装しました。あまり仕事はしませんでしたが、私はそれをサーバーが処理することを好みました。

UPDATE

のOracle Internet Directory 11gはハッシングの属性をサポートします。 http://download.oracle.com/docs/cd/E17904_01/oid.1111/e10029/data_privacy.htm#BABFFHIH

0

ハッシュの対象となる属性の構文を使用して、セキュリティの質問/回答の属性を定義することは可能かもしれないし/暗号化(userPasswordなど)。これは、使用しているディレクトリサーバー製品によって異なります。

0

ハッシュ/暗号化された値を読み取り可能な文字列、たとえばBase64エンコードとして保存する場合は、任意のディレクトリ文字列属性タイプ(http://tools.ietf.org/html/rfc4517#page-8)を使用できます。任意のオクテット文字列属性タイプ(http://tools.ietf.org/html/rfc4517#page-19)を格納することもできます。

セキュリティに関する質問への回答を回復する必要がある場合や、検証中にいくつかの寛大さ(例:混在/小文字/大文字の無関心)が必要な場合は、暗号化を使用する方がよいでしょう。これを行うにはミドルウェアを持つことが望ましいでしょう。 Terry Gardner氏によると、使用しているディレクトリサーバーソフトウェアによって異なります。たとえば、属性の値を暗号化するようにIBM Tivoli Directory Serverを構成することができます。暗号化は、ソフトウェアのインストール中に指定されたセキュリティエレメントを使用して行われます。アプリケーションは特別な操作を行う必要はありません。 Novell、Red Hat、およびOracle/Sun Directory Serverソフトウェアも暗号化された属性をサポートしています。私はADの専門家ではありませんが、暗号化された属性をサポートしていないと思います。私はOpenLDAPでも同じだと思います。