モジュール: Mongo::Crypt::KMS::Validation Private

Overview

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

このモジュールには、KMS パラメータを検証するためのヘルパー メソッドが含まれています。

クラスメソッドの概要を折りたたむ

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

クラスメソッドの詳細

.validate_tls_options(options) ⇒ Hash

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

KMS TLS オプションを検証します。

パラメーター:

  • options (ハッシュ | nil )

    KMS プロバイダーに接続するための TLS オプション。 ハッシュのキーは、K SM プロバイダー名である必要があります。値は、TLS 接続オプションのハッシュである必要があります。 オプションは、Mongo::Client の TLS 接続オプションと同じです。

次の値を返します。

  • ハッシュ

    TLS オプションが有効な場合は指定しました。

次の値が発生します。

  • (ArgumentError)

    必須 オプションが欠落しているか、形式が正しくない場合。



87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
# ファイル 'lib/mongo/crypt/ kms.rb' の場合 87 行

デフォルト validate_tls_options(options)
  ops = options || {}
  ops. 行う |プロバイダー, provider_opts|
    場合 provider_opts[:ssl] == false || ops[:tls] == false
      発生 ArgumentError.新着情報(
        " #{ provider } TLS オプションが正しく ありません: TLS が必要です "
      )
    end
    %i(
      ssl_verify_certify
      ssl_verify_hostname
    ). 行う |opt|
      場合 provider_opts[opt] == false
        発生 ArgumentError.新着情報(
          " #{ provider } の TLS オプションが正しくありません : " +
          '安全でない TLS オプションは禁止されています、 ' +
          " KMS では#{ opt }を false に設定できません
        )
      end
    end
  end
  ops
end

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

# validate_aram (key、opts、format_hint、必須: true)= string | nil

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

KMS パラメータが有効かどうかを検証します。

パラメーター:

  • キー シンボル

    パラメータ名。

  • ops ハッシュ

    ハッシュには、キーの下の パラメーターが含まれている必要があります。

  • 必須 ブール値 (デフォルトはtrue

    パラメーターが必須かどうか。 必須でないパラメーターは nil にすることができます。

次の値を返します。

  • ( string | nil )

    string パラメーター値、または必須以外のパラメーターが欠落している場合は nil 。

次の値が発生します。

  • (ArgumentError)

    必須 オプションが欠落しているか、形式が正しくない場合。



43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# ファイル 'lib/mongo/crypt/ kms.rb' の場合 43 行

デフォルト validate_param(キー, ops, format_hint, 必須: true)
  価値 = ops.fetch(キー)
  return nil 場合 価値.nil? & & !必須
  場合 価値.nil?
    発生 ArgumentError.新着情報(
      " #{ key } オプション はstring 少なくとも 1 文字を含む である必要があります。 " \ " は現在、 値 が で ない限り、 " ) 末尾 に nil " )を持ってい ます 。 is_a?string )では ArgmentError が 発生 し ます。 new" #{ key } オプション はstring 少なくとも 1 文字を含む である必要があります。 " \ " は現在 #{ } を使用しています " は、 が の 場合 に終了 します 。 空の場合は Ar によるエラー を発生さ せ ます。 new (" #{ key } オプションは少なくともstring 1 文字の である必要があります 。 " \ " 現在は空の で あるstring 必要があります。 必要 に応じ て の 終了 が KeyError を 使用し て終了します 。 new" 指定された KMS プロバイダー オプションは無効です: #{ opts } " + format_hint それ以外の 場合 は nil 終了