Ruby 1.9.3 リファレンスマニュアル > ライブラリ一覧 > opensslライブラリ > OpenSSL::X509::Storeクラス > verify_callback=

instance method OpenSSL::X509::Store#verify_callback=

verify_callback=(proc)[permalink][rdoc]

検証をフィルタするコールバックを設定します。

コールバックには ProcMethod を渡します。

渡されたコールバックオブジェクトは証明書チェインの検証時に チェインに含まれる各証明書の署名を検証するたびに呼びだされます。 そのときに渡される引数は以下のように

proc{|ok, ctx| ... }

2つで、1つめは検証が成功したかの真偽値、 2つめは検証後の状態を保存した OpenSSL::X509::StoreContext オブジェクトです。 このコールバックには2つの役割があります。1つ目はコンテキストオブジェクト を調べることで詳細なエラー情報を得ることです。2つ目は検証をカスタマイズ することです。このコールバックが true を返すと、たとえ OpenSSL が検証失敗と判定しても、検証が成功したものと判断し証明書チェイン の検証を続けます。逆に false を返すと、検証が失敗したものとみなされ 検証を停止し、検証メソッドは検証失敗を返します。詳細なエラー情報を 得たいだけの場合はコールバックは第一引数をそのまま返すようにしてください。

nil を設定するとデフォルトのコールバック(単に第一引数をそのまま返すだけ) が使われます。

初期状態は nil です。

[PARAM] proc:
設定する Proc オブジェクト

[SEE_ALSO] OpenSSL::X509::Store#verify_callback, OpenSSL::X509::Store#verify, OpenSSL::X509::StoreContext#verify