クラス: Mongo::Crypt::Binding Private

継承:
オブジェクト
  • オブジェクト
すべて表示
次による拡張機能。
FFI:: ライブラリ
定義:
build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb

Overview

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

libmongocrypt C ライブラリの Ruby バインディング

定数の概要の削減

MIN_LIBMONGOCRYPT_VERSION =

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

このバージョンのドライバーに必要な libmongocrypt の最小バージョン。 libmongocrypt の以前のバージョンでドライバーを使用しようとすると、「LoadError」が発生します。

Gem::バージョン.新着情報(" 1.7.0 ")

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

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

クラスメソッドの詳細

.check_ctx_status(context) ⇒ nil

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

基礎となる mongocrypt_ctx_t オブジェクトのステータスに基づいて、 Mongo::Error::CryptError を発生させます。

次の値を返します。

  • (nil)

    常に nil です。



1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1757

デフォルト 自己.checkpoint_ctx_status(context)
  場合 ブロック_指定
    do_ Ops Manager = !ノードの数
  else
    do_ Ops Manager = true
  end

  場合 do_ Ops Manager
    状態 = ステータス.新着情報

    mongocrypt_ctx_status(context.ctx_p, 状態.参照)
    状態.resume_crypt_error
  end
end

checkpoint_ kms_ctx_status ( kms_context) =オブジェクト

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

提供されたブロックが false を返す場合は、提供された KmsContext オブジェクトからのステータス情報を使用して CritError を発生させます。

パラメーター:

次の値が発生します。



1099
1100
1101
1102
1103
1104
1105
1106
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1099

デフォルト 自己.check_kms_ctx_status(kms_context)
  ただし、 ノードの数
    状態 = ステータス.新着情報

    mongocrypt_ kms_ctx_status(kms_context.kms_ctx_p, 状態.参照)
    状態.resume_crypt_error(KMS : true)
  end
end

checkpoint_status (handle) = nil

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

基礎となる mongocrypt_t オブジェクトのステータスに基づいて、 Mongo::Error::CryptError を発生させます。

次の値を返します。

  • (nil)

    常に nil です。



1744
1745
1746
1747
1748
1749
1750
1751
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1744

デフォルト 自己.check_status(ハンドル)
  ただし、 ノードの数
    状態 = ステータス.新着情報

    mongocrypt_status(ハンドル.参照, 状態.参照)
    状態.resume_crypt_error
  end
end

crypt_shared_lib_version (handle) =整数

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

ロードされた crypt_shared ライブラリのバージョンをエンコードする64ビットの定数を取得します(使用可能な場合)。

バージョンは、高いものから低いものの順に、4つの16ビットの数値としてエンコードされます。

  • メジャー バージョン

  • マイナー バージョン

  • 改訂

  • reserved

たとえば、バージョン6.2.1は次のようにエンコードされます: 0 x 0006 「 0002 」 「 0001 」 「 0000 」

パラメーター:

次の値を返します。

  • (整数)

    バージョンは 46 ビット整数としてエンコードされる64ビットのエンコードバージョン番号。crypt_shared ライブラリがロードされていない場合は 0 になります。



1550
1551
1552
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1550

デフォルト 自己.crypt_shared_lib_version(ハンドル)
  mongocrypt_crypt_shared_lib_version(ハンドル.参照)
end

cx_datakey_init (コンテキスト)=オブジェクト

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

Context を初期化してデータキーを作成する

パラメーター:

次の値が発生します。



617
618
619
620
621
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行617

デフォルト 自己.ctx_datakey_init(context)
  checkpoint_ctx_status(context) 行う
    mongocrypt_ctx_datakey_init(context.ctx_p)
  end
end

cx_decrypt_init (コンテキスト、コマンド)=オブジェクト

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

自動復号化のためのコンテキストを初期化する

パラメーター:

  • context Mongo::Crypt::Context
  • コマンド BSON::Document

    解読する BSON ドキュメント

次の値が発生します。



778
779
780
781
782
783
784
785
786
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行778

デフォルト 自己.cx_decrypt_init(context, コマンド)
  validate_document(コマンド)
  データ = コマンド.to_bson.to_s
  バイナリ.wrap_string(データ) 行う |data_p|
    checkpoint_ctx_status(context) 行う
      mongocrypt_ctx_decrypt_init(context.ctx_p, data_p)
    end
  end
end

cx_encrypt_init (context、db_name、コマンド)=オブジェクト

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

自動暗号化のコンテキストを初期化する

パラメーター:

  • context Mongo::Crypt::Context
  • db_name ( string )

    暗号化されたコマンドが実行されるデータベースの名前

  • コマンド ハッシュ

    暗号化するコマンド

次の値が発生します。



684
685
686
687
688
689
690
691
692
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行684

デフォルト 自己.cx_encrypt_init(context, db_name, コマンド)
  validate_document(コマンド)
  データ = コマンド.to_bson.to_s
  バイナリ.wrap_string(データ) 行う |data_p|
    checkpoint_ctx_status(context) 行う
      mongocrypt_ctx_encrypt_init(context.ctx_p, db_name, -1, data_p)
    end
  end
end

.ctx_explicit_decrypt_init(context, doc) ⇒ Object

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

明示的な復号化のためにコンテキストを初期化する

パラメーター:

次の値が発生します。



808
809
810
811
812
813
814
815
816
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行808

デフォルト 自己.ctx_explicit_decrypt_init(context, doc)
  validate_document(doc)
  データ = doc.to_bson.to_s
  バイナリ.wrap_string(データ) 行う |data_p|
    checkpoint_ctx_status(context) 行う
      mongocrypt_ctx_explit_decrypt_init(context.ctx_p, data_p)
    end
  end
end

.ctx_explicit_encrypt_expression_init(context, doc) ⇒ Object

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

明示的な式の暗号化のためにコンテキストを初期化します。

パラメーター:

  • context Mongo::Crypt::Context
  • doc ハッシュ

    暗号化する BSON ドキュメント

次の値が発生します。



752
753
754
755
756
757
758
759
760
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行752

デフォルト 自己.ctx_explicit_encrypt_expression_init(context, doc)
  validate_document(doc)
  データ = doc.to_bson.to_s
  バイナリ.wrap_string(データ) 行う |data_p|
    checkpoint_ctx_status(context) 行う
      mongocrypt_ctx_explit_encrypt_ Expression_init(context.ctx_p, data_p)
    end
  end
end

.ctx_explicit_encrypt_init(context, doc) ⇒ Object

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

明示的な暗号化のコンテキストを初期化する

パラメーター:

  • context Mongo::Crypt::Context
  • doc ハッシュ

    暗号化する BSON ドキュメント

次の値が発生します。



718
719
720
721
722
723
724
725
726
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行718

デフォルト 自己.ctx_explicit_encrypt_init(context, doc)
  validate_document(doc)
  データ = doc.to_bson.to_s
  バイナリ.wrap_string(データ) 行う |data_p|
    checkpoint_ctx_status(context) 行う
      mongocrypt_ctx_explit_encrypt_init(context.ctx_p, data_p)
    end
  end
end

cx_ finalize (コンテキスト)=オブジェクト

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

コンテキストが表すステートマシンを終了する

パラメーター:

次の値が発生します。



1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1145

デフォルト 自己.cx_ finalize(context)
  バイナリ = バイナリ.新着情報

  checkpoint_ctx_status(context) 行う
    mongocrypt_ctx_ finalize(context.ctx_p, バイナリ.参照)
  end

  # TODO は、バイナリが C ポインターを参照し、バイトバッファが
  MRI の C に書き込まれた#は、次のようにすることでデータのコピーを省略できます:
  バイトバッファは libmongocrypt が所有する string を参照します。
  BSON::ドキュメント.from_bson(BSON::Byteバッファ.新着情報(バイナリ.to_s), モード: :bson)
end

.ctx_kms_done(context) ⇒ Object

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

libmongocrypt がこれ以上の KMS 応答を受信しないことを示します。

パラメーター:

次の値が発生します。



1122
1123
1124
1125
1126
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1122

デフォルト 自己.ctx_kms_done(context)
  checkpoint_ctx_status(context) 行う
    mongocrypt_ctx_ kms_done(context.ctx_p)
  end
end

cx_mongo_feed (context、doc)=オブジェクト

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

ドライバーからの応答をlibmongocryptに渡す

パラメーター:

次の値が発生します。



889
890
891
892
893
894
895
896
897
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行889

デフォルト 自己.cx_mongo_feed(context, doc)
  validate_document(doc)
  データ = doc.to_bson.to_s
  バイナリ.wrap_string(データ) 行う |data_p|
    checkpoint_ctx_status(context) 行う
      mongocrypt_ctx_mongo_feed(context.ctx_p, data_p)
    end
  end
end

.ctx_mongo_op(context) ⇒ BSON::Document

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

暗号化/復号化を続行するために必要な情報を取得するためにドライバーが libmongocrypt に代わって実行する必要がある操作を表す BSON::Document を返します(たとえば、キーヴォールトクエリのフィルター)。

