クラス: 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 応答を受信しないことを示します。
-
.ctx_mongo_db(context) ⇒ string
private
現在の collinfo 操作のデータベース名を取得します。
-
。 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_status(kms_context) ⇒ Mongo::Crypt::Status
private
指定された KmsContext のステータス情報をエラーを発生させずに Status オブジェクトに読み込みます。
-
.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_db(ctx) ⇒ Object private
-
.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_setopt_enable_multiple_collinfo(crypt) ⇒ オブジェクト private
- 。 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_setopt_use_need_mongo_collinfo_with_db_state(crypt) ⇒ オブジェクト 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_enable_multiple_collinfo(取り扱う) ⇒ ブール値
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 状態の処理をオプトインします。
-
。setopt_use_need_mongo_collinfo_with_db_state(取り扱う) ⇒ オブジェクト
private
MONGOCRYPT_CTX_NEED_MONGO_COLLINFO_WITH_DB 状態の処理をオプトインします。
-
.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 を発生させます。
1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1893 デフォルト 自己.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 を発生させます。
1106 1107 1108 1109 1110 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1106 デフォルト 自己.check_kms_ctx_status(kms_context) return 場合 ノードの数 kms_ctx_status(kms_context).resume_crypt_error(KMS : true) end |
。 checkpoint_status (handle) = nil
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
基礎となる mongocrypt_t オブジェクトのステータスに基づいて、 Mongo::Error::CryptError を発生させます。
1880 1881 1882 1883 1884 1885 1886 1887 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1880 デフォルト 自己.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
1619 1620 1621 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1619 デフォルト 自己.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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
コンテキストが表すステートマシンを終了する
1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1217 デフォルト 自己.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 応答を受信しないことを示します。
1194 1195 1196 1197 1198 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1194 デフォルト 自己.ctx_kms_done(context) checkpoint_ctx_status(context) 行う mongocrypt_ctx_ kms_done(context.ctx_p) end end |
.ctx_mongo_db(context) ⇒ string
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
現在の collinfo 操作のデータベース名を取得します。
1720 1721 1722 1723 1724 1725 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1720 デフォルト 自己.ctx_mongo_db(context) db_name = mongocrypt_ctx_mongo_db(context.ctx_p) return db_name 場合 db_name checkpoint_ctx_status(context) end |
。 cx_mongo_feed (context、doc)=オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
ドライバーからの応答をlibmongocryptに渡す
896 897 898 899 900 901 902 903 904 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 896 デフォルト 自己.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 を返します(たとえば、キーヴォールトクエリのフィルター)。
867 868 869 870 871 872 873 874 875 876 877 878 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 867 デフォルト 自己.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 オブジェクトを返します。
928 929 930 931 932 933 934 935 936 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 928 デフォルト 自己.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 プロバイダー設定が使用されます。
1759 1760 1761 1762 1763 1764 1765 1766 1767 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1759 デフォルト 自己.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アルゴリズムは実験的なもののみです。 対象ではありません
「範囲」アルゴリズムを使用して明示的な暗号化のオプションを設定します。
パブリックで使用します。
1866 1867 1868 1869 1870 1871 1872 1873 1874 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1866 デフォルト 自己.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暗号化にのみ使用されます。
1829 1830 1831 1832 1833 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1829 デフォルト 自己.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暗号化にのみ使用されます。
1797 1798 1799 1800 1801 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1797 デフォルト 自己.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 に必要なバイト数を取得します。
1062 1063 1064 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1062 デフォルト 自己.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のマスターキーに関する情報を取得するホスト名を取得します。
1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1038 デフォルト 自己.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 コンテキストの最後に失敗したリクエストを再試行できるかどうかを確認します。
1157 1158 1159 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1157 デフォルト 自己.kms_ctx_fail(kms_context) mongocrypt_ kms_ctx_fail(kms_context.kms_ctx_p) end |
。 kms_ctx_feed ( kms_context , バイト)==============================
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
フィードは KMS から libmongocrypt に戻ります。
1082 1083 1084 1085 1086 1087 1088 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1082 デフォルト 自己.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 に役立ちます。
969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 969 デフォルト 自己.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
1009 1010 1011 1012 1013 1014 1015 1016 1017 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1009 デフォルト 自己.(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 再試行動作を有効または無効にします。
1176 1177 1178 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1176 デフォルト 自己.kms_ctx_setopt_retry_kms(ハンドル, 価値) mongocrypt_set_retry_ kms(ハンドル.参照, 価値) end |
.kms_ctx_status(kms_context) = Mongo::Crypt::Status
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
指定された KmsContext のステータス情報をエラーを発生させずに Status オブジェクトに読み込みます。
1118 1119 1120 1121 1122 1123 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1118 デフォルト 自己.kms_ctx_status(kms_context) 状態 = ステータス.新着情報 mongocrypt_ kms_ctx_status(kms_context.kms_ctx_p, 状態.参照) 状態 end |
.kms_ctx_usleep(kms_context) ⇒ Integer
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
指定された KMS コンテキストの KMSリクエストを送信する前に休止するミリ秒数を返します。
1140 1141 1142 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1140 デフォルト 自己.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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1597 1598 1599 1600 1601 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1597 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 オブジェクトへの参照を破棄します。
1236 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1236 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 ドキュメントを返します。
1209 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1209 accumulate_function :mongocrypt_ctx_ finalize, %i[ポインター ポインター], :void |
.mongocrypt_ctx_mongo_db(ctx) ⇒ Object
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1714 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1714 accumulate_function :mongocrypt_ctx_mongo_db, [ :pointer ], :string |
.mongocrypt_ctx_mongo_done(ctx) ⇒ Boolean
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
libmongocrypt に、ドライバーが応答を送信したことを示します。
912 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 912 accumulate_function :mongocrypt_ctx_mongo_done, [ :pointer ], :bool |
。 mongocrypt_ctx_mongo_feed (ctx, 応答)=ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
libmongocrypt に BSON 応答を入力します。
888 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 888 accumulate_function :mongocrypt_ctx_mongo_feed, %i[ポインター ポインター], :bool |
。 mongocrypt_ctx_mongo_next_ kms_ctx (ctx) = FFI::Pointer
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
mongocrypt_ kms_ctx_t オブジェクトまたは NULL へのポインターを返します。
920 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 920 accumulate_function :mongocrypt_ctx_next_kms_ctx, [ :pointer ], :pointer |
。 mongocrypt_ctx_mongo_op (ctx, op_bson) =ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
ドライバーが MongoDB コレクション、キーヴォールトデータベース、または mongocryptd に対して実行する BSON 操作を取得します。
856 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 856 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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1742 1743 1744 1745 1746 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1742 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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1848 1849 1850 1851 1852 1853 1854 1855 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1848 accumulate_function( :mongocrypt_ctx_setup_algorithm_range, %i[ ポインター ポインター ], :bool ) |
。 mongocrypt_ctx_set_contention_factor (ctx, MongoDB )=オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1813 1814 1815 1816 1817 1818 1819 1820 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1813 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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1780 1781 1782 1783 1784 1785 1786 1787 1788 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1780 accumulate_function( :mongocrypt_ctx_set_query_type, %i[ ポインター string 整数 ], :bool ) |
。 mongocrypt_ctx_ State (ctx) =シンボル
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
cstring の現在の状態を取得します。
844 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 844 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 コンテキストに必要なバイト数を取得します。
1055 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1055 accumulate_function :mongocrypt_ kms_ctx_bytes_needed, [ :pointer ], :int |
.mongocrypt_kms_ctx_done(ctx) ⇒ Boolean
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
libmongocrypt が mongocrypt_ kms_ctx_t オブジェクトからの応答をこれ以上受信しないことを示します。
1187 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1187 accumulate_function :mongocrypt_ctx_ kms_done, [ :pointer ], :bool |
。 mongocrypt_ kms_ctx_endpoint ( KMS 、 エンドポイント) =ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
TLS 経由で接続し、 Amazon Web Servicesのマスターキーに関する情報を取得するホスト名を取得します。
1028 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1028 accumulate_function :mongocrypt_ kms_ctx_endpoint, %i[ポインター ポインター], :bool |
.mongocrypt_kms_ctx_fail(ctx) ⇒ Object
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1151 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1151 accumulate_function :mongocrypt_ kms_ctx_fail, [ :pointer ], :bool |
。 mongocrypt_ kms_ctx_feed ( KMS , バイト) =ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
フィードは KMS から libmongocrypt に戻ります。
1074 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1074 accumulate_function :mongocrypt_ kms_ctx_feed, %i[ポインター ポインター], :bool |
。 mongocrypt_ kms_ctx_get_ kms_provider (暗号化、 kms_providers) =オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
954 955 956 957 958 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 954 accumulate_function( :mongocrypt_ kms_ctx_get_ kms_provider, %i[ポインター ポインター], :pointer ) |
。 mongocrypt_ kms_ctx_message ( KMS , ミリ秒) =ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
Amazon Web Services KMSマスターキーを取得するために必要なメッセージを取得します。
999 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 999 accumulate_function :mongocrypt_ kms_ctx_message, %i[ポインター ポインター], :bool |
。 mongocrypt_ kms_ctx_status ( KMS 、ステータス) =ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
mongocrypt_ kms_ctx_t オブジェクトのステータス情報を mongocrypt_status_t オブジェクトに書込み (write) ます。
1098 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1098 accumulate_function :mongocrypt_ kms_ctx_status, %i[ポインター ポインター], :bool |
.mongocrypt_kms_ctx_usleep(ctx) ⇒ int64
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
KMSリクエスト を送信する前に休止する時間を示します。
1132 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1132 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 操作の暗号化フックを設定します。
1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1493 accumulate_function( :mongocrypt_setopt_aes_256_ctr, %i[ ポインター mongocrypt_crypto_fn mongocrypt_crypto_fn ポインター ], :bool ) |
。 mongocrypt_set_append_crypt_shared_lib_search_path (暗号化、パス) =======================================
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1530 1531 1532 1533 1534 1535 1536 1537 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1530 accumulate_function( :mongocrypt_set_append_crypt_shared_lib_search_path, %i[ ポインター string ], :void ) |
。 mongocrypt_set_bypass_query_analysis (crypt) =オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1469 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1469 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アルゴリズムの暗号化フックを設定します。
1386 1387 1388 1389 1390 1391 1392 1393 1394 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1386 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 オブジェクトに暗号化フックを設定します。
1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1341 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_setopt_enable_multiple_collinfo(crypt) ⇒ オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1668 1669 1670 1671 1672 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1668 accumulate_function( :mongocrypt_setopt_enable_multiple_collinfo, [ :pointer ], :bool ) |
。 mongocrypt_set_encrypted_field_config_map (暗号化、efc_map)=オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1428 1429 1430 1431 1432 1433 1434 1435 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1428 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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1169 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1169 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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1559 1560 1561 1562 1563 1564 1565 1566 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1559 accumulate_function( :mongocrypt_set_set_crypt_shared_lib_path_overwrite, %i[ ポインター string ], :void ) |
。 mongocrypt_set_use_need_ kms_credentials_ State (暗号化) =オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1638 1639 1640 1641 1642 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1638 accumulate_function( :mongocrypt_set_use_need_ kms_credentials_rate, [ :pointer ], :void ) |
.mongocrypt_setopt_use_need_mongo_collinfo_with_db_state(crypt) ⇒ オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
1692 1693 1694 1695 1696 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1692 accumulate_function( :mongocrypt_setopt_use_need_mongo_collinfo_with_db_state, [ :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 操作の暗号化フックを設定します。
1511 1512 1513 1514 1515 1516 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1511 デフォルト 自己.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 動的ライブラリをロードするための検索パスに追加の検索ディレクトリを追加します。
1544 1545 1546 1547 1548 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1544 デフォルト 自己.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 状態になることはありません。
1478 1479 1480 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1478 デフォルト 自己.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ハッシュで設定します。
1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1403 デフォルト 自己.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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
ハンドルに暗号化コールバックを設定する
1367 1368 1369 1370 1371 1372 1373 1374 1375 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1367 デフォルト 自己.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_enable_multiple_collinfo(取り扱う) ⇒ ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
複数のコレクション スキーマに対するサポートを有効にします。$lookup をサポートするために必要です。
1678 1679 1680 1681 1682 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1678 デフォルト 自己.setopt_enable_multiple_collinfo(ハンドル) check_status(ハンドル) 行う mongocrypt_setopt_enable_multiple_collinfo(ハンドル.参照) end end |
。 setopt_encrypted_field_config_map (handle、efc_map)=オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
暗号化用にローカル EncryptedFieldConfigMap を設定します。
1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1446 デフォルト 自己.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 の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
暗号化共有ライブラリをロードするための単一の上書きパスを設定します。
1572 1573 1574 1575 1576 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1572 デフォルト 自己.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 を入力します。
1656 1657 1658 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1656 デフォルト 自己.setopt_use_need_ kms_credentials_rate(ハンドル) mongocrypt_set_use_need_ kms_credentials_rate(ハンドル.参照) end |
.setopt_use_need_mongo_collinfo_with_db_state(取り扱う) ⇒ オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
MONGOCRYPT_CTX_NEED_MONGO_COLLINFO_WITH_DB 状態の処理をオプトインします。
1701 1702 1703 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1701 デフォルト 自己.setopt_use_need_mongo_collinfo_with_db_state(ハンドル) mongocrypt_setopt_use_need_mongo_collinfo_with_db_state(ハンドル.参照) end |
.validate_document(data) ⇒ Object
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
すべての BSON::Document インスタンスも ハッシュ インスタンスです
libmongocrypt からのエラーを防ぐために、指定されたデータが BSON に直列化される前に指定されたデータがハッシュであることを確認します
1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1916 デフォルト 自己.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 暗号化または復号化を実行する関数へのコールバック。
1259 1260 1261 1262 1263 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1259 コールバック( :mongocrypt_crypto_fn, %i[ポインター ポインター ポインター ポインター ポインター ポインター ポインター], :bool ) |
#mongocrypt_hash_fn(ctx, input, output, status) ⇒ Bool
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
これは、 FFI コールバックのメソッド署名を定義します。は、 バインディング クラスのインスタンス メソッドではありません。
SHA- 256ハッシュ関数のコールバック。
1307 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1307 コールバック :mongocrypt_hash_fn, %i[ポインター ポインター ポインター ポインター], :bool |
# mongocrypt_hmac_fn (ctx 、key、入力、出力、ステータス) =ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
これは、 FFI コールバックのメソッド署名を定義します。は、 バインディング クラスのインスタンス メソッドではありません。
HMAC SHA- 512または SHA- 256を実行する関数へのコールバック。
1284 1285 1286 1287 1288 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1284 コールバック( :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 コールバックのメソッド署名を定義します。は、 バインディング クラスのインスタンス メソッドではありません。
暗号化されたランダム関数のコールバック。
1325 |
# ファイル 'lib/mongo/crypt/bining.rb' 行 1325 コールバック :mongocrypt_random_fn, %i[ポインター ポインター 整数 ポインター], :bool |