Back to Faraday

SSL Options

docs/customization/ssl-options.md

2.14.13.9 KB
Original Source

SSL Options

Faraday supports a number of SSL options, which can be provided while initializing the connection.

OptionTypeDefaultDescription
:verifyBooleantrueVerify SSL certificate. Defaults to true.
:verify_hostnameBooleantrueVerify SSL certificate hostname. Defaults to true.
:hostnameStringnilServer hostname for SNI (see SSL docs).
:ca_fileStringnilPath to a CA file in PEM format.
:ca_pathStringnilPath to a CA directory.
:verify_modeIntegernilAny OpenSSL::SSL:: constant (see SSL docs).
:cert_storeOpenSSL::X509::StorenilOpenSSL certificate store.
:client_certOpenSSL::X509::CertificatenilClient certificate.
:client_keyOpenSSL::PKey::RSA, OpenSSL::PKey::DSAnilClient private key.
:certificateOpenSSL::X509::CertificatenilCertificate (Excon only).
:private_keyOpenSSL::PKey::RSAnilPrivate key (Excon only).
:verify_depthIntegernilMaximum depth for the certificate chain verification.
:versionIntegernilSSL version (see SSL docs).
:min_versionIntegernilMinimum SSL version (see SSL docs).
:max_versionIntegernilMaximum SSL version (see SSL docs).
:ciphersStringnilCiphers supported (see SSL docs).

Example

ruby
ssl_options = {
  ca_file: '/path/to/ca_file',
  min_version: :TLS1_2
}

conn = Faraday.new(ssl: options) do |faraday|
  # ...
end