クラス: Mongo::Crypt::ExpriteEncryptionContext Private

継承:
Context
  • オブジェクト
すべて表示
定義:
lib/mongo/crypt/explit_encryption_context.rb

Overview

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

明示的な暗号化のために初期化された Context オブジェクト

既知のサブクラスを直接確認

ExplainEncryptionExpressionContext

インスタンス属性の概要

コンテキストから継承される属性

#ctx_p

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

Contextから継承されたメソッド

#run_化_マシン 、 #化

コンストラクターの詳細

#初期化mongocrypt , io, doc, オプション = {{}) = ExpressEncryptionContext

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

注:

Rangeアルゴリズムは実験的なもののみです。 対象ではありません

新しい明示的暗号化コンテキスト オブジェクトの作成

パブリックで使用します。

パラメーター:

  • mongocrypt Mongo::Crypt::Handle

    新しい mongocrypt_ctx_t の作成に使用される mongocrypt_t オブジェクトをラップするハンドル

  • io ClientEncryption::IO

    ステート マシンの実行に必要なドライバー I/O メソッドを実装する IO クラスのインスタンス

  • doc BSON::Document

    暗号化するドキュメント

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

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

  • :key_id BSON::Binary

    暗号化に使用するデータキーの UUID を表す :uuid の BSON::Binary オブジェクト。

  • :key_alt_name string

    値を暗号化するために使用されるデータキーの別名。

  • : アルゴリズム string

    値を暗号化するために使用されるアルゴリズム。 有効なアルゴリズムは、AEAD_AES_256_CBC_HMAC_SHA_512-Demittin 、AEAD_AES_256_CBC_HMAC_SHA_512-Range 、インデックス付き 、インデックスなし、範囲 です。

  • :contention_factor (Integer | nil)

    暗号化アルゴリズムが インデックス付き に設定されている場合に適用される競合係数。 指定しない場合、デフォルトは0の値になります。 競合係数は、暗号化アルゴリズムが [ Indexed(インデックス付き) ] に設定されている場合にのみ設定する必要があります。

  • query_type string | nil

    暗号化アルゴリズムが [ Indexed(インデックス) ] または [ Range(範囲) ] に設定されている場合に適用されるクエリタイプ。 許可される値は [等価] と [範囲] です。

  • :range_opts ハッシュ | nil

    範囲 クエリをサポートするQueryable Encryptionフィールドのインデックスオプションを指定します。 許可されるオプションは次のとおりです。

    • :min

    • :max

    • :trim_factor

    • :sparsity

    • : 精度

    min、max、trim_factor、スパース、精度は、宛先コレクションの encryptedFields に設定されている値と一致する必要があります 。 double と decimal128 の場合は、最小値/最大値/精度はすべて設定されるか、すべてが設定されていない必要があります。

次の値が発生します。



67
68
69
70
71
72
# ファイル 'lib/mongo/crypt/explit_encryption_context.rb' 行 67

デフォルト 初期化(mongocrypt, io, doc, options = {})
  スーパー(mongocrypt, io)
  set_key_opts(options)
  set_algorithm_opts(options)
  init(doc)
end

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

# init (ドキュメント) =オブジェクト

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



74
75
76
# ファイル 'lib/mongo/crypt/explit_encryption_context.rb' 行 74

デフォルト init(doc)
  バインディング.ctx_explicit_encrypt_init(自己, doc)
end