パラメーター:

次の値を返します。

  • BSON::Document

    ドライバーが実行する必要がある操作

次の値が発生します。

  • Mongo::Crypt

    操作の取得エラーが発生した場合



860
861
862
863
864
865
866
867
868
869
870
871
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行860

デフォルト 自己.cx_mongo_op(context)
  バイナリ = バイナリ.新着情報

  checkpoint_ctx_status(context) 行う
    mongocrypt_ctx_mongo_op(context.ctx_p, バイナリ.参照)
  end

  # TODO は、バイナリが C ポインターを参照し、バイトバッファが
  MRI の C に書き込まれた#は、次のようにすることでデータのコピーを省略できます:
  バイトバッファは libmongocrypt が所有する string を参照します。
  BSON::ドキュメント.from_bson(BSON::Byteバッファ.新着情報(バイナリ.to_s), モード: :bson)
end

.ctx_next_kms_ctx(context) ⇒ Mongo::Crypt::KmsContext | nil

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

Context オブジェクトに必要な新しい KmsContext オブジェクトを返します。

パラメーター:

次の値を返します。

  • (Mongo::Crypt::KmsContext | nil)

    KmsContext が必要ない場合は、 Amazon Web Servicesのマスターキーまたは nil を取得するために必要な KmsContext



921
922
923
924
925
926
927
928
929
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行921

デフォルト 自己.ctx_next_kms_ctx(context)
  kms_ctx_p = mongocrypt_ctx_next_kms_ctx(context.ctx_p)

  場合 kms_ctx_p.null?
    nil
  else
    KmsContext.新着情報(kms_ctx_p)
  end
end

cx_provide_ kms_providers (コンテキスト、 kms_providers) =オブジェクト

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

MONGOCRYPT_CTX_Atlas 状態に応答して を呼び出し、コンテキストごとの KMS プロバイダー設定を設定します。 これらは "mongocrypt_setup_ kms_providers" と同じ形式に従います。 BSON 入力にキーが存在しない場合は、初期化時に mongocrypt_t に対して構成された KMS プロバイダー設定が使用されます。

パラメーター:

  • context Mongo::Crypt::Context

    暗号化コンテキスト。

  • kms_providers BSON::Document

    KMS プロバイダー名を認証情報にマッピングする BSON ドキュメント。

次の値が発生します。



1623
1624
1625
1626
1627
1628
1629
1630
1631
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1623

デフォルト 自己.cx_provide_ kms_providers(context, kms_providers)
  validate_document(kms_providers)
  データ = kms_providers.to_bson.to_s
  バイナリ.wrap_string(データ) 行う |data_p|
    checkpoint_ctx_status(context) 行う
      mongocrypt_ctx_provide_ kms_providers(context.ctx_p, data_p)
    end
  end
end

cx_rawap_many_datakey_init (コンテキスト、フィルター)=ブール値

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

データキーをリラップするには、コンテキストを初期化します。

パラメーター:

  • context Mongo::Crypt::Context
  • フィルター BSON::Document

    リラップするデータキーを検索するためにキーヴォールト コレクションの find コマンドに使用するフィルターを表す BSON ドキュメント 。

次の値を返します。

  • ブール値

    初期化が成功したかどうか。



648
649
650
651
652
653
654
655
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行648

デフォルト 自己.ctx_rewrap_many_datakey_init(context, フィルター)
  [filter_data] = フィルター.to_bson.to_s
  バイナリ.wrap_string([filter_data]) 行う |data_p|
    checkpoint_ctx_status(context) 行う
      mongocrypt_ctx_rewrap_many_datakey_init(context.ctx_p, data_p)
    end
  end
end

cx_set_algorithm (コンテキスト、名前)=オブジェクト

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

コンテキストにアルゴリズムを設定する

パラメーター:

  • context Mongo::Crypt::Context
  • name ( string )

    The algorithm name. 有効な値は以下のとおりです。

    • AEAD_AES_ 256 _CBC_HMAC_SHA_ 512 -確定的

    • AEAD_AES_ 256 _CBC_HMAC_SHA_ 512 -ランダム

次の値が発生します。



561
562
563
564
565
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行561

デフォルト 自己.cx_set_algorithm(context, name)
  checkpoint_ctx_status(context) 行う
    mongocrypt_ctx_set_algorithm(context.ctx_p, name, -1)
  end
end

cx_setup_algorithm_range (コンテキスト、opts) =オブジェクト

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

注:

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

rangePreview アルゴリズムを使用して明示的な暗号化のオプションを設定します。

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

パラメーター:

次の値が発生します。



1730
1731
1732
1733
1734
1735
1736
1737
1738
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1730

デフォルト 自己.ctx_setopt_algorithm_range(context, ops)
  validate_document(ops)
  データ = ops.to_bson.to_s
  バイナリ.wrap_string(データ) 行う |data_p|
    checkpoint_ctx_status(context) 行う
      mongocrypt_ctx_set_algorithm_range(context.ctx_p, data_p)
    end
  end
end

cx_set_contention_factor (コンテキスト、係数)=オブジェクト

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

明示的な暗号化に使用される競合係数を設定します。 競合係数は、インデックス付きの FLE 2暗号化にのみ使用されます。

パラメーター:

  • context Mongo::Crypt::Context

    明示的な暗号化コンテキスト。

  • 係数 (整数)

    明示的な暗号化に使用されるコンテンツ係数。

次の値が発生します。



1693
1694
1695
1696
1697
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1693

デフォルト 自己.cx_set_contention_factor(context, 係数)
  checkpoint_ctx_status(context) 行う
    mongocrypt_ctx_set_contention_factor(context.ctx_p, 係数)
  end
end

cx_set_key_alt_names (コンテキスト、key_alt_names)=オブジェクト

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

データキーの作成時に複数の代替キー名を設定する

パラメーター:

  • context Mongo::Crypt::Context

    DataKeyContext

  • key_alt_names 配列

    文字列としての代替キー名の配列

次の値が発生します。



492
493
494
495
496
497
498
499
500
501
502
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行492

デフォルト 自己.cx_set_key_alt_names(context, key_alt_names)
  key_alt_names. 行う |key_alt_name|
    key_alt_name_bson = { :keyAltName => key_alt_name }.to_bson.to_s

    バイナリ.wrap_string(key_alt_name_bson) 行う |key_alt_name_p|
      checkpoint_ctx_status(context) 行う
        mongocrypt_ctx_set_key_alt_name(context.ctx_p, key_alt_name_p)
      end
    end
  end
end

cx_set_key_encryption_key (コンテキスト、キー_ドキュメント)=オブジェクト

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

データキーを作成するためのキー暗号化キー ドキュメントを設定します。

パラメーター:

  • context Mongo::Crypt::Context
  • key_document BSON::Document

    追加のプロバイダー フィールドを持つキー暗号化キー ドキュメントを表す BSON ドキュメント。

次の値が発生します。



590
591
592
593
594
595
596
597
598
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行590

デフォルト 自己.cx_set_key_encryption_key(context, key_document)
  validate_document(key_document)
  データ = key_document.to_bson.to_s
  バイナリ.wrap_string(データ) 行う |data_p|
    checkpoint_ctx_status(context) 行う
      mongocrypt_ctx_set_key_encryption_key(context.ctx_p, data_p)
    end
  end
end

.ctx_setopt_key_id(context, key_id) ⇒ Object

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

明示的な暗号化コンテキストにキー ID オプションを設定します。

パラメーター:

  • context Mongo::Crypt::Context

    明示的な暗号化コンテキスト

  • key_id ( string )

    キー ID

次の値が発生します。



459
460
461
462
463
464
465
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行459

デフォルト 自己.ctx_setopt_key_id(context, key_id)
  バイナリ.wrap_string(key_id) 行う |key_id_p|
    checkpoint_ctx_status(context) 行う
      mongocrypt_ctx_set_key_id(context.ctx_p, key_id_p)
    end
  end
end

cx_set_key_rate (コンテキスト、key_rate)=オブジェクト

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

に使用するカスタム キー マテリアルを設定する

encrypting data.

パラメーター:

  • context Mongo::Crypt::Context

    DataKeyContext

  • key_rate BSON ::Binary

    カスタムキーマテリアルの96バイト

次の値が発生します。



527
528
529
530
531
532
533
534
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行527

デフォルト 自己.cx_set_key_rate(context, key_rate)
  データ = {' keytext ' => key_rate}.to_bson.to_s
  バイナリ.wrap_string(データ) 行う |data_p|
    checkpoint_ctx_status(context) 行う
      mongocrypt_ctx_set_key_rate(context.ctx_p, data_p)
    end
  end
end

cx_set_query_type (context, query_type) =オブジェクト

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

FLE 2明示的暗号化に使用するクエリタイプを設定します。 クエリタイプは、インデックス付きFLE 2暗号化にのみ使用されます。

