クラス: Mongo::Socket::SSL Private

継承:
Mongo::Socket すべて表示
次のことが含まれます。
OpenSSL
定義:
build/ruby-Driver-v 2.19 /lib/mongo/socket/ssl.rb

Overview

このクラスは、プライベート API の一部です。 このクラスは将来削除または変更される可能性があるため、可能な限り使用しないでください。

TLS ソケットのラッパー。

以来

  • 2.0.0

定数の概要

Mongo::Socketから継承された定数

SSL_ERRORTIME_ERRORTIMEOUT_PACKWRITE_CPUK_SIZE

インスタンス属性の概要を折りたたむ

Mongo::Socketから継承された属性

#ファミリー、 最初のオプションソケットタイムアウト

インスタンス メソッドの概要を折りたたむ

Mongo::Socketから継承されたメソッド

#alive?#close#接続可能か?接続_アドレス接続_生成、 の場合#は を取得し、 # モニターは?#read# Summary#write

コンストラクターの詳細

#初期化(ホスト、ポート、ホスト名、タイムアウト、ファミリー、オプション = {}) = SSL

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

新しい TLS ソケットを初期化します。

例:

TLS ソケットを作成します。

SSL.new('::1', 27017, 30)

パラメーター:

  • ホスト ( string )

    ホスト名または IP アドレス。

  • ポート (整数)

    ポート番号。

  • タイムアウト 浮動小数

    ソケット タイムアウト値。

  • ファミリー (整数)

    ソケットファミリー。

  • options ハッシュ (デフォルトは{}です)

    オプション。

オプション ハッシュ( options ):

  • :connect_timeout 浮動小数

    接続タイムアウト。

  • : connection_address アドレス

    このソケットを作成した接続のアドレス。

  • : connection_生成 整数

    このソケットを作成した接続の生成(非モニタリング接続の場合)。

  • :mongos true | false

    このソケットはモニタリング接続によって作成されたかどうか。

  • :ssl_ca_cert string

    接続のもう一方の側から渡された証明書を検証するために使用される、連結された証明機関証明書を含む ファイル。 このオプションで参照されるファイルでは、中間証明書を指定しないでください。 :ssl_verify を使用する場合は、:ssl_ca_cert、:ssl_ca_cert_string、または :ssl_ca_cert_object (優先順位順)のいずれかが必要です。

  • :ssl_ca_cert_object 配列< OpenSSL::X 509 ::Certificate>

    接続のもう一方のエンドから渡された証明書を検証するために使用される証明機関証明書を表す OpenSSL::X 509 ::Certificate オブジェクトの配列。 このオプションで参照されるファイルでは、中間証明書を指定しないでください。 :ssl_verify を使用する場合は、:ssl_ca_cert、:ssl_ca_cert_string、または :ssl_ca_cert_object (優先順位順)のいずれかが必要です。

  • :ssl_ca_cert_string string

    接続のもう一方の側から渡された証明書を検証するために使用される証明機関証明書を含む string。 このオプションでは、CA 証明書を 1 つだけドライバーに渡すことができます。 このオプションで参照されるファイルでは、中間証明書を指定しないでください。 :ssl_verify を使用する場合は、:ssl_ca_cert、:ssl_ca_cert_string、または :ssl_ca_cert_object (優先順位順)のいずれかが必要です。

  • :ssl_cert string

    MongoDB に対する接続を識別するために使用される証明書ファイル。 最初にクライアント証明書を指定し、その後に CA 証明書までの中間証明書を指定することで、証明書チェーンを渡すことができます。 ファイルには証明書の秘密キーも含まれている場合がありますが、これは無視されます。 このオプションが存在する場合、:ssl_cert_string および :ssl_cert_object の値よりも優先されます。

  • :ssl_cert_object OpenSSL::X 509 ::Certificate

    MongoDB に対する接続を識別するために使用される OpenSSL::X 509 ::Certificate 。 このオプションを介して渡すことができる証明書は 1 つだけです。

  • :ssl_cert_string string

    MongoDB に対する接続を識別するために使用される PEM でエンコードされた証明書を含む string。 最初にクライアント証明書を指定し、その後に CA 証明書までの中間証明書を指定することで、証明書チェーンを渡すことができます。 string には証明書の秘密キーも含まれる場合があります。これは無視されます。このオプションが存在する場合、次のオプションは :ssl_cert_object の値よりも優先されます。

  • :ssl_key string

    MongoDB に対する接続を識別するために使用される秘密キーファイル。 キーが証明書と同じファイルに保存されている場合でも、両方を明示的に指定する必要があることに注意してください。 This option, if present, takes precedence over the values of :ssl_key_string and :ssl_key_object

  • :ssl_key_object (OpenSSL::PKey)

    MongoDB に対する接続を識別するために使用される秘密キー

  • :ssl_key_pass_ phrase string

    秘密キーのパスフレーズ。

  • :ssl_key_string string

    MongoDB に対する接続を識別するために使用される PEM でエンコードされた秘密キーを含む string 。 このパラメーターが存在する場合、オプションの値よりも優先されます :ssl_key_object

  • :ssl_verify truefalse

    ピア証明書の検証とホスト名の検証を実行するかどうか。 :ssl_verify_Certificate が設定されている場合は、証明書を検証するかどうかの決定が上書きされ、 :ssl_verify_hostname が設定されている場合は、ホスト名を検証するかどうかの決定が上書きされることに注意してください。

  • :ssl_verify_Certificate truefalse

    ピア証明書の検証を実行するかどうか。 この設定は、証明書の検証が実行されるかどうかに関して :ssl_verify を上書きします。

  • :ssl_verify_hostname truefalse

    ピア ホスト名の検証を実行するかどうか。 この設定は、ホスト名の検証が実行されるかどうかに関して :ssl_verify を上書きします。

