クラス: Mongo::Crypt::Binding Private
Overview
このクラスは、プライベート API の一部です。 このクラスは将来削除または変更される可能性があるため、可能な限り使用しないでください。
libmongocrypt C ライブラリの Ruby バインディング
定数の概要の削減
- MIN_LIBMONGOCRYPT_VERSION =
この定数は、プライベート API の一部です。 この定数は将来削除または変更される可能性があるため、可能な限り使用しないでください。
このバージョンのドライバーに必要な libmongocrypt の最小バージョン。libmongocrypt の以前のバージョンでドライバーを使用しようとすると、
LoadErrorが発生します。 Gem::バージョン.新着情報('1.12.0')
クラスメソッドの概要を折りたたむ
-
.check_ctx_status(context) ⇒ nil
private
基礎となる mongocrypt_ctx_t オブジェクトのステータスに基づいて、 Mongo::Error::CryptError を発生させます。
-
。 checkpoint_ kms_ctx_status ( kms_context) = オブジェクト
private
提供されたブロックが false を返す場合は、提供された KmsContext オブジェクトからのステータス情報を使用して CritError を発生させます。
-
。 checkpoint_status (handle) = nil
private
基礎となる mongocrypt_t オブジェクトのステータスに基づいて、 Mongo::Error::CryptError を発生させます。
-
。 crypt_shared_lib_version (handle) = 整数
private
ロードされた crypt_shared ライブラリのバージョンをエンコードする64ビットの定数を取得します(使用可能な場合)。
-
。 cx_datakey_init (コンテキスト)=オブジェクト
private
Context を初期化してデータキーを作成します。
-
。 cx_decrypt_init (コンテキスト、コマンド)=オブジェクト
private
自動復号化のためにコンテキストを初期化します。
-
。 cx_encrypt_init (context、db_name、コマンド)= オブジェクト
private
自動暗号化のコンテキストを初期化します。
-
.ctx_explicit_decrypt_init(context, doc) ⇒ Object
private
明示的な復号化のためにコンテキストを初期化します。
-
.ctx_explicit_encrypt_expression_init(context, doc) ⇒ Object
private
明示的な式の暗号化のためにコンテキストを初期化します。
-
.ctx_explicit_encrypt_init(context, doc) ⇒ Object
private
明示的な暗号化のためにコンテキストを初期化します。
-
。 cx_ finalize (コンテキスト)= オブジェクト
private
コンテキストによって表されるステートマシンを終了します。
-
.ctx_kms_done(context) ⇒ Object
private
libmongocrypt がこれ以上の KMS 応答を受信しないことを示します。
-
。 cx_mongo_feed (context、doc)= オブジェクト
private
ドライバーからの応答を libmongocrypt に送ります。
-
.ctx_mongo_op(context) ⇒ BSON::Document
private
暗号化/復号化を続行するために必要な情報を取得するためにドライバーが libmongocrypt に代わって実行する必要がある操作を表す BSON::Document を返します(たとえば、キーヴォールトクエリのフィルター)。
-
.ctx_next_kms_ctx(context) ⇒ Mongo::Crypt::KmsContext | nil
private
Context オブジェクトに必要な新しい KmsContext オブジェクトを返します。
-
。 cx_provide_ kms_providers (コンテキスト、 kms_providers) = オブジェクト
private
MONGOCRYPT_CTX_Atlas 状態に応答して を呼び出し、コンテキストごとの KMS プロバイダー設定を設定します。
-
。 cx_rawap_many_datakey_init (コンテキスト、フィルター)=ブール値
private
データキーをリラップするには、コンテキストを初期化します。
-
。 cx_set_algorithm (コンテキスト、名前)= オブジェクト
private
コンテキストにアルゴリズムを設定します。
-
。 cx_setup_algorithm_range (コンテキスト、opts) = オブジェクト
private
「範囲」アルゴリズムを使用して明示的な暗号化のオプションを設定します。
-
。 cx_set_contention_factor (コンテキスト、係数)= オブジェクト
private
明示的な暗号化に使用される競合係数を設定します。
-
。 cx_set_key_alt_names (コンテキスト、key_alt_names)= オブジェクト
private
データキーの作成時に複数の代替キー名を設定します。
-
。 cx_set_key_encryption_key (コンテキスト、キー_ドキュメント)= オブジェクト
private
データキーを作成するためのキー暗号化キー ドキュメントを設定します。
-
.ctx_setopt_key_id(context, key_id) ⇒ Object
private
明示的な暗号化コンテキストにキー ID オプションを設定します。
-
。 cx_set_key_rate (コンテキスト、key_rate)= オブジェクト
private
データの暗号化に使用するカスタム キーマテリアルを設定します。
-
。 cx_set_query_type (context, query_type) = オブジェクト
private
FLE 2明示的暗号化に使用するクエリタイプを設定します。
- 。 get_binary_data_direct (mongocrypt_binary_t) = オブジェクト private
- 。 get_binary_en_direct (mongocrypt_binary_t) = オブジェクト private
-
。初期化(handle)=オブジェクト
private
Mongo::Crypt::Handle オブジェクトを初期化します。
-
。 kms_ctx_bytes_needed ( kms_context) = 整数
private
KmsContext に必要なバイト数を取得します。
-
.kms_ctx_endpoint(kms_context) ⇒ String | nil
private
TLS 経由で接続し、 Amazon Web Servicesのマスターキーに関する情報を取得するホスト名を取得します。
-
。 kms_ctx_fail(kms_context)=true,false
private
KMS コンテキストの最後に失敗したリクエストを再試行できるかどうかを確認します。
-
。 kms_ctx_feed (kms_context, バイト)==============================
private
フィードは KMS から libmongocrypt に戻ります。
-
。 kms_ctx_get_ kms_provider ( kms_context) = オブジェクト
private
この KMS リクエストに関連付けられている KMS プロバイダー識別子を取得します。
-
.kms_ctx_message(kms_context) ⇒ String
private
KmsContext オブジェクトから マスター HTTPキーを取得するために必要な メッセージを取得します。Amazon Web ServicesKMS
-
.kms_ctx_setopt_retry_kms(handle, value) ⇒ true, fale
private
KMS 再試行動作を有効または無効にします。
-
.kms_ctx_usleep(kms_context) ⇒ Integer
private
指定された KMS コンテキストの KMSリクエストを送信する前に休止するミリ秒数を返します。
-
。 mongocrypt_binary_data (バイナリ) → FFI::Pointer
private
mongocrypt_binary_t の基礎となるデータへのポインターを取得します。
-
。 mongocrypt_binary_detry (バイナリ)= nil
private
mongocrypt_binary_t オブジェクトを破棄します。
-
。 mongocrypt_binary_en (バイナリ) = 整数
private
基礎となるデータ配列の長さを取得します。
-
。 mongocrypt_binary_new → FFI::Pointer
private
新しい mongocrypt_binary_t オブジェクト(バイト配列の非所有のビュー)を作成します。
-
。 mongocrypt_binary_new_from_data (data, lan) = FFI::Pointer
private
指定されたバイト配列へのポインターを保持する新しい mongocrypt_binary_t オブジェクトを作成します。
- 。 mongocrypt_crypt_shared_lib_version (crypt) = オブジェクト private
- 。 mongocrypt_ctx_datakey_init (ctx、フィルター)= オブジェクト private
-
.mongocrypt_ctx_decrypt_init(ctx, doc) ⇒ Boolean
private
自動復号化用にctxを初期化します。
-
。 mongocrypt_ctx_detry (ctx) = nil
private
mongocrypt_ctx_t オブジェクトへの参照を破棄します。
-
.mongocrypt_ctx_encrypt_init(ctx, db, db_len, cmd) ⇒ Boolean
private
自動暗号化の ctx を初期化します。
-
.mongocrypt_ctx_explicit_decrypt_init(ctx, msg) ⇒ Boolean
private
明示的な復号化のためにctx を初期化します。
-
.mongocrypt_ctx_explicit_encrypt_init(ctx, msg) ⇒ Boolean
private
明示的な式の暗号化のために ctx を初期化します。
-
。 mongocrypt_ctx_ finalize (ctx, op_bson) = ブール値
private
最後の暗号化または復号化を実行し、BSON ドキュメントを返します。
-
.mongocrypt_ctx_mongo_done(ctx) ⇒ Boolean
private
libmongocrypt に、ドライバーが応答を送信したことを示します。
-
。 mongocrypt_ctx_mongo_feed (ctx, 応答)= ブール値
private
libmongocrypt に BSON 応答を入力します。
-
。 mongocrypt_ctx_mongo_next_ kms_ctx (ctx) = FFI::Pointer
private
mongocrypt_ kms_ctx_t オブジェクトまたは NULL へのポインターを返します。
-
。 mongocrypt_ctx_mongo_op (ctx, op_bson) = ブール値
private
ドライバーが MongoDB コレクション、キーヴォールトデータベース、または mongocryptd に対して実行する BSON 操作を取得します。
-
。 mongocrypt_ctx_new (暗号化) → FFI::Pointer
private
新しい mongocrypt_ctx_t オブジェクト( libmongocrypt ステート マシンのラッパー)を作成します。
- 。 mongocrypt_ctx_provide_ kms_providers (ctx、 kms_providers)= オブジェクト private
-
。 mongocrypt_ctx_set_algorithm (ctx、アルゴリズム、lan) = ブール値
private
明示的な暗号化に使用されるアルゴリズムを設定します。
- 。 mongocrypt_ctx_set_algorithm_range (ctx、opts) = オブジェクト private
- 。 mongocrypt_ctx_set_contention_factor (ctx, MongoDB )= オブジェクト private
-
。 mongocrypt_ctx_set_key_alt_name (ctx、バイナリ)= ブール値
private
データキーを作成するときは、そのキーに代替名を設定します。
-
。 mongocrypt_ctx_sett_key_encryption_key (ctx)=ブール値
private
データキーを作成するためのキー暗号化キー ドキュメントを設定します。
-
.mongocrypt_ctx_setopt_key_id(ctx, key_id) ⇒ Boolean
private
明示的な暗号化に使用されるキー ID を設定します。
-
。 mongocrypt_ctx_set_key_rate (ctx、バイナリ)= ブール値
private
データキーの作成時に、データの暗号化に使用するカスタム キーマテリアル を設定します。
- 。 mongocrypt_ctx_set_query_type (ctx、mongocrypt_query_type)= オブジェクト private
-
。 mongocrypt_ctx_ State (ctx) = シンボル
private
cstring の現在の状態を取得します。
-
。 mongocrypt_ctx_status (ctx,status)=ブール値
private
mongocrypt_ctx_t オブジェクト から mongocrypt_status_t オブジェクトのステータス情報を設定します。
-
。 mongocrypt_detroy (暗号化) = nil
private
mongocrypt_t オブジェクトの参照を破棄します。
-
。 mongocrypt_init (crypt) = ブール値
private
mongocrypt_t オブジェクトを初期化します。
-
。 mongocrypt_ kms_ctx_bytes_needed ( KMS ) = 整数
private
KMS コンテキストに必要なバイト数を取得します。
-
.mongocrypt_kms_ctx_done(ctx) ⇒ Boolean
private
libmongocrypt が mongocrypt_ kms_ctx_t オブジェクトからの応答をこれ以上受信しないことを示します。
-
。 mongocrypt_ kms_ctx_endpoint ( KMS 、 エンドポイント) = ブール値
private
TLS 経由で接続し、 Amazon Web Servicesのマスターキーに関する情報を取得するホスト名を取得します。
- .mongocrypt_kms_ctx_fail(ctx) ⇒ Object private
-
。 mongocrypt_ kms_ctx_feed ( KMS , バイト) = ブール値
private
フィードは KMS から libmongocrypt に戻ります。
- 。 mongocrypt_ kms_ctx_get_ kms_provider (暗号化、 kms_providers) = オブジェクト private
-
。 mongocrypt_ kms_ctx_message ( KMS , ミリ秒) = ブール値
private
Amazon Web Services KMSマスターキーを取得するために必要なメッセージを取得します。
-
。 mongocrypt_ kms_ctx_status ( KMS 、ステータス) = ブール値
private
mongocrypt_ kms_ctx_t オブジェクトのステータス情報を mongocrypt_status_t オブジェクトに書込み (write) ます。
-
.mongocrypt_kms_ctx_usleep(ctx) ⇒ int64
private
KMSリクエスト を送信する前に休止する時間を示します。
-
。 mongocrypt_set_aas_ 256 _ctr (crypt, aes_ 256 _ctr_encrypt, aes_ 256 _ctr_decrypt, ctx) = ブール値
private
AES 256 -CTR 操作の暗号化フックを設定します。
- 。 mongocrypt_set_append_crypt_shared_lib_search_path (暗号化、パス)======================================= private
- 。 mongocrypt_set_bypass_query_analysis (crypt) = オブジェクト private
-
。 mongocrypt_set_crypto_hook_sign_rsas_pkcs 1 _v 1 _ 5 (crypt, Sign_rsads_pkcs 1 _v 1 _ 5 , ctx = nil) = ブール値
private
SHA- 256ハッシュを使用して、RSASA-PKCS 1 -v 1 _ 5アルゴリズムの暗号化フックを設定します。
-
.mongocrypt_setopt_crypto_hooks(crypt, aes_enc_fn, aes_dec_fn, random_fn, sha_512_fn, sha_256_fn, hash_fn, ctx = nil) ⇒ Boolean
private
提供された mongocrypt オブジェクトに暗号化フックを設定します。
- 。 mongocrypt_set_encrypted_field_config_map (暗号化、efc_map)= オブジェクト private
-
。 mongocrypt_set_ kms_providers (暗号化、 kms_providers) = オブジェクト
private
BSON ドキュメントを使用して KMS プロバイダーを構成します。
-
。 mongocrypt_set_log_handler (crypt, log_fn, log_ctx = nil) = ブール値
private
libmongocrypt がメッセージをログに記録するたびに呼び出されるように mongocrypt_t オブジェクトの ハンドラーを設定します。
- 。 mongocrypt_set_retry_ kms(暗号化、有効化) = オブジェクト private
-
。 mongocrypt_set_schema_map (暗号化、schema_map)=ブール値
private
暗号化用のローカル スキーマ マップを設定します。
- 。 mongocrypt_set_set_crypt_shared_lib_path_overwrite (暗号化、パス)============================== private
- 。 mongocrypt_set_use_need_ kms_credentials_ State (暗号化) = オブジェクト private
-
。 mongocrypt_status (暗号化、ステータス)=ブール値
private
mongocrypt_status_t オブジェクトの mongocrypt_t オブジェクトからのステータス情報を設定します。
-
。 mongocrypt_status_code (ステータス)=整数
private
ステータス エラー コードを返します。
-
。 mongocrypt_status_detroy (ステータス) = nil
private
mongocrypt_status_t オブジェクトへの参照を破棄します。
-
.mongocrypt_status_message(status, len = nil) ⇒ String
private
ステータス メッセージを返します。
-
。 mongocrypt_status_new → FFI::Pointer
private
新しい mongocrypt_status_t オブジェクトを作成します。
-
。 mongocrypt_status_ok (status) = ブール値
private
ステータスが OK かエラーかを返します。
-
。 mongocrypt_status_set (status、type、コード、メッセージ、lan) = nil
private
既存のステータスにメッセージ、タイプ、コードを設定します。
-
.mongocrypt_status_type(status) ⇒ Symbol
private
ステータスの種類を示します。
-
。 mongocrypt_version (ven) = string
private
libmongocrypt ライブラリのバージョン string を返します。
-
。 ongocrypt_new → FFI::Pointer
private
新しい mongocrypt_t オブジェクトを作成します。
-
.parse_version(version) ⇒ Gem::Version
private
バージョン番号を表す string が指定された場合、 はそれを Gem::Version オブジェクトに解析します。
-
。 setopt_aas_ 256 _ctr (handle、aes_ctr_encrypt_db、aes_ctr_decrypt_db) = オブジェクト
private
AES 256 -CTR 操作の暗号化フックを設定します。
-
。 setopt_append_crypt_shared_lib_search_path (ハンドル、パス)===========================================
private
crypt_shared 動的ライブラリをロードするための検索パスに追加の検索ディレクトリを追加します。
-
。 setopt_bypass_query_analysis (handle) = オブジェクト
private
クエリ分析のスキップをオプトインします。
-
。 setopt_crypto_hook_sign_rsas_pkcs 1 _v 1 _ 5 (handle、r saes_pkcs_signature_db)= オブジェクト
private
RSASS-PKCS 1 -v 1 _ 5アルゴリズムの暗号化フックを SHA- 256ハッシュで設定します。
-
。 setopt_crypto_hooks (handle、aes_encrypt_db、aes_decrypt_db、round_db、hmac_sha_ 512 _db、hmac_sha_ 256 _db、hmac_hash_db) = オブジェクト
private
ハンドルに暗号化コールバックを設定する。
-
。 setopt_encrypted_field_config_map (handle、efc_map)= オブジェクト
private
暗号化用にローカル EncryptedFieldConfigMap を設定します。
-
。 setopt_ kms_providers (ハンドル、 kms_providers) = オブジェクト
private
Mongo::Crypt::handle オブジェクトで KMS プロバイダーのオプションを設定します。
-
。 setopt_log_handler (handle、log_colback)= オブジェクト
private
Mongo::Crypt::Handle オブジェクトに ロガー コールバック 関数を設定します。
-
。 setopt_schema_map (handle、schema_map_doc)= オブジェクト
private
Mongo::Crypt::handle オブジェクトに スキーマ マップ を設定します。
-
。 setopt_set_crypt_shared_lib_path_overide (handle, パス) = オブジェクト
private
暗号化共有ライブラリをロードするための単一の上書きパスを設定します。
-
。 setopt_use_need_ kms_credentials_ State (ハンドル) = オブジェクト
private
MONGOCRYPT_CTX_NEED_KMS_CREENTILS 状態の処理をオプトインします。
-
.validate_document(data) ⇒ Object
private
指定されたデータがハッシュであることを BSON に直列化する前に確認し、libmongocrypt からのエラーを防ぎます。
-
.validate_version(lmc_version) ⇒ Object
private
提供されたバージョンの libmongocrypt が有効かどうかを検証します。
インスタンス メソッドの概要を折りたたむ
-
#mongocrypt_crypto_fn(ctx, key, iv, input, output, status) ⇒ Bool
private
AES 暗号化または復号化を実行する関数へのコールバック。
-
#mongocrypt_hash_fn(ctx, input, output, status) ⇒ Bool
private
SHA- 256ハッシュ関数のコールバック。
-
# mongocrypt_hmac_fn (ctx 、key、入力、出力、ステータス) = ブール値
private
HMAC SHA- 512または SHA- 256を実行する関数へのコールバック。
-
# mongocrypt_log_fn_t (レベル、メッセージ、lan、ctx) = nil
private
mongocrypt ログ関数のコールバック。
-
# mongocrypt_readm_fn (ctx, output, count,status) = ブール値
private
暗号化されたランダム関数のコールバック。
クラスメソッドの詳細
.check_ctx_status(context) ⇒ nil
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
基礎となる mongocrypt_ctx_t オブジェクトのステータスに基づいて、 Mongo::Error::CryptError を発生させます。
1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1815 デフォルト 自己.checkpoint_ctx_status(context) do_ Ops Manager = 場合 ブロック_指定 !ノードの数 else true end return ただし、 do_ Ops Manager 状態 = ステータス.新着情報 mongocrypt_ctx_status(context.ctx_p, 状態.参照) 状態.resume_crypt_error end |
。 checkpoint_ kms_ctx_status ( kms_context) =オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
提供されたブロックが false を返す場合は、提供された KmsContext オブジェクトからのステータス情報を使用して CritError を発生させます。
1105 1106 1107 1108 1109 1110 1111 1112 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1105 デフォルト 自己.check_kms_ctx_status(kms_context) return 場合 ノードの数 状態 = ステータス.新着情報 mongocrypt_ kms_ctx_status(kms_context.kms_ctx_p, 状態.参照) 状態.resume_crypt_error(KMS : true) end |
。 checkpoint_status (handle) = nil
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
基礎となる mongocrypt_t オブジェクトのステータスに基づいて、 Mongo::Error::CryptError を発生させます。
1802 1803 1804 1805 1806 1807 1808 1809 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1802 デフォルト 自己.check_status(ハンドル) return 場合 ノードの数 状態 = ステータス.新着情報 mongocrypt_status(ハンドル.参照, 状態.参照) 状態.resume_crypt_error end |
。 crypt_shared_lib_version (handle) =整数
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
ロードされた crypt_shared ライブラリのバージョンをエンコードする64ビットの定数を取得します(使用可能な場合)。
バージョンは、高いものから低いものの順に、4つの16ビットの数値としてエンコードされます。
- メジャー バージョン
- マイナー バージョン
- 改訂
- reserved
例、バージョン 6.2.1 は次のようにエンコードされます: 0x0006'0002'0001'0000
1608 1609 1610 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1608 デフォルト 自己.crypt_shared_lib_version(ハンドル) mongocrypt_crypt_shared_lib_version(ハンドル.参照) end |
。 cx_datakey_init (コンテキスト)=オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
Context を初期化してデータキーを作成する
623 624 625 626 627 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 623 デフォルト 自己.ctx_datakey_init(context) checkpoint_ctx_status(context) 行う mongocrypt_ctx_datakey_init(context.ctx_p) end end |
。 cx_decrypt_init (コンテキスト、コマンド)=オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
自動復号化のためのコンテキストを初期化する
784 785 786 787 788 789 790 791 792 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 784 デフォルト 自己.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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
自動暗号化のコンテキストを初期化する
690 691 692 693 694 695 696 697 698 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 690 デフォルト 自己.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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
明示的な復号化のためにコンテキストを初期化する
814 815 816 817 818 819 820 821 822 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 814 デフォルト 自己.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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
明示的な式の暗号化のためにコンテキストを初期化します。
758 759 760 761 762 763 764 765 766 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 758 デフォルト 自己.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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
明示的な暗号化のコンテキストを初期化する
724 725 726 727 728 729 730 731 732 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 724 デフォルト 自己.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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
コンテキストが表すステートマシンを終了する
1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1206 デフォルト 自己.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), モード: context.bson_mode) end |
.ctx_kms_done(context) ⇒ Object
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
libmongocrypt がこれ以上の KMS 応答を受信しないことを示します。
1183 1184 1185 1186 1187 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1183 デフォルト 自己.ctx_kms_done(context) checkpoint_ctx_status(context) 行う mongocrypt_ctx_ kms_done(context.ctx_p) end end |
。 cx_mongo_feed (context、doc)=オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
ドライバーからの応答をlibmongocryptに渡す
895 896 897 898 899 900 901 902 903 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 895 デフォルト 自己.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 を返します(たとえば、キーヴォールトクエリのフィルター)。
866 867 868 869 870 871 872 873 874 875 876 877 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 866 デフォルト 自己.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 オブジェクトを返します。
927 928 929 930 931 932 933 934 935 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 927 デフォルト 自己.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 プロバイダー設定が使用されます。
1681 1682 1683 1684 1685 1686 1687 1688 1689 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1681 デフォルト 自己.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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
データキーをリラップするには、コンテキストを初期化します。
654 655 656 657 658 659 660 661 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 654 デフォルト 自己.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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
コンテキストにアルゴリズムを設定する
567 568 569 570 571 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 567 デフォルト 自己.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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
Rangeアルゴリズムは実験的なもののみです。 対象ではありません
「範囲」アルゴリズムを使用して明示的な暗号化のオプションを設定します。
パブリックで使用します。
1788 1789 1790 1791 1792 1793 1794 1795 1796 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1788 デフォルト 自己.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暗号化にのみ使用されます。
1751 1752 1753 1754 1755 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1751 デフォルト 自己.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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
データキーの作成時に複数の代替キー名を設定する
498 499 500 501 502 503 504 505 506 507 508 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 498 デフォルト 自己.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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
データキーを作成するためのキー暗号化キー ドキュメントを設定します。
596 597 598 599 600 601 602 603 604 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 596 デフォルト 自己.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 オプションを設定します。
465 466 467 468 469 470 471 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 465 デフォルト 自己.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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
データの暗号化に使用するカスタム キーマテリアルを設定します。
533 534 535 536 537 538 539 540 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 533 デフォルト 自己.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暗号化にのみ使用されます。
1719 1720 1721 1722 1723 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1719 デフォルト 自己.cx_set_query_type(context, query_type) checkpoint_ctx_status(context) 行う mongocrypt_ctx_set_query_type(context.ctx_p, query_type, -1) end end |
。 get_binary_data_direct (mongocrypt_binary_t) = オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
179 180 181 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 179 デフォルト 自己.get_binary_data_direct(mongocrypt_binary_t) mongocrypt_binary_t.get_pointer(0) end |
。 get_binary_en_direct (mongocrypt_binary_t) = オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
183 184 185 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 183 デフォルト 自己.get_binary_en_direct(mongocrypt_binary_t) mongocrypt_binary_t.get_uint32(FFI::NativeType::POINTER.サイズ) end |
。初期化(handle)=オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
Mongo::Crypt::Handle オブジェクトを初期化
405 406 407 408 409 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 405 デフォルト 自己.init(ハンドル) check_status(ハンドル) 行う mongocrypt_init(ハンドル.参照) end end |
。 kms_ctx_bytes_needed ( kms_context) =整数
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
KmsContext に必要なバイト数を取得します。
1061 1062 1063 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1061 デフォルト 自己.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のマスターキーに関する情報を取得するホスト名を取得します。
1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1037 デフォルト 自己.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_fail ( kms_context) = true 、false
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
KMS コンテキストの最後に失敗したリクエストを再試行できるかどうかを確認します。
1146 1147 1148 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1146 デフォルト 自己.kms_ctx_fail(kms_context) mongocrypt_ kms_ctx_fail(kms_context.kms_ctx_p) end |
。 kms_ctx_feed ( kms_context , バイト)==============================
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
フィードは KMS から libmongocrypt に戻ります。
1081 1082 1083 1084 1085 1086 1087 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1081 デフォルト 自己.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 に役立ちます。
968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 968 デフォルト 自己.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
1008 1009 1010 1011 1012 1013 1014 1015 1016 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1008 デフォルト 自己.(kms_context) バイナリ = バイナリ.新着情報 check_kms_ctx_status(kms_context) 行う (kms_context.kms_ctx_p, バイナリ.参照) end バイナリ.to_s end |
.kms_ctx_setopt_retry_kms(handle, value) ⇒ true, fale
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
KMS 再試行動作を有効または無効にします。
1165 1166 1167 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1165 デフォルト 自己.kms_ctx_setopt_retry_kms(ハンドル, 価値) mongocrypt_set_retry_ kms(ハンドル.参照, 価値) end |
.kms_ctx_usleep(kms_context) ⇒ Integer
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
指定された KMS コンテキストの KMSリクエストを送信する前に休止するミリ秒数を返します。
1129 1130 1131 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1129 デフォルト 自己.kms_ctx_usleep(kms_context) mongocrypt_kms_ctx_usleep(kms_context.kms_ctx_p) end |
。 mongocrypt_binary_data (バイナリ) → FFI::Pointer
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
mongocrypt_binary_t の基礎となるデータへのポインターを取得します。
169 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 169 accumulate_function :mongocrypt_binary_data, [ :pointer ], :pointer |
。 mongocrypt_binary_detry (バイナリ)= nil
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
mongocrypt_binary_t オブジェクトを破棄します。
193 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 193 accumulate_function :mongocrypt_binary_detry, [ :pointer ], :void |
。 mongocrypt_binary_en (バイナリ) =整数
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
基礎となるデータ配列の長さを取得します。
177 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 177 accumulate_function :mongocrypt_binary_en, [ :pointer ], :int |
。 mongocrypt_binary_new → FFI::Pointer
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
新しい mongocrypt_binary_t オブジェクト(バイト配列の非所有のビュー)を作成します。
145 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 145 accumulate_function :mongocrypt_binary_new, [], :pointer |
。 mongocrypt_binary_new_from_data (data, lan) = FFI::Pointer
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
指定されたバイト配列へのポインターを保持する新しい mongocrypt_binary_t オブジェクトを作成します。
157 158 159 160 161 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 157 accumulate_function( :mongocrypt_binary_new_from_data, %i[ポインター 整数], :pointer ) |
。 mongocrypt_crypt_shared_lib_version (crypt) =オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1586 1587 1588 1589 1590 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1586 accumulate_function( :mongocrypt_crypt_shared_lib_version, [ :pointer ], :uint64 ) |
。 mongocrypt_ctx_datakey_init (ctx、フィルター)=オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
616 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 616 accumulate_function :mongocrypt_ctx_datakey_init, [ :pointer ], :bool |
.mongocrypt_ctx_decrypt_init(ctx, doc) ⇒ Boolean
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
自動復号化用にctxを初期化します。
776 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 776 accumulate_function :mongocrypt_ctx_decrypt_init, %i[ポインター ポインター], :bool |
。 mongocrypt_ctx_detry (ctx) = nil
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
mongocrypt_ctx_t オブジェクトへの参照を破棄します。
1225 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1225 accumulate_function :mongocrypt_ctx_detry, [ :pointer ], :void |
.mongocrypt_ctx_encrypt_init(ctx, db, db_len, cmd) ⇒ Boolean
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
このメソッドでは、渡されるBSONが : { "v": BSON値を復号化するための BSON 値 }であることが想定されています。
自動暗号化の ctx を初期化します。
676 677 678 679 680 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 676 accumulate_function( :mongocrypt_ctx_encrypt_init, %i[ポインター string 整数 ポインター], :bool ) |
.mongocrypt_ctx_explicit_decrypt_init(ctx, msg) ⇒ Boolean
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
明示的な復号化のためにctx を初期化します。
802 803 804 805 806 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 802 accumulate_function( :mongocrypt_ctx_explit_decrypt_init, %i[ポインター ポインター], :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 を初期化します。
712 713 714 715 716 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 712 accumulate_function( :mongocrypt_ctx_explit_encrypt_init, %i[ポインター ポインター], :bool ) |
。 mongocrypt_ctx_ finalize (ctx, op_bson) =ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
最後の暗号化または復号化を実行し、BSON ドキュメントを返します。
1198 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1198 accumulate_function :mongocrypt_ctx_ finalize, %i[ポインター ポインター], :void |
.mongocrypt_ctx_mongo_done(ctx) ⇒ Boolean
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
libmongocrypt に、ドライバーが応答を送信したことを示します。
911 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 911 accumulate_function :mongocrypt_ctx_mongo_done, [ :pointer ], :bool |
。 mongocrypt_ctx_mongo_feed (ctx, 応答)=ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
libmongocrypt に BSON 応答を入力します。
887 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 887 accumulate_function :mongocrypt_ctx_mongo_feed, %i[ポインター ポインター], :bool |
。 mongocrypt_ctx_mongo_next_ kms_ctx (ctx) = FFI::Pointer
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
mongocrypt_ kms_ctx_t オブジェクトまたは NULL へのポインターを返します。
919 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 919 accumulate_function :mongocrypt_ctx_next_kms_ctx, [ :pointer ], :pointer |
。 mongocrypt_ctx_mongo_op (ctx, op_bson) =ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
ドライバーが MongoDB コレクション、キーヴォールトデータベース、または mongocryptd に対して実行する BSON 操作を取得します。
855 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 855 accumulate_function :mongocrypt_ctx_mongo_op, %i[ポインター ポインター], :bool |
。 mongocrypt_ctx_new (暗号化) → FFI::Pointer
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
新しい mongocrypt_ctx_t オブジェクト( libmongocrypt ステート マシンのラッパー)を作成します。
436 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 436 accumulate_function :mongocrypt_ctx_new, [ :pointer ], :pointer |
。 mongocrypt_ctx_provide_ kms_providers (ctx、 kms_providers)=オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1664 1665 1666 1667 1668 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1664 accumulate_function( :mongocrypt_ctx_provide_ kms_viders, %i[ポインター ポインター], :bool ) |
。 mongocrypt_ctx_set_algorithm (ctx、アルゴリズム、lan) =ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
このメソッドを呼び出す前に、ctx を初期化しないでください。
明示的な暗号化に使用されるアルゴリズムを設定します。
553 554 555 556 557 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 553 accumulate_function( :mongocrypt_ctx_setup_algorithm, %i[ポインター string 整数], :bool ) |
。 mongocrypt_ctx_set_algorithm_range (ctx、opts) =オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1770 1771 1772 1773 1774 1775 1776 1777 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1770 accumulate_function( :mongocrypt_ctx_setup_algorithm_range, %i[ ポインター ポインター ], :bool ) |
。 mongocrypt_ctx_set_contention_factor (ctx, MongoDB )=オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1735 1736 1737 1738 1739 1740 1741 1742 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1735 accumulate_function( :mongocrypt_ctx_setup_contention_factor, %i[ ポインター int 64 ], :bool ) |
。 mongocrypt_ctx_set_key_alt_name (ctx、バイナリ)=ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
このメソッドを呼び出す前に、ctx を初期化しないでください。
データキーを作成するときは、そのキーに代替名を設定します。明示的な暗号化を実行する場合、 keyAltNameフィールドに基づいて暗号化に使用するデータキーを指定します。
485 486 487 488 489 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 485 accumulate_function( :mongocrypt_ctx_setup_key_alt_name, %i[ポインター ポインター], :bool ) |
。 mongocrypt_ctx_sett_key_encryption_key (ctx)=ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
このメソッドを呼び出す前に、ctx を初期化しないでください。
データキーを作成するためのキー暗号化キー ドキュメントを設定します。
583 584 585 586 587 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 583 accumulate_function( :mongocrypt_ctx_sett_key_encryption_key, %i[ポインター ポインター], :bool ) |
.mongocrypt_ctx_setopt_key_id(ctx, key_id) ⇒ Boolean
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
このメソッドを呼び出す前に、ctx を初期化しないでください。
明示的な暗号化に使用されるキー ID を設定します。
457 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 457 accumulate_function :mongocrypt_ctx_setup_key_id, %i[ポインター ポインター], :bool |
。 mongocrypt_ctx_set_key_rate (ctx、バイナリ)=ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
このメソッドを呼び出す前に、ctx を初期化しないでください。
データキーの作成時に、データの暗号化に使用するカスタム キーマテリアル を設定します。
520 521 522 523 524 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 520 accumulate_function( :mongocrypt_ctx_setup_key_rate, %i[ポインター ポインター], :bool ) |
。 mongocrypt_ctx_set_query_type (ctx、mongocrypt_query_type)=オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1702 1703 1704 1705 1706 1707 1708 1709 1710 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1702 accumulate_function( :mongocrypt_ctx_set_query_type, %i[ ポインター string 整数 ], :bool ) |
。 mongocrypt_ctx_ State (ctx) =シンボル
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
cstring の現在の状態を取得します。
843 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 843 accumulate_function :mongocrypt_ctx_ State, [ :pointer ], :mongocrypt_ctx_ State |
。 mongocrypt_ctx_status (ctx,status)=ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
mongocrypt_ctx_t オブジェクト から mongocrypt_status_t オブジェクトのステータス情報を設定します。
446 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 446 accumulate_function :mongocrypt_ctx_status, %i[ポインター ポインター], :bool |
。 mongocrypt_detroy (暗号化) = nil
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
mongocrypt_t オブジェクトの参照を破棄します。
427 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 427 accumulate_function :mongocrypt_detry, [ :pointer ], :void |
。 mongocrypt_init (crypt) =ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
mongocrypt_t オブジェクトを初期化します。
398 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 398 accumulate_function :mongocrypt_init, [ :pointer ], :bool |
。 mongocrypt_ kms_ctx_bytes_needed ( KMS ) =整数
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
KMS コンテキストに必要なバイト数を取得します。
1054 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1054 accumulate_function :mongocrypt_ kms_ctx_bytes_needed, [ :pointer ], :int |
.mongocrypt_kms_ctx_done(ctx) ⇒ Boolean
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
libmongocrypt が mongocrypt_ kms_ctx_t オブジェクトからの応答をこれ以上受信しないことを示します。
1176 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1176 accumulate_function :mongocrypt_ctx_ kms_done, [ :pointer ], :bool |
。 mongocrypt_ kms_ctx_endpoint ( KMS 、 エンドポイント) =ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
TLS 経由で接続し、 Amazon Web Servicesのマスターキーに関する情報を取得するホスト名を取得します。
1027 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1027 accumulate_function :mongocrypt_ kms_ctx_endpoint, %i[ポインター ポインター], :bool |
.mongocrypt_kms_ctx_fail(ctx) ⇒ Object
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1140 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1140 accumulate_function :mongocrypt_ kms_ctx_fail, [ :pointer ], :bool |
。 mongocrypt_ kms_ctx_feed ( KMS , バイト) =ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
フィードは KMS から libmongocrypt に戻ります。
1073 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1073 accumulate_function :mongocrypt_ kms_ctx_feed, %i[ポインター ポインター], :bool |
。 mongocrypt_ kms_ctx_get_ kms_provider (暗号化、 kms_providers) =オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
953 954 955 956 957 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 953 accumulate_function( :mongocrypt_ kms_ctx_get_ kms_provider, %i[ポインター ポインター], :pointer ) |
。 mongocrypt_ kms_ctx_message ( KMS , ミリ秒) =ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
Amazon Web Services KMSマスターキーを取得するために必要なメッセージを取得します。
998 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 998 accumulate_function :mongocrypt_ kms_ctx_message, %i[ポインター ポインター], :bool |
。 mongocrypt_ kms_ctx_status ( KMS 、ステータス) =ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
mongocrypt_ kms_ctx_t オブジェクトのステータス情報を mongocrypt_status_t オブジェクトに書込み (write) ます。
1097 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1097 accumulate_function :mongocrypt_ kms_ctx_status, %i[ポインター ポインター], :bool |
.mongocrypt_kms_ctx_usleep(ctx) ⇒ int64
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
KMSリクエスト を送信する前に休止する時間を示します。
1121 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1121 accumulate_function :mongocrypt_kms_ctx_usleep, [ :pointer ], :int 64 |
。 mongocrypt_set_aas_ 256 _ctr (crypt, aes_ 256 _ctr_encrypt, aes_ 256 _ctr_decrypt, ctx) =ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
AES 256 -CTR 操作の暗号化フックを設定します。
1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1482 accumulate_function( :mongocrypt_setopt_aes_256_ctr, %i[ ポインター mongocrypt_crypto_fn mongocrypt_crypto_fn ポインター ], :bool ) |
。 mongocrypt_set_append_crypt_shared_lib_search_path (暗号化、パス) =======================================
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1519 1520 1521 1522 1523 1524 1525 1526 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1519 accumulate_function( :mongocrypt_set_append_crypt_shared_lib_search_path, %i[ ポインター string ], :void ) |
。 mongocrypt_set_bypass_query_analysis (crypt) =オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1458 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1458 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アルゴリズムの暗号化フックを設定します。
1375 1376 1377 1378 1379 1380 1381 1382 1383 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1375 accumulate_function( :mongocrypt_set_crypto_hook_sign_rsas_pkcs 1 _v 1 _ 5, %i[ ポインター mongocrypt_hmac_fn ポインター ], :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 オブジェクトに暗号化フックを設定します。
1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1330 accumulate_function( :mongocrypt_set_crypto_hooks, %i[ ポインター mongocrypt_crypto_fn mongocrypt_crypto_fn mongocrypt_random_fn mongocrypt_hmac_fn mongocrypt_hmac_fn mongocrypt_hash_fn ポインター ], :bool ) |
。 mongocrypt_set_encrypted_field_config_map (暗号化、efc_map)=オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1417 1418 1419 1420 1421 1422 1423 1424 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1417 accumulate_function( :mongocrypt_set_encrypted_field_config_map, %i[ ポインター ポインター ], :bool ) |
。 mongocrypt_set_ kms_providers (暗号化、 kms_providers) =オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
このメソッドを呼び出す前に、ctx を初期化しないでください。
BSON ドキュメントを使用して KMS プロバイダーを構成します。
342 343 344 345 346 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 342 accumulate_function( :mongocrypt_set_ kms_providers, %i[ポインター ポインター], :bool ) |
。 mongocrypt_set_log_handler (crypt, log_fn, log_ctx = nil) =ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
libmongocrypt がメッセージをログに記録するたびに呼び出されるように mongocrypt_t オブジェクトの ハンドラーを設定します。
313 314 315 316 317 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 313 accumulate_function( :mongocrypt_set_log_handler, %i[ポインター mongocrypt_log_fn_t ポインター], :bool ) |
。 mongocrypt_set_retry_ kms(暗号化、有効化) = オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1158 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1158 accumulate_function :mongocrypt_set_retry_ kms, %i[ポインター ブール], :bool |
。 mongocrypt_set_schema_map (暗号化、schema_map)=ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
暗号化用のローカル スキーマ マップを設定します。
373 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 373 accumulate_function :mongocrypt_set_schema_map, %i[ポインター ポインター], :bool |
。 mongocrypt_set_set_crypt_shared_lib_path_overwrite (暗号化、パス) ==============================
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1548 1549 1550 1551 1552 1553 1554 1555 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1548 accumulate_function( :mongocrypt_set_set_crypt_shared_lib_path_overwrite, %i[ ポインター string ], :void ) |
。 mongocrypt_set_use_need_ kms_credentials_ State (暗号化) =オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1627 1628 1629 1630 1631 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1627 accumulate_function( :mongocrypt_set_use_need_ kms_credentials_rate, [ :pointer ], :void ) |
。 mongocrypt_status (暗号化、ステータス)=ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
mongocrypt_status_t オブジェクトの mongocrypt_t オブジェクトからのステータス情報を設定します。
419 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 419 accumulate_function :mongocrypt_status, %i[ポインター ポインター], :bool |
。 mongocrypt_status_code (ステータス)=整数
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
ステータス エラー コードを返します。
241 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 241 accumulate_function :mongocrypt_status_code, [ :pointer ], :int |
。 mongocrypt_status_detroy (ステータス) = nil
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
mongocrypt_status_t オブジェクトへの参照を破棄します。
267 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 267 accumulate_function :mongocrypt_status_detry, [ :pointer ], :void |
.mongocrypt_status_message(status, len = nil) ⇒ String
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
ステータス メッセージを返します。
251 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 251 accumulate_function :mongocrypt_status_message, %i[ポインター ポインター], :string |
。 mongocrypt_status_new → FFI::Pointer
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
新しい mongocrypt_status_t オブジェクトを作成します。
207 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 207 accumulate_function :mongocrypt_status_new, [], :pointer |
。 mongocrypt_status_ok (status) =ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
ステータスが OK かエラーかを返します。
259 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 259 accumulate_function :mongocrypt_status_ok, [ :pointer ], :bool |
。 mongocrypt_status_set (status、type、コード、メッセージ、lan) = nil
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
既存のステータスにメッセージ、タイプ、コードを設定します。
221 222 223 224 225 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 221 accumulate_function( :mongocrypt_status_set, %i[ポインター status_type 整数 string 整数], :void ) |
.mongocrypt_status_type(status) ⇒ Symbol
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
ステータスの種類を示します。
233 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 233 accumulate_function :mongocrypt_status_type, [ :pointer ], :status_type |
。 mongocrypt_version (ven) = string
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
libmongocrypt ライブラリのバージョン string を返します。
93 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 93 accumulate_function :mongocrypt_version, [ :pointer ], :string |
。 ongocrypt_new → FFI::Pointer
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
新しい mongocrypt_t オブジェクトを作成します。
301 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 301 accumulate_function :mongocrypt_new, [], :pointer |
.parse_version(version) ⇒ Gem::Version
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
バージョン番号を表す string が指定された場合、 はそれを Gem::Version オブジェクトに解析します。 これは、いくつかのカスタム解析を実行して、string が Gem::Version でサポートされている形式にない場合を処理します。
106 107 108 109 110 111 112 113 114 115 116 117 118 119 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 106 デフォルト 自己.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 操作の暗号化フックを設定します。
1500 1501 1502 1503 1504 1505 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1500 デフォルト 自己.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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
crypt_shared 動的ライブラリをロードするための検索パスに追加の検索ディレクトリを追加します。
1533 1534 1535 1536 1537 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1533 デフォルト 自己.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 状態になることはありません。
1467 1468 1469 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1467 デフォルト 自己.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アルゴリズムの暗号化フックを SHA- 256ハッシュで設定します。
1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1392 デフォルト 自己.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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
ハンドルに暗号化コールバックを設定する
1356 1357 1358 1359 1360 1361 1362 1363 1364 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1356 デフォルト 自己.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 を設定します。
1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1435 デフォルト 自己.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 プロバイダー オプションの設定
355 356 357 358 359 360 361 362 363 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 355 デフォルト 自己.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 オブジェクトにロガーのコールバック関数を設定する
325 326 327 328 329 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 325 デフォルト 自己.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 オブジェクトにスキーマ マップを設定します
382 383 384 385 386 387 388 389 390 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 382 デフォルト 自己.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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
暗号化共有ライブラリをロードするための単一の上書きパスを設定します。
1561 1562 1563 1564 1565 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1561 デフォルト 自己.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_setopt_kms_providers の KMS プロバイダーに空のドキュメントが設定されている場合にのみ MONGOCRYPT_CTX_Atlas を入力します。
1645 1646 1647 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1645 デフォルト 自己.setopt_use_need_ kms_credentials_rate(ハンドル) mongocrypt_set_use_need_ kms_credentials_rate(ハンドル.参照) end |
.validate_document(data) ⇒ Object
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
すべての BSON::Document インスタンスも ハッシュ インスタンスです
libmongocrypt からのエラーを防ぐために、指定されたデータが BSON に直列化される前に指定されたデータがハッシュであることを確認します
1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1838 デフォルト 自己.validate_document(データ) return 場合 データ.is_a?(ハッシュ) = 場合 データ.nil? ' nil データを libmongocrypt に渡しようとしました。 ' + ' データは ハッシュ である必要があります ' else "無効なデータを libmongocrypt に渡しようとしました: #{データ} " + ' データは ハッシュ である必要があります ' end 発生 エラー::CryptError.新着情報() end |
.validate_version(lmc_version) ⇒ Object
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
libmongocrypt の提供されたバージョンが有効かどうか、つまり最小必要バージョンよりも大きいかどうかを検証します。 ロードされない場合は、LoadError が発生します。
129 130 131 132 133 134 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 129 デフォルト 自己.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 暗号化または復号化を実行する関数へのコールバック。
1248 1249 1250 1251 1252 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1248 コールバック( :mongocrypt_crypto_fn, %i[ポインター ポインター ポインター ポインター ポインター ポインター ポインター], :bool ) |
#mongocrypt_hash_fn(ctx, input, output, status) ⇒ Bool
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
これは、 FFI コールバックのメソッド署名を定義します。は、 バインディング クラスのインスタンス メソッドではありません。
SHA- 256ハッシュ関数のコールバック。
1296 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1296 コールバック :mongocrypt_hash_fn, %i[ポインター ポインター ポインター ポインター], :bool |
# mongocrypt_hmac_fn (ctx 、key、入力、出力、ステータス) =ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
これは、 FFI コールバックのメソッド署名を定義します。は、 バインディング クラスのインスタンス メソッドではありません。
HMAC SHA- 512または SHA- 256を実行する関数へのコールバック。
1273 1274 1275 1276 1277 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1273 コールバック( :mongocrypt_hmac_fn, %i[ポインター ポインター ポインター ポインター ポインター], :bool ) |
# mongocrypt_log_fn_t (レベル、メッセージ、lan、ctx) = nil
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
これは、 FFI コールバックのメソッド署名を定義します。は、 バインディング クラスのインスタンス メソッドではありません。
mongocryptログ関数のコールバック。mongocrypt_setup_log_handler メソッドでカスタムログコールバックを設定する
294 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 294 コールバック :mongocrypt_log_fn_t, %i[log_level string 整数 ポインター], :void |
# mongocrypt_readm_fn (ctx, output, count,status) =ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
これは、 FFI コールバックのメソッド署名を定義します。は、 バインディング クラスのインスタンス メソッドではありません。
暗号化されたランダム関数のコールバック。
1314 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1314 コールバック :mongocrypt_random_fn, %i[ポインター ポインター 整数 ポインター], :bool |