パラメーター:

  • context Mongo::Crypt::Context

    明示的な暗号化コンテキスト。

  • :mongocrypt_query_type ( string )

    query_type クエリのタイプ。

次の値が発生します。



1661
1662
1663
1664
1665
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1661

デフォルト 自己.cx_set_query_type(context, query_type)
  checkpoint_ctx_status(context) 行う
    mongocrypt_ctx_set_query_type(context.ctx_p, query_type, -1)
  end
end

初期化(handle)=オブジェクト

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

Mongo::Crypt::Handle オブジェクトを初期化

パラメーター:

次の値が発生します。



399
400
401
402
403
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行399

デフォルト 自己.init(ハンドル)
  check_status(ハンドル) 行う
    mongocrypt_init(ハンドル.参照)
  end
end

kms_ctx_bytes_needed ( kms_context) =整数

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

KmsContext に必要なバイト数を取得します。

パラメーター:

次の値を返します。

  • (整数)

    必要なバイト数



1055
1056
1057
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1055

デフォルト 自己.kms_ctx_bytes_needed(kms_context)
  mongocrypt_ kms_ctx_bytes_needed(kms_context.kms_ctx_p)
end

.kms_ctx_endpoint(kms_context) ⇒ String | nil

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

TLS 経由で接続し、 Amazon Web Servicesのマスターキーに関する情報を取得するホスト名を取得します。

パラメーター:

次の値を返します。

  • ( string | nil )

    ホスト名、または存在しない場合は nil

次の値が発生します。



1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1031

デフォルト 自己.kms_ctx_endpoint(kms_context)
  ptr = FFI::MemoryPointer.新着情報(:pointer, 1)

  check_kms_ctx_status(kms_context) 行う
    mongocrypt_ kms_ctx_endpoint(kms_context.kms_ctx_p, ptr)
  end

  str_ptr = ptr.read_pointer
  str_ptr.null? ? nil : str_ptr.read_string.force_encoding('UTF-8')
end

kms_ctx_feedkms_context , バイト)==============================

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

フィードは KMS から libmongocrypt に戻ります。

パラメーター:

次の値が発生します。



1075
1076
1077
1078
1079
1080
1081
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1075

デフォルト 自己.kms_ctx_feed(kms_context, バイト)
  check_kms_ctx_status(kms_context) 行う
    バイナリ.wrap_string(バイト) 行う |bytes_p|
      mongocrypt_ kms_ctx_feed(kms_context.kms_ctx_p, bytes_p)
    end
  end
end

kms_ctx_get_ kms_provider ( kms_context) =オブジェクト

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

この KMS リクエストに関連付けられている KMS プロバイダー識別子を取得します。

これは、KMS リクエストに基づいて TLS 接続を条件付きで構成するために使用されます。 これは、クライアント証明書を使用して認証する KMIP に役立ちます。

パラメーター:

  • KMS FFI ::Pointer

    ポインター mongocrypt_ kms_ctx_t オブジェクト。



962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行962

デフォルト 自己.kms_ctx_get_ kms_provider(kms_context)
  len_ptr = FFI::MemoryPointer.新着情報(:uint32, 1)
  プロバイダー = mongocrypt_ kms_ctx_get_ kms_provider(
    kms_context.kms_ctx_p,
    len_ptr
  )
  場合 len_ptr.nil?
    nil
  else
    len = 場合 BSON::environment.jruby?
      #JRuby FFI の実装には `read(type)` メソッドはありませんが、
      この `get_uint 32 ` が含まれています。
      len_ptr.get_uint32
    else
      #MRI には、文書化された `read` メソッドを使用します - https://www.rubydoc.info/github/ffi/ffi/FFI% 2 FPointer:read
      len_ptr.読み取り(:uint32)
    end
    プロバイダー.read_string(len).to_sym
  end
end

.kms_ctx_message(kms_context) ⇒ String

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

KmsContext オブジェクトから マスター HTTPキーを取得するために必要な メッセージを取得します。Amazon Web ServicesKMS

パラメーター:

次の値を返します。

  • ( string )

    The HTTP message

次の値が発生します。



1002
1003
1004
1005
1006
1007
1008
1009
1010
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1002

デフォルト 自己.kms_ctx_message(kms_context)
  バイナリ = バイナリ.新着情報

  check_kms_ctx_status(kms_context) 行う
    mongocrypt_ kms_ctx_message(kms_context.kms_ctx_p, バイナリ.参照)
  end

  return バイナリ.to_s
end

mongocrypt_binary_data (バイナリ) → FFI::Pointer

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

mongocrypt_binary_t の基礎となるデータへのポインターを取得します。

パラメーター:

  • バイナリ FFI ::Pointer

    mongocrypt_binary_t オブジェクトへのポインター。

次の値を返します。

  • FFI ::Pointer

    データ配列へのポインター。



171
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行171

accumulate_function :mongocrypt_binary_data, [:pointer], :pointer

mongocrypt_binary_detry (バイナリ)= nil

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

mongocrypt_binary_t オブジェクトを破棄します。

パラメーター:

  • バイナリ FFI ::Pointer

    mongocrypt_binary_t オブジェクトへのポインター。

次の値を返します。

  • (nil)

    常に nil です。



187
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行187

accumulate_function :mongocrypt_binary_detry, [:pointer], :void

mongocrypt_binary_en (バイナリ) =整数

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

基礎となるデータ配列の長さを取得します。

パラメーター:

  • バイナリ FFI ::Pointer

    mongocrypt_binary_t オブジェクトへのポインター。

次の値を返します。

  • (整数)

    データ配列の長さ。



179
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行179

accumulate_function :mongocrypt_binary_en, [:pointer], :int

mongocrypt_binary_newFFI::Pointer

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

新しい mongocrypt_binary_t オブジェクト(バイトの非所有ビュー)を作成します

array).

次の値を返します。

  • FFI ::Pointer

    新しく作成された mongocrypt_binary_t オブジェクトへのポインター。



147
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行147

accumulate_function :mongocrypt_binary_new, [], :pointer

mongocrypt_binary_new_from_data (data, lan) = FFI::Pointer

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

へのポインターを保持する新しい mongocrypt_binary_t オブジェクトを作成します

the specified byte array.

パラメーター:

  • データ FFI ::Pointer

    バイトの配列へのポインター。データはコピーされず、 mongocrypt_binary_t オブジェクトよりも優先されます。

  • len (整数)

    配列引数の長さ。

次の値を返します。

  • FFI ::Pointer

    新しく作成された mongocrypt_binary_t オブジェクトへのポインター。



159
160
161
162
163
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行159

accumulate_function(
  :mongocrypt_binary_new_from_data,
  [:pointer, :int],
  :pointer
)

mongocrypt_crypt_shared_lib_version (crypt) =オブジェクト

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



1528
1529
1530
1531
1532
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1528

accumulate_function(
  :mongocrypt_crypt_shared_lib_version,
  [ :pointer ],
  :uint64
)

mongocrypt_ctx_datakey_init (ctx、フィルター)=オブジェクト

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



610
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行610

accumulate_function :mongocrypt_ctx_datakey_init, [:pointer], :bool

.mongocrypt_ctx_decrypt_init(ctx, doc) ⇒ Boolean

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

自動復号化用にctxを初期化します。

パラメーター:

  • ctx FFI ::Pointer

    mongocrypt_ctx_t オブジェクトへのポインター。

  • doc FFI ::Pointer

    BSON バイナリ string として復号化するドキュメントを参照する mongocrypt_binary_t オブジェクトへのポインター。

次の値を返します。

  • ブール値

    初期化が成功したかどうか。



770
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行770

accumulate_function :mongocrypt_ctx_decrypt_init, [:pointer, :pointer], :bool

mongocrypt_ctx_detry (ctx) = nil

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

mongocrypt_ctx_t オブジェクトへの参照を破棄します。

パラメーター:

  • ctx FFI ::Pointer

    mongocrypt_ctx_t オブジェクトへのポインター。

次の値を返します。

  • (nil)

    常に nil です。



1164
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1164

accumulate_function :mongocrypt_ctx_detry, [:pointer], :void

.mongocrypt_ctx_encrypt_init(ctx, db, db_len, cmd) ⇒ Boolean

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

注:

このメソッドでは、渡される BSON が { v : 復号化するための BSON 値 } であることが想定されています。

自動暗号化の ctx を初期化します。

パラメーター:

  • ctx FFI ::Pointer

    mongocrypt_ctx_t オブジェクトへのポインター。

  • db ( string )

    データベース名。

  • db_len (整数)

    データベース名引数の長さ(または null で終了する string の場合は - 1 )。

  • cmd FFI ::Pointer

    データベースコマンド を バイナリstringとして参照する mongocrypt_binary_t オブジェクトへのポインター。

次の値を返します。

  • ブール値

    初期化が成功したかどうか。



670
671
672
673
674
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行670

accumulate_function(
  :mongocrypt_ctx_encrypt_init,
  [:pointer, :string, :int, :pointer],
  :bool
)