以来

  • 2.0.0



103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/socket/ssl.rb' の場合は103行

デフォルト 初期化(ホスト, ポート, host_name, タイムアウト, ファミリー, options = {})
  スーパー(タイムアウト, options)
  @host, @port, @host_name = ホスト, ポート, host_name
  @context = create_context(options)
  @ファミリー = ファミリー
  @tcp_socket = ::ソケット.新着情報(ファミリー, SOCK_STREAM, 0)
  begin
    @tcp_socket.setopt(IPPROTO_TCP, TCP_NODELAY, 1)
    set_socket_options(@tcp_socket)
    run_tls_context_hooks

    接続します。
  ヘルプ
    @tcp_socket.閉じる
    発生
  end
end

インスタンス属性の詳細

#context = SSLContext ( readonly)

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

コンテキスト TLS コンテキストを返します。

次の値を返します。

  • (SSLContext)

    context TLS コンテキスト。

以来

  • 2.0.0



122
123
124
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/socket/ssl.rb' の場合は122行

デフォルト context
  @context
end

ホスト= string (読み取り専用)

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

接続するホストを返します。

次の値を返します。

  • ( string )

    ホスト 接続するホスト。

以来

  • 2.0.0



125
126
127
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/socket/ssl.rb' の場合は125行

デフォルト ホスト
  @host
end

# host_name = string (読み取り専用)

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

host_name 元のホスト名を返します。

次の値を返します。

  • ( string )

    host_name 元のホスト名。

以来

  • 2.0.0



128
129
130
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/socket/ssl.rb' の場合は128行

デフォルト host_name
  @host_name
end

ポート整数(読み取り専用)

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

接続するポートを返します。

次の値を返します。

  • (整数)

    ポート 接続するポート。

以来

  • 2.0.0



131
132
133
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/socket/ssl.rb' の場合は131行

デフォルト ポート
  @port
end

インスタンス メソッドの詳細

#readbyte =オブジェクト

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

ソケットから 1 バイトを読み取ります。

例:

単一バイトを読み取ります。

socket.readbyte

次の値を返します。

  • オブジェクト

    読み取りバイト。

以来

  • 2.0.0



176
177
178
179
180
181
ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/socket/ssl.rb' の場合は176行

デフォルト 読み取りバイト
  map_例外 行う
    byte = ソケット.読み取り(1).バイト.to_a[0]
    byte.nil? ? 発生(EOFError) : byte
  end
end