Ruby 4.1 リファレンスマニュアル

instance method OpenSSL::SSL::SSLContext#add_certificate

add_certificate(certificate, pkey, extra_certs = nil) -> selfRuby 2.5.0 から[permalink][rdoc][edit]

証明書とその秘密鍵を self に追加します。

certificate に対応する秘密鍵を pkey で指定します。公開鍵の種類(RSA、ECDSA など)が異なる証明書を複数回に分けて追加でき、ハンドシェイク時に OpenSSL がそのときの状況に最も適した証明書を選択します。

OpenSSL::SSL::SSLContext#cert=、OpenSSL::SSL::SSLContext#key=、OpenSSL::SSL::SSLContext#extra_chain_cert= は証明書を設定するための古い方法で、内部的にはこのメソッドを呼び出します。

[PARAM] certificate:
追加する証明書(OpenSSL::X509::Certificate のインスタンス)
[PARAM] pkey:
certificate に対応する秘密鍵(OpenSSL::PKey::PKey のインスタンス)
[PARAM] extra_certs:
certificate に続けて送信する証明書チェイン(OpenSSL::X509::Certificate の配列)
[EXCEPTION] ArgumentError:
certificate が公開鍵を含んでいない場合や、pkey が certificate の公開鍵と一致しない場合に発生します
[EXCEPTION] OpenSSL::SSL::SSLError:
証明書や秘密鍵の設定に失敗した場合に発生します
ctx.add_certificate(rsa_cert, rsa_pkey, [ca_intermediate_cert])

[SEE_ALSO] OpenSSL::SSL::SSLContext#cert=, OpenSSL::SSL::SSLContext#key=, OpenSSL::SSL::SSLContext#extra_chain_cert=