.mongocrypt_ctx_explicit_decrypt_init(ctx, msg) ⇒ Boolean

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

明示的な復号化のためにctx を初期化します。

パラメーター:

  • ctx FFI ::Pointer

    mongocrypt_ctx_t オブジェクトへのポインター。

  • msg FFI ::Pointer

    BSON バイナリ string として復号化するメッセージを参照する mongocrypt_binary_t オブジェクトへのポインター。

次の値を返します。

  • ブール値

    初期化が成功したかどうか。



796
797
798
799
800
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行796

accumulate_function(
  :mongocrypt_ctx_explit_decrypt_init,
  [:pointer, :pointer],
  :bool
)

.mongocrypt_ctx_explicit_encrypt_init(ctx, msg) ⇒ Boolean

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

注:

このメソッドを呼び出す前に、次のメソッドを使用して、key_id、key_alt_name(任意)、および暗号化アルゴリズムを設定します。mongocrypt_ctx_setopt_key_id、mongocrypt_ctx_setkey_alt_name、mongocrypt_ctx_set_algorithm 。

明示的な式の暗号化のために ctx を初期化します。

パラメーター:

  • ctx FFI ::Pointer

    mongocrypt_ctx_t オブジェクトへのポインター。

  • msg FFI ::Pointer

    暗号化するメッセージをバイナリ string として参照する mongocrypt_binary_t オブジェクトへのポインター。

次の値を返します。

  • ブール値

    初期化が成功したかどうか。



706
707
708
709
710
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行706

accumulate_function(
  :mongocrypt_ctx_explit_encrypt_init,
  [:pointer, :pointer],
  :bool
)

mongocrypt_ctx_ finalize (ctx, op_bson) =ブール値

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

最後の暗号化または復号化を実行し、BSON ドキュメントを返します。

パラメーター:

  • ctx FFI ::Pointer

    mongocrypt_ctx_t オブジェクトへのポインター。

  • op_bson FFI ::Pointer

    (アウト パラメーター)最終的に暗号化された BSON ドキュメントへの参照を持つ mongocrypt_binary_t オブジェクトへのポインター。

次の値を返します。

  • ブール値

    操作の成功を示すブール値。



1137
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1137

accumulate_function :mongocrypt_ctx_ finalize, [:pointer, :pointer], :void

.mongocrypt_ctx_mongo_done(ctx) ⇒ Boolean

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

libmongocrypt に、ドライバーが応答を送信したことを示します。

パラメーター:

  • ctx FFI ::Pointer

    mongocrypt_ctx_t オブジェクトへのポインター。

次の値を返します。

  • ブール値

    操作の成功を示すブール値。



905
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行905

accumulate_function :mongocrypt_ctx_mongo_done, [:pointer], :bool

mongocrypt_ctx_mongo_feed (ctx, 応答)=ブール値

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

libmongocrypt に BSON 応答を入力します。

パラメーター:

  • ctx FFI ::Pointer

    mongocrypt_ctx_t オブジェクトへのポインター。

  • 応答 FFI ::Pointer

    libmongocrypt にフィードする BSON 応答を参照する mongocrypt_binary_t オブジェクト。

次の値を返します。

  • ブール値

    操作の成功を示すブール値。



881
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行881

accumulate_function :mongocrypt_ctx_mongo_feed, [:pointer, :pointer], :bool

mongocrypt_ctx_mongo_next_ kms_ctx (ctx) = FFI::Pointer

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

mongocrypt_ kms_ctx_t オブジェクトまたは NULL へのポインターを返します。

パラメーター:

  • ctx FFI ::Pointer

    mongocrypt_ctx_t オブジェクトへのポインター。

次の値を返します。

  • FFI ::Pointer

    mongocrypt_ kms_ctx_t オブジェクトへのポインター。



913
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行913

accumulate_function :mongocrypt_ctx_next_kms_ctx, [:pointer], :pointer

mongocrypt_ctx_mongo_op (ctx, op_bson) =ブール値

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

MongoDB に対して実行するドライバーの BSON 操作を取得する

collection, the key vault database, or mongocryptd.

パラメーター:

  • ctx FFI ::Pointer

    mongocrypt_ctx_t オブジェクトへのポインター。

  • op_bson FFI ::Pointer

    (アウト パラメーター)libmongocrypt によって書き込まれた BSON 操作への参照を持つ mongocrypt_binary_t オブジェクトへのポインター。

次の値を返します。

  • ブール値

    操作の成功を示すブール値。



849
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行849

accumulate_function :mongocrypt_ctx_mongo_op, [:pointer, :pointer], :bool

mongocrypt_ctx_new (暗号化) → FFI::Pointer

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

新しい mongocrypt_ctx_t オブジェクト(libmongocrypt のラッパー)を作成します

state machine).

パラメーター:

  • 暗号化 FFI ::Pointer

    mongocrypt_t オブジェクトへのポインター。

次の値を返します。

  • FFI ::Pointer

    新しい mongocrypt_ctx_t オブジェクト。



430
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行430

accumulate_function :mongocrypt_ctx_new, [:pointer], :pointer

mongocrypt_ctx_provide_ kms_providers (ctx、 kms_providers)=オブジェクト

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



1606
1607
1608
1609
1610
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1606

accumulate_function(
  :mongocrypt_ctx_provide_ kms_viders,
  [ :pointer, :pointer ],
  :bool
)

mongocrypt_ctx_set_algorithm (ctx、アルゴリズム、lan) =ブール値

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

注:

このメソッドを呼び出す前に、ctx を初期化しないでください。

明示的な暗号化に使用されるアルゴリズムを設定します。

パラメーター:

  • ctx FFI ::Pointer

    mongocrypt_ctx_t オブジェクトへのポインター。

  • アルゴリズム ( string )

    The algorithm name. 有効な値は以下のとおりです。

    • AEAD_AES_ 256 _CBC_HMAC_SHA_ 512 -確定的

    • AEAD_AES_ 256 _CBC_HMAC_SHA_ 512 -ランダム

  • len (整数)

    アルゴリズムstringの長さ。

次の値を返します。

  • ブール値

    オプションが正常に設定されたかどうか。



547
548
549
550
551
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行547

accumulate_function(
  :mongocrypt_ctx_setup_algorithm,
  [:pointer, :string, :int],
  :bool
)

mongocrypt_ctx_set_algorithm_range (ctx、opts) =オブジェクト

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



1712
1713
1714
1715
1716
1717
1718
1719
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1712

accumulate_function(
  :mongocrypt_ctx_setup_algorithm_range,
  [
    :pointer,
    :pointer
  ],
  :bool
)

mongocrypt_ctx_set_contention_factor (ctx, MongoDB )=オブジェクト

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



1677
1678
1679
1680
1681
1682
1683
1684
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1677

accumulate_function(
  :mongocrypt_ctx_setup_contention_factor,
  [
    :pointer,
    :int 64
  ],
  :bool
)

mongocrypt_ctx_set_key_alt_name (ctx、バイナリ)=ブール値

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

注:

このメソッドを呼び出す前に、ctx を初期化しないでください。

データキーを作成するときは、そのキーに代替名を設定します。 When

performing explicit encryption, specifying which data key to use for
encryption based on its keyAltName field.

パラメーター:

  • ctx FFI ::Pointer

    mongocrypt_ctx_t オブジェクトへのポインター。

  • バイナリ FFI ::Pointer

    { keyAltName}: <BSON UTF 8値> } 形式の BSON ドキュメントを参照する mongocrypt_binary_t オブジェクトへのポインター。

次の値を返します。

  • ブール値

    別名が正常に設定されたかどうか。



479
480
481
482
483
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行479

accumulate_function(
  :mongocrypt_ctx_setup_key_alt_name,
  [:pointer, :pointer],
  :bool
)

mongocrypt_ctx_sett_key_encryption_key (ctx)=ブール値

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

注:

このメソッドを呼び出す前に、ctx を初期化しないでください。

データキーを作成するためのキー暗号化キー ドキュメントを設定します。

パラメーター:

  • ctx FFI ::Pointer

    mongocrypt_ctx_t オブジェクトへのポインター。

  • bin FFI ::Pointer

    追加のプロバイダー フィールドを持つキー暗号化キー ドキュメントを表す BSON ドキュメントを参照する mongocrypt_binary_t オブジェクトへのポインター。

次の値を返します。

  • ブール値

    オプションが正常に設定されたかどうか。



577
578
579
580
581
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行577

accumulate_function(
  :mongocrypt_ctx_sett_key_encryption_key,
  [:pointer, :pointer],
  :bool
)

.mongocrypt_ctx_setopt_key_id(ctx, key_id) ⇒ Boolean

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

注:

このメソッドを呼び出す前に、ctx を初期化しないでください。

明示的な暗号化に使用されるキー ID を設定します。

パラメーター:

  • ctx FFI ::Pointer

    mongocrypt_ctx_t オブジェクトへのポインター。

  • key_id FFI ::Pointer

    16バイトのキー ID を参照する mongocrypt_binary_t オブジェクトへのポインター。

