クラス: Mongo::Crypt::KMS::GCP:: MasterKeyDocument Private

継承:
オブジェクト
  • オブジェクト
すべて表示
次のことが含まれます。
検証
定義:
lib/mongo/crypt/KMS/ GCP / Master_document.rb

Overview

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

GCP KMS マスターキー ドキュメント オブジェクトには、KMS マスターキー パラメータが含まれています。

定数の概要の削減

FORMAT_HINT =

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

GCPキードキュメントは: の形式である必要があります  +
" {project_id: "PROJECT_ID",location: "LOCATION", " +
key_ring: 'KEY-RING', key_name: 'KEY-NAME' }

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

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

検証に含まれるメソッド

#validate_param, validate_tls_options

コンストラクターの詳細

#初期化(opts) = マスターキードキュメント

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

パラメーター ハッシュからマスター キー ドキュメント オブジェクトを作成します。

パラメーター:

  • ops ハッシュ

    GCP KMS プロバイダーのマスターキー オプションを含むハッシュ。

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

  • :project_id string

    GCP プロジェクト ID。

  • :location string

    GCP ロケーション。

  • :key_string string

    GCP KMS キー リング。

  • :key_name string

    GCP KMS キー名。

  • :key_version string | nil

    GCP KMS キー バージョン(任意)。

  • : エンドポイント string | nil

    GCP KMS キー エンドポイント(任意)。

次の値が発生します。

  • (ArgumentError)

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



61
62
63
64
65
66
67
68
69
70
71
72
# ファイル 'lib/mongo/crypt/KMS/ GCP/ Master_document.rb' は、61 行を

デフォルト 初期化(ops)
  場合 ops.空の場合
    @ empty = true
    return
  end
  @project_id = validate_param(:project_id, ops, FORMAT_HINT)
  @location = validate_param(:location, ops, FORMAT_HINT)
  @key_string = validate_param(:key_string, ops, FORMAT_HINT)
  @key_name = validate_param(:key_name, ops, FORMAT_HINT)
  @key_version = validate_param(:key_version, ops, FORMAT_HINT, 必須: false)
  @endpoint = validate_param(: エンドポイント, ops, FORMAT_HINT, 必須: false)
end

インスタンス属性の詳細

#エンドポイント= string | nil (読み取り専用)

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

GCP KMS エンドポイントを返します。

次の値を返します。

  • ( string | nil )

    GCP KMS エンドポイント。



43
44
45
# ファイル 'lib/mongo/crypt/KMS/ GCP/ Master_document.rb' は、43 行を

デフォルト エンドポイント
  @endpoint
end

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

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

GCP KMS キー名を返します。

次の値を返します。

  • ( string )

    GCP KMS キー名。



37
38
39
# ファイル 'lib/mongo/crypt/KMS/ GCP/ Master_document.rb' は、37 行を

デフォルト key_name
  @key_name
end

key_string = string (読み取り専用)

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

GCP KMS キー リングを返します。

次の値を返します。

  • ( string )

    GCP KMS キー リング。



34
35
36
# ファイル 'lib/mongo/crypt/KMS/ GCP/ Master_document.rb' は、34 行を

デフォルト key_string
  @key_string
end

# key_version = string | nil (読み取り専用)

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

GCP KMS キーのバージョンを返します。

次の値を返します。

  • ( string | nil )

    GCP KMS キー バージョン。



40
41
42
# ファイル 'lib/mongo/crypt/KMS/ GCP/ Master_document.rb' は、40 行を

デフォルト key_version
  @key_version
end

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

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

GCP ロケーションを返します。

次の値を返します。

  • ( string )

    GCP ロケーション。



31
32
33
# ファイル 'lib/mongo/crypt/KMS/ GCP/ Master_document.rb' は、31 行を

デフォルト ロケーション
  @location
end

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

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

GCP プロジェクト ID を返します。

次の値を返します。

  • ( string )

    GCP プロジェクト ID。



28
29
30
# ファイル 'lib/mongo/crypt/KMS/ GCP/ Master_document.rb' は、28 行を

デフォルト project_id
  @project_id
end

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

#to_documentBSON::Document

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

マスターキー ドキュメント オブジェクトを libmongocrypt 形式の BSON ドキュメントに変換します。

次の値を返します。

  • BSON::Document

    libmongocrypt 形式の GCP KMS 認証情報。



77
78
79
80
81
82
83
84
85
86
87
88
89
90
# ファイル 'lib/mongo/crypt/KMS/ GCP/ Master_document.rb' は、77 行を

デフォルト to_document
  return BSON::ドキュメント.新着情報({}) 場合 @ empty

  BSON::ドキュメント.新着情報({
                       プロバイダー: 'gcp',
                       projectId: project_id,
                       ロケーション: ロケーション,
                       keyRing: key_string,
                       keyName: key_name
                     }).タップ 行う |bson|
    bson.update({ keyVersion: key_version }) ただし、 key_version.nil?
    bson.update({ エンドポイント: エンドポイント }) ただし、 エンドポイント.nil?
  end
end