次の値を返します。

  • ブール値

    オプションが正常に設定されたかどうか。



451
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行451

accumulate_function :mongocrypt_ctx_setup_key_id, [:pointer, :pointer], :bool

mongocrypt_ctx_set_key_rate (ctx、バイナリ)=ブール値

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

注:

このメソッドを呼び出す前に、ctx を初期化しないでください。

データキーの作成時に、使用するカスタム キーマテリアル を設定します

encrypting data.

パラメーター:

  • ctx FFI ::Pointer

    mongocrypt_ctx_t オブジェクトへのポインター。

  • バイナリ FFI ::Pointer

    使用するデータ暗号化キーを参照する mongocrypt_binary_t オブジェクトへのポインター。

次の値を返します。

  • ブール値

    カスタム キーマテリアルが正常に設定されたかどうか。



514
515
516
517
518
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行514

accumulate_function(
  :mongocrypt_ctx_setup_key_rate,
  [:pointer, :pointer],
  :bool
)

mongocrypt_ctx_set_query_type (ctx、mongocrypt_query_type)=オブジェクト

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



1644
1645
1646
1647
1648
1649
1650
1651
1652
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1644

accumulate_function(
  :mongocrypt_ctx_set_query_type,
  [
    :pointer,
    :string,
    :int
  ],
  :bool
)

mongocrypt_ctx_ State (ctx) =シンボル

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

cstring の現在の状態を取得します。

パラメーター:

  • ctx FFI ::Pointer

    mongocrypt_ctx_t オブジェクトへのポインター。

次の値を返します。

  • シンボル

    現在の状態は、 mongocrypt_ctx_rate 列挙型で定義されている値の 1 つになります。



837
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行837

accumulate_function :mongocrypt_ctx_ State, [:pointer], :mongocrypt_ctx_ State

mongocrypt_ctx_status (ctx,status)=ブール値

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

で mongocrypt_ctx_t オブジェクトからのステータス情報を設定する

mongocrypt_status_t object.

パラメーター:

  • ctx FFI ::Pointer

    mongocrypt_ctx_t オブジェクトへのポインター。

  • 状態 FFI ::Pointer

    mongocrypt_status_t オブジェクトへのポインター。

次の値を返します。

  • ブール値

    ステータスが正常に設定されたかどうか。



440
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行440

accumulate_function :mongocrypt_ctx_status, [:pointer, :pointer], :bool

mongocrypt_detroy (暗号化) = nil

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

mongocrypt_t オブジェクトの参照を破棄します。

パラメーター:

  • 暗号化 FFI ::Pointer

    mongocrypt_t オブジェクトへのポインター。

次の値を返します。

  • (nil)

    常に nil です。



421
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行421

accumulate_function :mongocrypt_detry, [:pointer], :void

mongocrypt_init (crypt) =ブール値

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

mongocrypt_t オブジェクトを初期化します。

パラメーター:

  • 暗号化 FFI ::Pointer

    mongocrypt_t オブジェクトへのポインター。

次の値を返します。

  • ブール値

    暗号化が正常に初期化されたかどうかを返します。



392
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行392

accumulate_function :mongocrypt_init, [:pointer], :bool

mongocrypt_ kms_ctx_bytes_needed ( KMS ) =整数

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

KMS コンテキストに必要なバイト数を取得します。

パラメーター:

  • KMS FFI ::Pointer

    mongocrypt_ kms_ctx_t オブジェクト。

次の値を返します。

  • (整数)

    必要なバイト数。



1048
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1048

accumulate_function :mongocrypt_ kms_ctx_bytes_needed, [:pointer], :int

.mongocrypt_kms_ctx_done(ctx) ⇒ Boolean

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

libmongocrypt がからの応答をこれ以上受信しないことを示します

mongocrypt_kms_ctx_t objects.

パラメーター:

  • ctx FFI ::Pointer

    mongocrypt_ctx_t オブジェクトへのポインター。

次の値を返します。

  • ブール値

    操作が成功したかどうか。



1115
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1115

accumulate_function :mongocrypt_ctx_ kms_done, [:pointer], :bool

mongocrypt_ kms_ctx_endpoint ( KMS 、 エンドポイント) =ブール値

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

TLS 経由で接続し次の情報を取得するホスト名を取得します。

the AWS master key.

パラメーター:

  • KMS FFI ::Pointer

    mongocrypt_ kms_ctx_t オブジェクトへのポインター。

  • エンドポイント FFI ::Pointer

    (アウト パラメーター)libmongocrypt によってエンドポイント string が書き込まれるポインター。

次の値を返します。

  • ブール値

    操作が成功したかどうか。



1021
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1021

accumulate_function :mongocrypt_ kms_ctx_endpoint, [:pointer, :pointer], :bool

mongocrypt_ kms_ctx_feed ( KMS , バイト) =ブール値

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

フィードは KMS から libmongocrypt に戻ります。

パラメーター:

  • KMS FFI ::Pointer

    mongocrypt_ kms_ctx_t オブジェクトへのポインター。

  • バイト FFI ::Pointer

    KMS からの応答を参照する mongocrypt_binary_t オブジェクトへのポインター。

次の値を返します。

  • ブール値

    操作が成功したかどうか。



1067
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1067

accumulate_function :mongocrypt_ kms_ctx_feed, [:pointer, :pointer], :bool

mongocrypt_ kms_ctx_get_ kms_provider (暗号化、 kms_providers) =オブジェクト

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



947
948
949
950
951
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行947

accumulate_function(
  :mongocrypt_ kms_ctx_get_ kms_provider,
  [:pointer, :pointer],
  :pointer
)

mongocrypt_ kms_ctx_message ( KMS , ミリ秒) =ブール値

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

Amazon Web Services KMSマスターキーを取得するために必要なメッセージを取得します。

パラメーター:

  • KMS FFI ::Pointer

    mongocrypt_ kms_ctx_t オブジェクトへのポインター

  • msg FFI ::Pointer

    (out param) libmongocrypt によって書き込まれたメッセージの場所を持つ mongocrypt_binary_t オブジェクトへのポインター。

次の値を返します。

  • ブール値

    操作が成功したかどうか。



992
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行992

accumulate_function :mongocrypt_ kms_ctx_message, [:pointer, :pointer], :bool

mongocrypt_ kms_ctx_status ( KMS 、ステータス) =ブール値

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

mongocrypt_ kms_ctx_t オブジェクトに関するステータス情報の書込み (write)

to the mongocrypt_status_t object.

パラメーター:

  • KMS FFI ::Pointer

    mongocrypt_ kms_ctx_t オブジェクトへのポインター。

  • 状態 FFI ::Pointer

    mongocrypt_status_t オブジェクトへのポインター。

次の値を返します。

  • ブール値

    操作が成功したかどうか。



1091
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1091

accumulate_function :mongocrypt_ kms_ctx_status, [:pointer, :pointer], :bool

mongocrypt_set_aas_ 256 _ctr (crypt, aes_ 256 _ctr_encrypt, aes_ 256 _ctr_decrypt, ctx) =ブール値

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

AES 256 -CTR 操作の暗号化フックを設定します。

パラメーター:

  • 暗号化 FFI ::Pointer

    mongocrypt_t オブジェクトへのポインター。

  • aes_enc_fn Proc

    AES-CTR 暗号化方式。

  • aes_dec_fn Proc

    AES-CTR 復号化メソッド。

  • ctx FFI::Pointer | nil

    フックが有効になっているときに設定された可能性があるコンテキスト オブジェクトへの任意のポインター。

次の値を返します。

  • ブール値

    このオプションの設定が成功したかどうか。



1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1423

accumulate_function(
  :mongocrypt_setopt_aes_256_ctr,
  [
    :pointer,
    :mongocrypt_crypto_fn,
    :mongocrypt_crypto_fn,
    :pointer
  ],
  :bool
)

mongocrypt_set_append_crypt_shared_lib_search_path (暗号化、パス) =======================================

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



1461
1462
1463
1464
1465
1466
1467
1468
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1461

accumulate_function(
  :mongocrypt_set_append_crypt_shared_lib_search_path,
  [
    :pointer,
    :string,
  ],
  :void
)

mongocrypt_set_bypass_query_analysis (crypt) =オブジェクト

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



1399
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1399

accumulate_function(:mongocrypt_set_bypass_query_analysis, [:pointer], :void)

mongocrypt_set_crypto_hook_sign_rsas_pkcs 1 _v 1 _ 5 (crypt, Sign_rsads_pkcs 1 _v 1 _ 5 , ctx = nil) =ブール値

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

SHA- 256ハッシュを使用して、RSASA-PKCS 1 -v 1 _ 5アルゴリズムの暗号化フックを設定します。

パラメーター:

  • 暗号化 FFI ::Pointer

    mongocrypt_t オブジェクトへのポインター。

  • sign_rsaes_pkcs1_v1_5 Proc

    RSA-PKCS 1 -v 1 _ 5署名メソッド。

  • ctx FFI::Pointer | nil (デフォルトはnil

    フックが有効になっているときに設定された可能性があるコンテキスト オブジェクトへの任意のポインター。

次の値を返します。

  • ブール値

    このオプションの設定が成功したかどうか。



1316
1317
1318
1319
1320
1321
1322
1323
1324
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1316

accumulate_function(
  :mongocrypt_set_crypto_hook_sign_rsas_pkcs 1 _v 1 _ 5,
  [
    :pointer,
    :mongocrypt_hmac_fn,
    :pointer
  ],
  :bool
)

.mongocrypt_setopt_crypto_hooks(crypt, aes_enc_fn, aes_dec_fn, random_fn, sha_512_fn, sha_256_fn, hash_fn, ctx = nil) ⇒ Boolean

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

提供された mongocrypt オブジェクトに暗号化フックを設定します。

パラメーター:

  • 暗号化 FFI ::Pointer

    mongocrypt_t オブジェクトへのポインター。

  • aes_enc_fn Proc

    AES 暗号化方式。

  • aes_dec_fn Proc

    AES 復号化メソッド。

  • random_fn Proc

    ランダムなメソッド。

  • sha_512_fn Proc

    HMAC SHA- 512メソッド。

  • sha_256_fn Proc

    HMAC SHA- 256メソッド。

  • hash_fn Proc

    SHA- 256ハッシュ メソッド。

  • ctx FFI::Pointer | nil (デフォルトはnil

    フックが有効になっているときに設定された可能性があるコンテキスト オブジェクトへの任意のポインター。

次の値を返します。

  • ブール値

    このオプションの設定が成功したかどうか。



1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1269

accumulate_function(
  :mongocrypt_set_crypto_hooks,
  [
    :pointer,
    :mongocrypt_crypto_fn,
    :mongocrypt_crypto_fn,
    :mongocrypt_random_fn,
    :mongocrypt_hmac_fn,
    :mongocrypt_hmac_fn,
    :mongocrypt_hash_fn,
    :pointer
  ],
  :bool
)

mongocrypt_set_encrypted_field_config_map (暗号化、efc_map)=オブジェクト

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



1358
1359
1360
1361
1362
1363
1364
1365
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1358

accumulate_function(
  :mongocrypt_set_encrypted_field_config_map,
  [
    :pointer,
    :pointer
  ],
  :bool
)

mongocrypt_set_ kms_providers (暗号化、 kms_providers) =オブジェクト

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

注:

このメソッドを呼び出す前に、ctx を初期化しないでください。

BSON ドキュメントを使用して KMS プロバイダーを構成します。

パラメーター:

  • 暗号化 FFI ::Pointer

    mongocrypt_t オブジェクトへのポインター。

  • kms_providers FFI ::Pointer

    KMS プロバイダー名を認証情報にマッピングする BSON ドキュメントを参照する mongocrypt_binary_t オブジェクトへのポインター。



336
337
338
339
340
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行336

accumulate_function(
  :mongocrypt_set_ kms_providers,
  [:pointer, :pointer],
  :bool
)

mongocrypt_set_log_handler (crypt, log_fn, log_ctx = nil) =ブール値

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

毎回呼び出されるように mongocrypt_t オブジェクトのハンドラーを設定します

libmongocrypt logs a message.

パラメーター:

  • 暗号化 FFI ::Pointer

    mongocrypt_t オブジェクトへのポインター。

  • log_fn メソッド

    ログ記録コールバック メソッド。

  • log_ctx FFI::Pointer | nil (デフォルトはnil

    すべての呼び出しでログ コールバックに渡されるコンテキストへの任意のポインター。

次の値を返します。

  • ブール値

    コールバックの設定が成功したかどうか。



307
308
309
310
311
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行307

accumulate_function(
  :mongocrypt_set_log_handler,
  [:pointer, :mongocrypt_log_fn_t, :pointer],
  :bool
)

mongocrypt_set_schema_map (暗号化、schema_map)=ブール値

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

暗号化用のローカル スキーマ マップを設定します。

パラメーター:

  • 暗号化 FFI ::Pointer

    mongocrypt_t オブジェクトへのポインター。

  • schema_map FFI ::Pointer

    mongocrypt_binary_t へのポインター。スキーマ マップを BSON バイナリ string として参照するオブジェクト。

次の値を返します。

  • ブール値

    オプションが正常に設定されたかどうかを返します。



367
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行367

accumulate_function :mongocrypt_set_schema_map, [:pointer, :pointer], :bool

mongocrypt_set_set_crypt_shared_lib_path_overwrite (暗号化、パス) ==============================

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



1490
1491
1492
1493
1494
1495
1496
1497
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1490

accumulate_function(
  :mongocrypt_set_set_crypt_shared_lib_path_overwrite,
  [
    :pointer,
    :string,
  ],
  :void
)

mongocrypt_set_use_need_ kms_credentials_ State (暗号化) =オブジェクト

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



1569
1570
1571
1572
1573
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1569

accumulate_function(
  :mongocrypt_set_use_need_ kms_credentials_rate,
  [ :pointer ],
  :void
)

mongocrypt_status (暗号化、ステータス)=ブール値

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

で mongocrypt_t オブジェクトからのステータス情報を設定する

mongocrypt_status_t object.

パラメーター:

  • 暗号化 FFI ::Pointer

    mongocrypt_t オブジェクトへのポインター。

  • 状態 FFI ::Pointer

    mongocrypt_status_t オブジェクトへのポインター。

次の値を返します。

  • ブール値

    ステータスが正常に設定されたかどうか。



413
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行413

accumulate_function :mongocrypt_status, [:pointer, :pointer], :bool

mongocrypt_status_code (ステータス)=整数

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

ステータス エラー コードを返します。

パラメーター:

  • 状態 FFI ::Pointer

    mongocrypt_status_t へのポインター。

次の値を返します。

  • (整数)

    ステータス コード。



235
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行235

accumulate_function :mongocrypt_status_code, [:pointer], :int

mongocrypt_status_detroy (ステータス) = nil

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

mongocrypt_status_t オブジェクトへの参照を破棄します。

パラメーター:

  • 状態 FFI ::Pointer

    mongocrypt_status_t へのポインター。

次の値を返します。

  • (nil)

    常に nil です。



261
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行261

accumulate_function :mongocrypt_status_detry, [:pointer], :void

.mongocrypt_status_message(status, len = nil) ⇒ String

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

ステータス メッセージを返します。

パラメーター:

  • 状態 FFI ::Pointer

    mongocrypt_status_t へのポインター。

  • len FFI::Pointer | nil (デフォルトはnil

    (アウト パラメータ) uint32 への任意のポインター。再試行stringの長さが書き込まれます。

次の値を返します。

  • ( string )

    ステータス メッセージ。



245
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行245

accumulate_function :mongocrypt_status_message, [:pointer, :pointer], :string

mongocrypt_status_newFFI::Pointer

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

新しい mongocrypt_status_t オブジェクトを作成します。

次の値を返します。

  • FFI ::Pointer

    新しい mongocrypt_status_ts へのポインター。



201
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行201

accumulate_function :mongocrypt_status_new, [], :pointer

mongocrypt_status_ok (status) =ブール値

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

ステータスが OK かエラーかを返します。

パラメーター:

  • 状態 FFI ::Pointer

    mongocrypt_status_t へのポインター。

次の値を返します。

  • ブール値

    ステータスが OK かどうか。



253
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行253

accumulate_function :mongocrypt_status_ok, [:pointer], :bool

mongocrypt_status_set (status、type、コード、メッセージ、lan) = nil

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

既存のステータスにメッセージ、タイプ、コードを設定します。

パラメーター:

  • 状態 FFI ::Pointer

    mongocrypt_status_t へのポインター。

  • タイプ シンボル

    ステータスの種類。可能な値は、status_type 列挙型によって定義されます。

  • コード (整数)

    ステータス コード。

  • メッセージ ( string )

    ステータス メッセージ。

  • len (整数)

    メッセージ引数の長さ(または null で終了する string の場合は - 1 )。

次の値を返します。

  • (nil)

    常に nil です。



215
216
217
218
219
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行215

accumulate_function(
  :mongocrypt_status_set,
  [:pointer, :status_type, :int, :string, :int],
  :void
)

.mongocrypt_status_type(status) ⇒ Symbol

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

ステータスの種類を示します。

パラメーター:

  • 状態 FFI ::Pointer

    mongocrypt_status_t へのポインター。

次の値を返します。

  • シンボル

    ステータスの型(status_type 列挙型によって定義)。



227
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行227

accumulate_function :mongocrypt_status_type, [:pointer], :status_type

mongocrypt_version (ven) = string

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

libmongocrypt ライブラリのバージョン string を返します。

パラメーター:

  • len FFI::Pointer | nil

    (アウト パラメータ)返される string の長さを参照する単位8への任意のポインター。

次の値を返します。

  • ( string )

    libmongocrypt のバージョン string。



95
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行95

accumulate_function :mongocrypt_version, [:pointer], :string

ongocrypt_newFFI::Pointer

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

新しい mongocrypt_t オブジェクトを作成します。

次の値を返します。

  • FFI ::Pointer

    新しい mongocrypt_t オブジェクトへのポインター。



295
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行295

accumulate_function :mongocrypt_new, [], :pointer

.parse_version(version) ⇒ Gem::Version

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

バージョン番号を表す string が指定された場合、 はそれを Gem::Version オブジェクトに解析します。 これは、いくつかのカスタム解析を実行して、string が Gem::Version でサポートされている形式にない場合を処理します。

パラメーター:

  • バージョン ( string )

    バージョン番号を表す string。

次の値を返します。

  • (Gem::Version)

    のバージョン番号

次の値が発生します。

  • (ArgumentError)

    stringを解析できない場合。



108
109
110
111
112
113
114
115
116
117
118
119
120
121
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行108

デフォルト 自己.parse_version(バージョン)
  Gem::バージョン.新着情報(バージョン)
ヘルプ ArgumentError
  一致 = バージョン.一致(/\A(?<major>\d+)\.(?<minor>\d+)\.(?<patch>\d+)?(-[A-Za-z\+\d]+)?\z/)
  発生 ArgumentError.新着情報("不正なバージョン番号 string #{ version } ") 場合 一致.nil?

  Gem::バージョン.新着情報(
    [
      一致[:major],
      一致[:minor],
      一致[:patch]
    ].join('.')
  )
end

setopt_aas_ 256 _ctr (handle、aes_ctr_encrypt_db、aes_ctr_decrypt_db) =オブジェクト

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

AES 256 -CTR 操作の暗号化フックを設定します。

パラメーター:

  • ハンドル Mongo::Crypt::Handle
  • aes_encrypt_cb メソッド

    AES-CTR 暗号化メソッド

  • aes_decrypt_cb メソッド

    AES-CTR 復号化メソッド

次の値が発生します。



1441
1442
1443
1444
1445
1446
1447
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1441

デフォルト 自己.setopt_aes_256_ctr(ハンドル, aes_ctr_encrypt_db, aes_ctr_decrypt_cb)
  check_status(ハンドル) 行う
    mongocrypt_setopt_aes_256_ctr(ハンドル.参照,
      aes_ctr_encrypt_db, aes_ctr_decrypt_cb, nil
    )
  end
end

setopt_append_crypt_shared_lib_search_path (ハンドル、パス) ===========================================

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

ロード用に検索パスに追加の検索ディレクトリを追加する

the crypt_shared dynamic library.

パラメーター:

  • ハンドル Mongo::Crypt::Handle
  • path ( string )

    暗号化共有ライブラリの検索パス。



1475
1476
1477
1478
1479
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1475

デフォルト 自己.setopt_append_crypt_shared_lib_search_path(ハンドル, path)
  check_status(ハンドル) 行う
    mongocrypt_set_append_crypt_shared_lib_search_path(ハンドル.参照, path)
  end
end

setopt_bypass_query_analysis (handle) =オブジェクト

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

クエリ分析のスキップをオプトインします。

次の場所で選択された場合:

  • csfile 共有ライブラリはロード試行しません。

  • mongocrypt_ctx_t は MONGOCRYPT_CTX_NEED_MARDINGS 状態になることはありません。

パラメーター:



1408
1409
1410
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1408

デフォルト 自己.setopt_bypass_query_analysis(ハンドル)
  mongocrypt_set_bypass_query_analysis(ハンドル.参照)
end

setopt_crypto_hook_sign_rsas_pkcs 1 _v 1 _ 5 (handle、r saes_pkcs_signature_db)=オブジェクト

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

で RSASS-PKCS 1 -v 1 _ 5アルゴリズムの暗号化フックを設定する

a SHA-256 hash oh the Handle.

パラメーター:

  • ハンドル Mongo::Crypt::Handle
  • rlas_pkcs_signature_db メソッド

    RSA-PKCS 1 -v 1 _ 5署名メソッド。

次の値が発生します。



1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1333

デフォルト 自己.setopt_crypto_hook_sign_rsas_pkcs 1 _v 1 _ 5(
  ハンドル,
  rlas_pkcs_signature_db
)
  check_status(ハンドル) 行う
    mongocrypt_sett_crypto_hook_sign_rsas_pkcs 1 _v 1 _ 5(
      ハンドル.参照,
      rlas_pkcs_signature_db,
      nil
    )
  end
end

setopt_crypto_hooks (handle、aes_encrypt_db、aes_decrypt_db、round_db、hmac_sha_ 512 _db、hmac_sha_ 256 _db、hmac_hash_db) =オブジェクト

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

ハンドルに暗号化コールバックを設定する

パラメーター:

  • ハンドル Mongo::Crypt::Handle
  • aes_encrypt_cb メソッド

    AES 暗号化メソッド

  • aes_decrypt_cb メソッド

    AES 復号化メソッド

  • random_cb メソッド

    ランダムなバイトの string を返すメソッド

  • hmac_sha_ 512 _db メソッド

    HMAC SHA- 512メソッド

  • hmac_sha_ 256 _db メソッド

    HMAC SHA- 256メソッド

  • hmac_hash_db メソッド

    SHA- 256ハッシュ メソッド

次の値が発生します。



1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1295

デフォルト 自己.setopt_crypto_hooks(ハンドル,
  aes_encrypt_cb, aes_decrypt_cb, random_cb,
  hmac_sha_ 512 _db, hmac_sha_ 256 _db, hmac_hash_db
)
  check_status(ハンドル) 行う
    mongocrypt_set_crypto_hooks(ハンドル.参照,
      aes_encrypt_cb, aes_decrypt_cb, random_cb,
      hmac_sha_ 512 _db, hmac_sha_ 256 _db, hmac_hash_db, nil
    )
  end
end

setopt_encrypted_field_config_map (handle、efc_map)=オブジェクト

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

暗号化用にローカル EncryptedFieldConfigMap を設定します。

パラメーター:

  • ハンドル Mongo::Crypt::Handle
  • efc_map BSON::Document

    ユーザーによって提供された EncryptedFieldConfigMap を表す BSON ドキュメント。 キーはコレクションの名前空間で、値は EncryptedFieldConfigMap ドキュメントです。

次の値が発生します。



1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1376

デフォルト 自己.setopt_encrypted_field_config_map(ハンドル, efc_map)
  validate_document(efc_map)
  データ = efc_map.to_bson.to_s
  バイナリ.wrap_string(データ) 行う |data_p|
    check_status(ハンドル) 行う
      mongocrypt_set_encrypted_field_config_map(
        ハンドル.参照,
        data_p
      )
    end
  end
end

setopt_ kms_providers (ハンドル、 kms_providers) =オブジェクト

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

Mongo::Crypt::Handle オブジェクトでの KMS プロバイダー オプションの設定

パラメーター:

  • ハンドル Mongo::Crypt::Handle
  • kms_providers BSON::Document

    KMS プロバイダー名を認証情報にマッピングする BSON ドキュメント。

次の値が発生します。



349
350
351
352
353
354
355
356
357
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行349

デフォルト 自己.setopt_ kms_providers(ハンドル, kms_providers)
  validate_document(kms_providers)
  データ = kms_providers.to_bson.to_s
  バイナリ.wrap_string(データ) 行う |data_p|
    check_status(ハンドル) 行う
      mongocrypt_set_ kms_providers(ハンドル.参照, data_p)
    end
  end
end

setopt_log_handler (handle、log_colback)=オブジェクト

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

Mongo::Crypt::Handle オブジェクトにロガーのコールバック関数を設定する

パラメーター:

次の値が発生します。



319
320
321
322
323
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行319

デフォルト 自己.setopt_log_handler(ハンドル, log_colback)
  check_status(ハンドル) 行う
    mongocrypt_set_log_handler(ハンドル, log_colback, nil)
  end
end

setopt_schema_map (handle、schema_map_doc)=オブジェクト

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

Mongo::Crypt::Handle オブジェクトにスキーマ マップを設定します

パラメーター:

  • ハンドル Mongo::Crypt::Handle
  • schema_map_doc BSON::Document

    BSON::Document オブジェクトとしてのスキーマ マップ

次の値が発生します。



376
377
378
379
380
381
382
383
384
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行376

デフォルト 自己.setopt_schema_map(ハンドル, schema_map_doc)
  validate_document(schema_map_doc)
  データ = schema_map_doc.to_bson.to_s
  バイナリ.wrap_string(データ) 行う |data_p|
    check_status(ハンドル) 行う
      mongocrypt_set_schema_map(ハンドル.参照, data_p)
    end
  end
end

setopt_set_crypt_shared_lib_path_overide (handle, パス) =オブジェクト

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

暗号化共有ライブラリをロードするための単一の上書きパスを設定します。

パラメーター:

  • ハンドル Mongo::Crypt::Handle
  • path ( string )

    共有ライブラリ ファイルを暗号化するためのパス。



1503
1504
1505
1506
1507
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1503

デフォルト 自己.setopt_set_crypt_shared_lib_path_override(ハンドル, path)
  check_status(ハンドル) 行う
    mongocrypt_set_set_crypt_shared_lib_path_overwrite(ハンドル.参照, path)
  end
end

setopt_use_need_ kms_credentials_ State (ハンドル) =オブジェクト

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

MONGOCRYPT_CTX_NEED_KMS_CREENTILS 状態の処理をオプトインします。

これが設定されている場合、MONGOCRYPT_CTX_NEED_KMS 状態になる前に、コンテキストは MONGOCRYPT_CTX_NEED_KMS_CREDENTALS 状態になり、「mongocrypt_ctx_provide_ kms_providers」を介して認証情報が提供されるまで待機する可能性があります。

コンテキストは、「mongocrypt_setup_ kms_providers」で KMS プロバイダーに空のドキュメントが設定されていた場合にのみ MONGOCRYPT_CTX_Atlas を入力します。

パラメーター:



1587
1588
1589
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1587

デフォルト 自己.setopt_use_need_ kms_credentials_rate(ハンドル)
  mongocrypt_set_use_need_ kms_credentials_rate(ハンドル.参照)
end

.validate_document(data) ⇒ Object

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

注:

すべての BSON::Document インスタンスも ハッシュ インスタンスです

libmongocrypt からのエラーを防ぐために、指定されたデータが BSON に直列化される前に指定されたデータがハッシュであることを確認します

パラメーター:

  • データ オブジェクト

    libmongocrypt に渡すデータ

次の値が発生します。



1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1780

デフォルト 自己.validate_document(データ)
  return 場合 データ.is_a?(ハッシュ)

  場合 データ.nil?
    メッセージ = " libmongocrypt に nil データを渡しようとしました +
      データはハッシュである必要があります
  else
    メッセージ = "無効なデータを libmongocrypt に渡しようとしました: #{データ} " +
      データはハッシュである必要があります
  end

  発生 エラー::CryptError.新着情報(メッセージ)
end

.validate_version(lmc_version) ⇒ Object

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

libmongocrypt の提供されたバージョンが有効かどうか、つまり最小必要バージョンよりも大きいかどうかを検証します。 ロードされない場合は、LoadError が発生します。

パラメーター:

  • mc_version ( string )

    libmongocrypt のバージョンを表すstring 。

次の値が発生します。

  • LoadError

    指定されたバージョンが必要な最小バージョンより小さい場合。



131
132
133
134
135
136
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行131

デフォルト 自己.validate_version(mc_version)
  場合 (actual_version = parse_version(mc_version)) < MIN_LIBMONGOCRYPT_VERSION
    発生 LoadError, " libmongocrypt バージョン#{ MIN_LIBMONGOCRYPT_VERSION }以上が必要です +
      " が 見つかり まし た 。
  end
end

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

#mongocrypt_crypto_fn(ctx, key, iv, input, output, status) ⇒ Bool

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

注:

これは、 FFI コールバックのメソッド署名を定義します。は、 バインディング クラスのインスタンス メソッドではありません。

AES 暗号化または復号化を実行する関数へのコールバック。

パラメーター:

  • ctx FFI::Pointer | nil

    フックが有効になっているときに設定された可能性があるコンテキスト オブジェクトへの任意のポインター。

  • キー FFI ::Pointer

    32バイトの AES 暗号化キーを参照する mongocrypt_binary_t オブジェクトへのポインター。

  • iv FFI ::Pointer

    16バイトの AES IV を参照する mongocrypt_binary_t オブジェクトへのポインター。

  • 入力 FFI ::Pointer

    暗号化/復号化する値を参照する mongocrypt_binary_t オブジェクトへのポインター。

  • 出力 FFI ::Pointer

    (アウト パラメーター) mongocrypt_binary_t オブジェクトへのポインターは、libmongocrypt によって書き込まれた暗号化/復号化された値への参照を持ちます。

  • 状態 FFI ::Pointer

    暗号化に失敗した場合にエラー メッセージが書き込まれる mongocrypt_status_t オブジェクトへのポインター。

次の値を返します。

  • ブール

    暗号化および復号化が成功したかどうか。



1187
1188
1189
1190
1191
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1187

コールバック(
  :mongocrypt_crypto_fn,
  [:pointer, :pointer, :pointer, :pointer, :pointer, :pointer, :pointer],
  :bool
)

#mongocrypt_hash_fn(ctx, input, output, status) ⇒ Bool

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

注:

これは、 FFI コールバックのメソッド署名を定義します。は、 バインディング クラスのインスタンス メソッドではありません。

SHA- 256ハッシュ関数のコールバック。

パラメーター:

  • ctx FFI::Pointer | nil

    フックが有効になっているときに設定された可能性があるコンテキスト オブジェクトへの任意のポインター。

  • 入力 FFI ::Pointer

    ハッシュされる値を参照する mongocrypt_binary_t オブジェクトへのポインター。

  • 出力 FFI ::Pointer

    (アウト パラメーター) mongocrypt_binary_t オブジェクトへのポインターは、libmongocrypt によって書き込まれた出力値への参照を持ちます。

  • 状態 FFI ::Pointer

    暗号化に失敗した場合にエラー メッセージが書き込まれる mongocrypt_status_t オブジェクトへのポインター。

次の値を返します。

  • ブール

    ハッシュ化が成功したかどうか。



1235
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1235

コールバック :mongocrypt_hash_fn, [:pointer, :pointer, :pointer, :pointer], :bool

# mongocrypt_hmac_fn (ctx 、key、入力、出力、ステータス) =ブール

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

注:

これは、 FFI コールバックのメソッド署名を定義します。は、 バインディング クラスのインスタンス メソッドではありません。

HMAC SHA- 512または SHA- 256を実行する関数へのコールバック。

パラメーター:

  • ctx FFI::Pointer | nil

    フックが有効になっているときに設定された可能性があるコンテキスト オブジェクトへの任意のポインター。

  • キー FFI ::Pointer

    32バイトの HMAC SHA 暗号化キーを参照する mongocrypt_binary_t オブジェクトへのポインター。

  • 入力 FFI ::Pointer

    入力値を参照する mongocrypt_binary_t オブジェクトへのポインター。

  • 出力 FFI ::Pointer

    (アウト パラメーター) mongocrypt_binary_t オブジェクトへのポインターは、libmongocrypt によって書き込まれた出力値への参照を持ちます。

  • 状態 FFI ::Pointer

    暗号化に失敗した場合にエラー メッセージが書き込まれる mongocrypt_status_t オブジェクトへのポインター。

次の値を返します。

  • ブール

    HMAC-SHA が成功したかどうか。



1212
1213
1214
1215
1216
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1212

コールバック(
  :mongocrypt_hmac_fn,
  [:pointer, :pointer, :pointer, :pointer, :pointer],
  :bool
)

# mongocrypt_log_fn_t (レベル、メッセージ、lan、ctx) = nil

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

注:

これは、 FFI コールバックのメソッド署名を定義します。は、 バインディング クラスのインスタンス メソッドではありません。

mongocrypt ログ関数のコールバック。 カスタムログのコールバックの設定

with the mongocrypt_setopt_log_handler method

パラメーター:

  • レベル シンボル

    ログ レベルlog_level 列挙型によって定義される可能な値

  • メッセージ ( string )

    ログ メッセージ

  • len (整数)

    メッセージ パラメータの長さ、または string が null 終了の場合は - 1

  • ctx FFI::Pointer | nil

    このコールバックが設定されたときのコンテキスト オブジェクトへの任意のポインター

次の値を返します。

  • (nil)

    常に nil です。



288
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行288

コールバック :mongocrypt_log_fn_t, [:log_level, :string, :int, :pointer], :void

# mongocrypt_readm_fn (ctx, output, count,status) =ブール

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

注:

これは、 FFI コールバックのメソッド署名を定義します。は、 バインディング クラスのインスタンス メソッドではありません。

暗号化されたランダム関数のコールバック。

パラメーター:

  • ctx FFI::Pointer | nil

    フックが有効になっているときに設定された可能性があるコンテキスト オブジェクトへの任意のポインター。

  • 出力 FFI ::Pointer

    (アウト パラメーター) mongocrypt_binary_t オブジェクトへのポインターは、libmongocrypt によって書き込まれた出力値への参照を持ちます。

  • count (整数)

    返されるランダムなバイト数。

  • 状態 FFI ::Pointer

    暗号化に失敗した場合にエラー メッセージが書き込まれる mongocrypt_status_t オブジェクトへのポインター。

次の値を返します。

  • ブール

    ハッシュ化が成功したかどうか。



1253
# ファイル 'Build/ruby-Driver-v 2.19 /lib/mongo/crypt/bining.rb', 行1253

コールバック :mongocrypt_random_fn, [:pointer, :pointer, :int, :pointer], :bool