클래스: Mongo::Crypt:: 프라이빗바인딩
개요
이 클래스는 비공개 API의 일부입니다. 이 클래스는 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
libmongocrypt C 라이브러리를 위한 Ruby 바인딩
상수 요약 접기
- MIN_LIBMONGOCRYPT_VERSION =
이 상수는 비공개 API의 일부입니다. 이 상수는 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
이 버전의 운전자 에 필요한 libmongocrypt의 최소 버전입니다. 이전 버전의 libmongocrypt에서 드라이버 사용하려고 하면
LoadError이(가) 발생합니다. Gem::버전.신규('1.12.0')
클래스 메서드 요약 접기
-
.check_ctx_status(컨텍스트) ⇒ nil
비공개
기본 mongocrypt_ctx_t 객체의 상태에 따라 Mongo::Error::CryptError를 발생시킵니다.
-
.check_kms_ctx_status(kms_context) ⇒ 객체
비공개
제공된 차단이 false를 반환하면 제공된 KmsContext 객체의 상태 정보를 사용하여 CryptError를 발생시킵니다.
-
.check_status(handle) ⇒ nil
비공개
기본 mongocrypt_t 객체 의 상태에 따라 Mongo::Error::CryptError를 발생시킵니다.
-
.crypt_shared_lib_version(처리하다) ⇒ 정수
비공개
사용 가능한 경우 로드된 crypt_shared 라이브러리의 버전을 인코딩하는 64비트 상수를 가져옵니다.
-
.ctx_datakey_init(context) ⇒ 객체
비공개
컨텍스트를 초기화하여 데이터 키를 생성합니다.
-
.ctx_decrypt_init(컨텍스트, 명령) ⇒ 객체
비공개
자동 복호화를 위해 컨텍스트를 초기화합니다.
-
.ctx_encrypt_init(context, db_name, 명령) ⇒ 객체
비공개
자동 암호화를 위해 컨텍스트를 초기화합니다.
-
.ctx_explicit_decrypt_init(context, doc) ⇒ Object
비공개
명시적 암호 해독을 위해 컨텍스트를 초기화합니다.
-
.ctx_explicit_encrypt_expression_init(context, doc) ⇒ Object
비공개
명시적 표현식 암호화 를 위해 컨텍스트를 초기화합니다.
-
.ctx_explicit_encrypt_init(context, doc) ⇒ Object
비공개
명시적 암호화 를 위해 컨텍스트를 초기화합니다.
-
.ctx_finalize(context) ⇒ 객체
비공개
컨텍스트가 나타내는 상태 머신을 마무리합니다.
-
.ctx_kms_done(context) ⇒ Object
비공개
더 이상 KMS 응답을 받지 않음을 libmongocrypt에 표시합니다.
-
.ctx_mongo_피드(context, doc) ⇒ 객체
비공개
운전자 의 응답을 libmongocrypt에 다시 공급합니다.
-
.ctx_mongo_op(context) ⇒ BSON::Document
비공개
운전자 가 암호화/복호화를 계속하기 위해 필요한 정보를 얻기 위해 libmongocrypt를 대신하여 수행해야 하는 작업( 예시 : 키 볼트 쿼리 용 필터하다 )을 나타내는 BSON ::Document를 반환합니다.
-
.ctx_next_kms_ctx(context) ⇒ Mongo::Crypt::KmsContext | nil
비공개
컨텍스트 객체 에 필요한 새 KmsContext 객체 를 반환합니다.
-
.ctx_provide_kms_providers(context, kms_providers) ⇒ 객체
비공개
MongOCRYPT_CTX_NEED_KMS_CREDENTIALS 상태에 대한 응답으로 호출하여 컨텍스트별 KMS 제공자 설정을 지정합니다.
-
.ctx_rerap_many_datakey_init(컨텍스트, 필터) ⇒ 부울
비공개
컨텍스트를 초기화하여 데이터 키를 다시 래핑합니다.
-
.ctx_setopt_algorithm(컨텍스트, 이름) ⇒ 객체
비공개
컨텍스트에 알고리즘 을 설정합니다.
-
.ctx_setopt_algorithm_range(context, opts) ⇒ 객체
비공개
"범위" 알고리즘 사용하여 명시적 암호화 에 대한 옵션을 설정합니다.
-
.ctx_setopt_contention_factor(context, factor) ⇒ 객체
비공개
명시적 암호화 에 사용되는 경합 요인을 설정합니다.
-
.ctx_setopt_key_alt_names(context, key_alt_names) ⇒ 객체
비공개
데이터 키 생성 시 여러 개의 대체 키 이름을 설정합니다.
-
.ctx_setopt_key_encryption_key(context, key_document) ⇒ 객체
비공개
데이터 키 생성을 위한 키 암호화 키 문서 를 설정합니다.
-
.ctx_setopt_key_id(context, key_id) ⇒ Object
비공개
명시적 암호화 컨텍스트에서 키 ID 옵션을 설정합니다.
-
.ctx_setopt_key_material(context, key_material) ⇒ 객체
비공개
데이터 암호화에 사용할 사용자 지정 키 자료를 설정합니다.
-
.ctx_setopt_query_type(context, query_type) ⇒ 객체
비공개
FLE 2 명시적 암호화 에 사용할 쿼리 유형을 설정합니다.
- .get_binary_data_direct(mongocrypt_binary_t) ⇒ 객체 비공개
- .get_binary_len_direct(mongocrypt_binary_t) ⇒ 객체 비공개
-
.init(처리하다) ⇒ 객체
비공개
Mongo::Crypt::Handle 객체를 초기화합니다.
-
.kms_ctx_bytes_needed(kms_context) ⇒ 정수
비공개
KmsContext에 필요한 바이트 수를 가져옵니다.
-
.kms_ctx_endpoint(kms_context) ⇒ String | nil
비공개
Amazon Web Services 마스터 키에 대한 정보를 가져오기 위해 TLS를 통해 연결할 호스트 이름을 가져옵니다.
-
.kms_ctx_fail(kms_context) ⇒ true, false
비공개
KMS 컨텍스트에 대해 마지막으로 실패한 요청 다시 시도할 수 있는지 확인합니다.
-
.kms_ctx_피드(kms_context, 바이트) ⇒ 객체
비공개
KMS 의 응답을 libmongocrypt에 다시 피드합니다.
-
.kms_ctx_get_kms_provider(kms_context) ⇒ 객체
비공개
이 KMS 요청 과 연결된 KMS 제공자 식별자를 가져옵니다.
-
.kms_ctx_message(kms_context) ⇒ String
비공개
KmsContext 객체 에서 마스터 키를 가져오는 데 필요한 메시지를 가져옵니다.HTTP Amazon Web Services KMS
-
.kms_ctx_setopt_retry_kms(handle, value) ⇒ true, fale
비공개
KMS 재시도 동작을 활성화하거나 비활성화합니다.
-
.kms_ctx_usleep(kms_context) ⇒ Integer
비공개
지정된 KMS 컨텍스트에 대해 KMS 요청 보내기 전에 절전 모드로 전환할 시간(밀리초)을 반환합니다.
-
.mongocrypt_binary_data(binary) ⇒ FFI::Pointer
비공개
mongocrypt_binary_t의 기본 데이터에 대한 포인터를 가져옵니다.
-
.mongocrypt_binary_destory(binary) ⇒ nil
비공개
mongocrypt_binary_t 객체 를 삭제합니다.
-
.mongocrypt_binary_len(바이너리) ⇒ 정수
비공개
기본 데이터 배열의 길이를 가져옵니다.
-
.mongocrypt_binary_new ⇒ FFI::Pointer
비공개
새 mongocrypt_binary_t 객체(바이트 배열의 비소유 뷰)를 만듭니다.
-
.mongocrypt_binary_new_from_data(data, len) ⇒ FFI::Pointer
비공개
지정된 바이트 배열에 대한 포인터를 유지하는 새 mongocrypt_binary_t 객체를 만듭니다.
- .mongocrypt_crypt_shared_lib_version(crypt) ⇒ 객체 비공개
- .mongocrypt_ctx_datakey_init(ctx, 필터하다) ⇒ 객체 비공개
-
.mongocrypt_ctx_decrypt_init(ctx, doc) ⇒ Boolean
비공개
자동 복호화를 위해 ctx를 초기화합니다.
-
.mongocrypt_ctx_destory(ctx) ⇒ nil
비공개
mongocrypt_ctx_t 객체 에 대한 참조를 삭제합니다.
-
.mongocrypt_ctx_encrypt_init(ctx, db, db_len, cmd) ⇒ 부울
비공개
자동 암호화를 위해 ctx를 초기화합니다.
-
.mongocrypt_ctx_explicit_decrypt_init(ctx, msg) ⇒ Boolean
비공개
명시적 암호 해독을 위해 ctx를 초기화합니다.
-
.mongocrypt_ctx_explicit_encrypt_init(ctx, msg) ⇒ Boolean
비공개
명시적 표현식 암호화 를 위해 ctx를 초기화합니다.
-
.mongocrypt_ctx_finalize(ctx, op_bson) ⇒ 부울
비공개
최종 암호화 또는 암호 해독을 수행하고 BSON 문서 를 반환합니다.
-
.mongocrypt_ctx_mongo_done(ctx) ⇒ Boolean
비공개
운전자 에 응답 제공이 완료되었음을 libmongocrypt에 표시합니다.
-
.mongocrypt_ctx_mongo_피드(ctx, 회신) ⇒ 부울
비공개
libmongocrypt에 BSON 응답을 피드.
-
.mongocrypt_ctx_mongo_next_kms_ctx(ctx) ⇒ FFI::Pointer
비공개
mongocrypt_kms_ctx_t 객체 에 대한 포인터 또는 NULL을 반환합니다.
-
.mongocrypt_ctx_mongo_op(ctx, op_bson) ⇒ 부울
비공개
운전자 가 MongoDB 컬렉션, 키 볼트 데이터베이스 또는 mongocryptd 에 대해 실행 BSON 작업을 가져옵니다.
-
.mongocrypt_ctx_new(crypt) ⇒ FFI::Pointer
비공개
새 mongocrypt_ctx_t 객체 (libmongocrypt 상태 시스템용 래퍼)를 만듭니다.
- .mongocrypt_ctx_provide_kms_providers(ctx, kms_providers) ⇒ 객체 비공개
-
.mongocrypt_ctx_setopt_algorithm(ctx, 알고리즘, len) ⇒ 부울
비공개
명시적 암호화에 사용되는 알고리즘을 설정합니다.
- .mongocrypt_ctx_setopt_algorithm_range(ctx, opts) ⇒ 객체 비공개
- .mongocrypt_ctx_setopt_contention_factor(ctx,contention_factor) ⇒ 객체 비공개
-
.mongocrypt_ctx_setopt_key_alt_name(ctx, 바이너리) ⇒ 부울
비공개
데이터 키를 생성할 때 해당 키에 대체 이름을 설정하다 합니다.
-
.mongocrypt_ctx_setopt_key_encryption_key(ctx) ⇒ 부울
비공개
데이터 키 생성을 위한 키 암호화 키 문서 를 설정합니다.
-
.mongocrypt_ctx_setopt_key_id(ctx, key_id) ⇒ Boolean
비공개
명시적 암호화 에 사용되는 키 ID를 설정합니다.
-
.mongocrypt_ctx_setopt_key_material(ctx, 바이너리) ⇒ 부울
비공개
데이터 키를 생성할 때 데이터 암호화에 사용할 사용자 지정 주 자료 를 설정하다 합니다.
- .mongocrypt_ctx_setopt_query_type(ctx, mongocrypt_query_type) ⇒ 객체 비공개
-
.mongocrypt_ctx_state(ctx) ⇒ 기호
비공개
ctx의 현재 상태를 가져옵니다.
-
.mongocrypt_ctx_status(ctx, status) ⇒ 부울
비공개
mongocrypt_status_t 객체의 mongocrypt_ctx_t 객체 에서 상태 정보를 설정 객체.
-
.mongocrypt_destory(crypt) ⇒ nil
비공개
참조를 mongocrypt_t 객체를 삭제합니다.
-
.mongocrypt_init(crypt) ⇒ 부울
비공개
mongocrypt_t 객체 를 초기화합니다.
-
.mongocrypt_kms_ctx_bytes_needed(KMS) ⇒ 정수
비공개
KMS 컨텍스트에 필요한 바이트 수를 가져옵니다.
-
.mongocrypt_kms_ctx_done(ctx) ⇒ Boolean
비공개
mongocrypt_kms_ctx_t 객체로부터 더 이상 응답을 받지 않음을 libmongocrypt에 표시합니다.
-
.mongocrypt_kms_ctx_endpoint(KMS, endpoint) ⇒ 부울
비공개
Amazon Web Services 마스터 키에 대한 정보를 가져오기 위해 TLS를 통해 연결할 호스트 이름을 가져옵니다.
- .mongocrypt_kms_ctx_fail(ctx) ⇒ Object 비공개
-
.mongocrypt_kms_ctx_피드(KMS, 바이트) ⇒ 부울
비공개
KMS 의 응답을 libmongocrypt에 다시 피드합니다.
- .mongocrypt_kms_ctx_get_kms_provider(crypt, kms_providers) ⇒ 객체 비공개
-
.mongocrypt_kms_ctx_message(KMS, msg) ⇒ 부울
비공개
Amazon Web Services KMS 마스터 키를 가져오는 데 필요한 메시지를 가져옵니다.
-
.mongocrypt_kms_ctx_status(KMS, status) ⇒ 부울
비공개
mongocrypt_kms_ctx_t 객체에 대한 상태 정보를 mongocrypt_status_t 객체에 씁니다.
-
.mongocrypt_kms_ctx_usleep(ctx) ⇒ int64
비공개
KMS 요청 보내기 전에 휴면 상태로 유지되는 시간을 나타냅니다.
-
.mongocrypt_setopt_aes_256_ctr(crypt, aes_256_ctr_encrypt, aes_256_ctr_decrypt, ctx) ⇒ 부울
비공개
AES256-CTR 작업에 대한 암호화 훅을 설정합니다.
- .mongocrypt_setopt_append_crypt_shared_lib_search_path(crypt, 경로) ⇒ 객체 비공개
- .mongocrypt_setopt_bypass_query_analysis(crypt) ⇒ 객체 비공개
-
.mongocrypt_setopt_crypto_hook_sign_rsaes_pkcs1_v1_5(crypt, sign_rsaes_pkcs1_v1_5, ctx = nil) ⇒ 부울
비공개
SHA-256 해시를 사용하여 RSASSA-PKCS1-v1_5 알고리즘 에 대한 크립토 훅을 설정합니다.
-
.mongocrypt_setopt_crypto_hooks(crypt, aes_enc_fn, aes_dec_fn, random_fn, sha_512_fn, sha_256_fn, hash_fn, ctx = nil) ⇒ 부울
비공개
제공된 mongocrypt 객체 에 암호화 후크를 설정합니다.
- .mongocrypt_setopt_encrypted_field_config_map(crypt, efc_map) ⇒ 객체 비공개
-
.mongocrypt_setopt_kms_providers(crypt, kms_providers) ⇒ 객체
비공개
BSON 문서 로 KMS 제공자를 구성합니다.
-
.mongocrypt_setopt_log_handler(crypt, log_fn, log_ctx = nil) ⇒ 부울
비공개
libmongocrypt가 메시지를 기록할 때마다 호출되도록 mongocrypt_t 객체의 핸들러를 설정합니다.
- .mongocrypt_setopt_retry_kms(crypt, 활성화) ⇒ 객체 비공개
-
.mongocrypt_setopt_schema_map(crypt, schema_map) ⇒ 부울
비공개
암호화를 위한 로컬 스키마 맵을 설정합니다.
- .mongocrypt_setopt_set_crypt_shared_lib_path_override(crypt, 경로) ⇒ 객체 비공개
- .mongocrypt_setopt_use_need_kms_credentials_state(crypt) ⇒ 객체 비공개
-
.mongocrypt_status(crypt, status) ⇒ 부울
비공개
mongocrypt_status_t 객체의 mongocrypt_t 객체 에서 상태 정보를 설정 객체.
-
.mongocrypt_status_code(status) ⇒ 정수
비공개
상태 오류 코드를 반환합니다.
-
.mongocrypt_status_destroy(status) ⇒ nil
비공개
mongocrypt_status_t 객체에 대한 참조를 삭제합니다.
-
.mongocrypt_status_message(status, len = nil) ⇒ String
비공개
상태 메시지를 반환합니다.
-
.mongocrypt_status_new ⇒ FFI::Pointer
비공개
새 mongocrypt_status_t 객체를 만듭니다.
-
.mongocrypt_status_ok(status) ⇒ 부울
비공개
상태가 정상인지 오류인지를 반환합니다.
-
.mongocrypt_status_set(상태, 유형, 코드, 메시지, len) ⇒ nil
비공개
기존 상태에 대한 메시지, 유형 및 코드를 설정합니다.
-
.mongocrypt_status_type(status) ⇒ Symbol
비공개
상태 유형을 나타냅니다.
-
.mongocrypt_version(len) ⇒ string
비공개
libmongocrypt 라이브러리의 버전 string 을 반환합니다.
-
.ongocrypt_new ⇒ FFI::Pointer
비공개
새 mongocrypt_t 객체 를 만듭니다.
-
.parse_version(version) ⇒ Gem::Version
비공개
버전 번호를 나타내는 string 이 주어지면 이를 Gem::Version 객체로 구문 분석합니다.
-
.setopt_aes_256_ctr(처리하다, aes_ctr_encrypt_cb, aes_ctr_decrypt_cb) ⇒ 객체
비공개
AES256-CTR 작업에 대한 암호화 훅을 설정합니다.
-
.setopt_append_crypt_shared_lib_search_path(처리하다, 경로) ⇒ 객체
비공개
crypt_shared 동적 라이브러리를 로드하기 위해 검색 경로에 추가 검색 디렉토리 를 추가합니다.
-
.setopt_bypass_query_analysis(처리하다) ⇒ 객체
비공개
쿼리 분석 건너뛰기를 선택합니다.
-
.setopt_crypto_hook_sign_rsaes_pkcs1_v1_5(처리하다, rsaes_pkcs_signature_cb) ⇒ 객체
비공개
SHA-256 해시를 사용하여 RSASSA-PKCS1-v1_5 알고리즘 에 대한 크립토 훅을 핸들로 설정합니다.
-
.setopt_crypto_hooks(처리하다, aes_encrypt_cb, aes_decrypt_cb, random_cb, hmac_sha_512_cb, hmac_sha_256_cb, hmac_hash_cb) ⇒ 객체
비공개
핸들에서 암호화 콜백을 설정합니다.
-
.setopt_encrypted_field_config_map(처리하다, efc_map) ⇒ 객체
비공개
암호화 를 위해 로컬 EncryptedFieldConfigMap을 설정합니다.
-
.setopt_kms_providers(처리하다, kms_providers) ⇒ 객체
비공개
Mongo::Crypt::Handle 객체 에 KMS 제공자 옵션을 설정합니다.
-
.setopt_log_handler(handle, log_callback) ⇒ 객체
비공개
Mongo::Crypt::Handle 객체에서 로거 콜백 함수를 설정합니다.
-
.setopt_schema_map(처리하다, schema_map_doc) ⇒ 객체
비공개
Mongo::Crypt::Handle 객체 에 스키마 맵을 설정합니다.
-
.setopt_set_crypt_shared_lib_path_override(처리하다, 경로) ⇒ 객체
비공개
crypt 공유 라이브러리를 로드하기 위한 단일 재정의 경로를 설정합니다.
-
.setopt_use_need_kms_credentials_state(처리하다) ⇒ 객체
비공개
MONGOCRYPT_CTX_NEED_KMS_CREDENTIALS 상태 를 처리하도록 옵트인합니다.
-
.validate_document(data) ⇒ Object
비공개
libmongocrypt의 오류를 방지하기 위해 BSON으로 직렬화하기 전에 지정된 데이터가 해시인지 확인합니다.
-
.validate_version(lmc_version) ⇒ Object
비공개
제공된 libmongocrypt 버전이 유효한지 확인합니다.
인스턴스 메서드 요약 접기
-
#mongocrypt_crypto_fn(ctx, 키, iv, 입력, 출력, 상태) ⇒ Bool
비공개
AES 암호화 또는 복호화를 수행하는 함수에 대한 콜백 입니다.
-
#mongocrypt_hash_fn(ctx, input, output, status) ⇒ Bool
비공개
SHA-256 해시 함수에 대한 콜백 입니다.
-
#mongocrypt_hmac_fn(ctx, 키, 입력, 출력, 상태) ⇒ Bool
비공개
HMAC SHA-512 또는 SHA-256 를 수행하는 함수에 대한 콜백입니다.
-
#mongocrypt_log_fn_t(레벨, 메시지, len, ctx) ⇒ nil
비공개
mongocrypt 로그 함수에 대한 콜백 입니다.
-
#mongocrypt_random_fn(ctx, 출력, 카운트, 상태) ⇒ Bool
비공개
암호화된 보안 임의 함수에 대한 콜백 입니다.
클래스 메서드 세부 정보
.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/Binding.rb', 줄 1815 def self.check_ctx_status(컨텍스트) do_raise = 만약 block_given? !yield other true end 반환 하지 않는 한 do_raise 상태 = 상태.신규 mongocrypt_ctx_status(컨텍스트.ctx_p, 상태.ref) 상태.raise_crypt_error end |
.check_kms_ctx_status(kms_context) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
제공된 차단이 false를 반환하면 제공된 KmsContext 객체의 상태 정보를 사용하여 CryptError를 발생시킵니다.
1105 1106 1107 1108 1109 1110 1111 1112 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1105 def self.check_kms_ctx_status(kms_context) 반환 만약 yield 상태 = 상태.신규 mongocrypt_kms_ctx_status(kms_context.kms_ctx_p, 상태.ref) 상태.raise_crypt_error(KMS: true) end |
.check_status(처리하다) ⇒ nil
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
기본 mongocrypt_t 객체 의 상태에 따라 Mongo::Error::CryptError를 발생시킵니다.
1802 1803 1804 1805 1806 1807 1808 1809 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1802 def self.check_status(처리하다) 반환 만약 yield 상태 = 상태.신규 mongocrypt_status(처리하다.ref, 상태.ref) 상태.raise_crypt_error end |
.crypt_shared_lib_version(처리하다) ⇒ 정수
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
사용 가능한 경우 로드된 crypt_shared 라이브러리의 버전을 인코딩하는 64비트 상수를 가져옵니다.
버전은 높은 것부터 낮은 것까지 4개의 16비트 숫자로 인코딩됩니다.
- 주요 버전
- 마이너 버전
- 수정본
- 예약됨
예시 들어 6.2.1 버전은 0x0006'0002'0001'0000로 인코딩됩니다.
1608 1609 1610 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1608 def self.crypt_shared_lib_version(처리하다) mongocrypt_crypt_shared_lib_version(처리하다.ref) end |
.ctx_datakey_init(context) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
컨텍스트를 초기화하여 데이터 키 생성
623 624 625 626 627 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 623 def self.ctx_datakey_init(컨텍스트) check_ctx_status(컨텍스트) do mongocrypt_ctx_datakey_init(컨텍스트.ctx_p) end end |
.ctx_decrypt_init(컨텍스트, 명령) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
자동 복호화를 위한 컨텍스트 초기화
784 785 786 787 788 789 790 791 792 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 784 def self.ctx_decrypt_init(컨텍스트, 명령) validate_document(명령) 데이터 = 명령.to_bson.to_s 바이너리.랩 문자열(데이터) do |data_p| check_ctx_status(컨텍스트) do mongocrypt_ctx_decrypt_init(컨텍스트.ctx_p, data_p) end end end |
.ctx_encrypt_init(context, db_name, 명령) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
자동 암호화를 위한 컨텍스트 초기화
690 691 692 693 694 695 696 697 698 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 690 def self.ctx_encrypt_init(컨텍스트, db_name, 명령) validate_document(명령) 데이터 = 명령.to_bson.to_s 바이너리.랩 문자열(데이터) do |data_p| check_ctx_status(컨텍스트) do mongocrypt_ctx_encrypt_init(컨텍스트.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/Binding.rb', 줄 814 def self.ctx_explicit_decrypt_init(컨텍스트, doc) validate_document(doc) 데이터 = doc.to_bson.to_s 바이너리.랩 문자열(데이터) do |data_p| check_ctx_status(컨텍스트) do mongocrypt_ctx_explicit_decrypt_init(컨텍스트.ctx_p, data_p) end end end |
.ctx_explicit_encrypt_expression_init(context, doc) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
명시적 표현식 암호화 를 위해 컨텍스트를 초기화합니다.
758 759 760 761 762 763 764 765 766 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 758 def self.ctx_explicit_encrypt_expression_init(컨텍스트, doc) validate_document(doc) 데이터 = doc.to_bson.to_s 바이너리.랩 문자열(데이터) do |data_p| check_ctx_status(컨텍스트) do mongocrypt_ctx_explicit_encrypt_expression_init(컨텍스트.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/Binding.rb', 줄 724 def self.ctx_explicit_encrypt_init(컨텍스트, doc) validate_document(doc) 데이터 = doc.to_bson.to_s 바이너리.랩 문자열(데이터) do |data_p| check_ctx_status(컨텍스트) do mongocrypt_ctx_explicit_encrypt_init(컨텍스트.ctx_p, data_p) end end end |
.ctx_finalize(context) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
컨텍스트(Context)로 표현되는 상태 머신을 마무리합니다.
1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1206 def self.ctx_finalize(컨텍스트) 바이너리 = 바이너리.신규 check_ctx_status(컨텍스트) do mongocrypt_ctx_finalize(컨텍스트.ctx_p, 바이너리.ref) end # TODO: 바이너리가 C 포인터를 참조하고 ByteBuffer가 # MRI에서 C로 작성된 경우 다음을 수행하여 데이터 사본을 생략할 수 있습니다. # ByteBuffer는 libmongocrypt가 소유한 string 을 참조합니다. BSON::문서.from_bson(BSON::ByteBuffer.신규(바이너리.to_s), 모드: 컨텍스트.bson_mode) end |
.ctx_kms_done(context) ⇒ Object
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
더 이상 KMS 응답을 받지 않음을 libmongocrypt에 표시합니다.
1183 1184 1185 1186 1187 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1183 def self.ctx_kms_done(컨텍스트) check_ctx_status(컨텍스트) do mongocrypt_ctx_kms_done(컨텍스트.ctx_p) end end |
.ctx_mongo_피드(context, doc) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
운전자 의 응답을 libmongocrypt에 다시 피드
895 896 897 898 899 900 901 902 903 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 895 def self.ctx_mongo_피드(컨텍스트, doc) validate_document(doc) 데이터 = doc.to_bson.to_s 바이너리.랩 문자열(데이터) do |data_p| check_ctx_status(컨텍스트) do mongocrypt_ctx_mongo_피드(컨텍스트.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/Binding.rb', 줄 866 def self.ctx_mongo_op(컨텍스트) 바이너리 = 바이너리.신규 check_ctx_status(컨텍스트) do mongocrypt_ctx_mongo_op(컨텍스트.ctx_p, 바이너리.ref) end # TODO: 바이너리가 C 포인터를 참조하고 ByteBuffer가 # MRI에서 C로 작성된 경우 다음을 수행하여 데이터 사본을 생략할 수 있습니다. # ByteBuffer는 libmongocrypt가 소유한 string 을 참조합니다. BSON::문서.from_bson(BSON::ByteBuffer.신규(바이너리.to_s), 모드: :bson) end |
.ctx_next_kms_ctx(context) ⇒ Mongo::Crypt::KmsContext | nil
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
컨텍스트 객체 에 필요한 새 KmsContext 객체 를 반환합니다.
927 928 929 930 931 932 933 934 935 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 927 def self.ctx_next_kms_ctx(컨텍스트) kms_ctx_p = mongocrypt_ctx_next_kms_ctx(컨텍스트.ctx_p) 만약 kms_ctx_p.null? nil other KmsContext.신규(kms_ctx_p) end end |
.ctx_provide_kms_providers(context, kms_providers) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
MongOCRYPT_CTX_NEED_KMS_CREDENTIALS 상태 에 대한 응답으로 호출하여 컨텍스트별 KMS 제공자 설정을 설정하다 합니다. 이는 `mongocrypt_setopt_kms_providers``와 동일한 형식을 따릅니다. BSON 입력에 키가 없는 경우 초기화 시 mongocrypt_t에 대해 구성된 KMS 제공자 설정이 사용됩니다.
1681 1682 1683 1684 1685 1686 1687 1688 1689 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1681 def self.ctx_provide_kms_providers(컨텍스트, kms_providers) validate_document(kms_providers) 데이터 = kms_providers.to_bson.to_s 바이너리.랩 문자열(데이터) do |data_p| check_ctx_status(컨텍스트) do mongocrypt_ctx_provide_kms_providers(컨텍스트.ctx_p, data_p) end end end |
.ctx_rerap_many_datakey_init(context, 필터하다) ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
컨텍스트를 초기화하여 데이터 키를 다시 래핑합니다.
654 655 656 657 658 659 660 661 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 654 def self.ctx_rewrap_many_datakey_init(컨텍스트, 필터) filter_data = 필터.to_bson.to_s 바이너리.랩 문자열(filter_data) do |data_p| check_ctx_status(컨텍스트) do mongocrypt_ctx_rewrap_many_datakey_init(컨텍스트.ctx_p, data_p) end end end |
.ctx_setopt_algorithm(컨텍스트, 이름) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
컨텍스트에 알고리즘 설정
567 568 569 570 571 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 567 def self.ctx_setopt_algorithm(컨텍스트, 이름) check_ctx_status(컨텍스트) do mongocrypt_ctx_setopt_algorithm(컨텍스트.ctx_p, 이름, -1) end end |
.ctx_setopt_algorithm_range(context, opts) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
범위 알고리즘 실험용으로만 제공됩니다. 다음 용도로는 사용되지 않습니다.
"범위" 알고리즘 사용하여 명시적 암호화 에 대한 옵션을 설정합니다.
공개 사용.
1788 1789 1790 1791 1792 1793 1794 1795 1796 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1788 def self.ctx_setopt_algorithm_range(컨텍스트, opts) validate_document(opts) 데이터 = opts.to_bson.to_s 바이너리.랩 문자열(데이터) do |data_p| check_ctx_status(컨텍스트) do mongocrypt_ctx_setopt_algorithm_range(컨텍스트.ctx_p, data_p) end end end |
.ctx_setopt_contention_factor(context, factor) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
명시적 암호화 에 사용되는 경합 요인을 설정합니다. 경합 요인은 인덱싱된 FLE 2 암호화 에만 사용됩니다.
1751 1752 1753 1754 1755 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1751 def self.ctx_setopt_contention_factor(컨텍스트, 요인) check_ctx_status(컨텍스트) do mongocrypt_ctx_setopt_contention_factor(컨텍스트.ctx_p, 요인) end end |
.ctx_setopt_key_alt_names(context, key_alt_names) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
데이터 키 생성 시 여러 대체 키 이름 설정
498 499 500 501 502 503 504 505 506 507 508 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 498 def self.ctx_setopt_key_alt_names(컨텍스트, key_alt_names) key_alt_names.각 do |key_alt_name| key_alt_name_bson = { keyAltName: key_alt_name }.to_bson.to_s 바이너리.랩 문자열(key_alt_name_bson) do |key_alt_name_p| check_ctx_status(컨텍스트) do mongocrypt_ctx_setopt_key_alt_name(컨텍스트.ctx_p, key_alt_name_p) end end end end |
.ctx_setopt_key_encryption_key(context, key_document) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
데이터 키 생성을 위한 키 암호화 키 문서 를 설정합니다.
596 597 598 599 600 601 602 603 604 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 596 def self.ctx_setopt_key_encryption_key(컨텍스트, key_document) validate_document(key_document) 데이터 = key_document.to_bson.to_s 바이너리.랩 문자열(데이터) do |data_p| check_ctx_status(컨텍스트) do mongocrypt_ctx_setopt_key_encryption_key(컨텍스트.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/Binding.rb', 줄 465 def self.ctx_setopt_key_id(컨텍스트, key_id) 바이너리.랩 문자열(key_id) do |key_id_p| check_ctx_status(컨텍스트) do mongocrypt_ctx_setopt_key_id(컨텍스트.ctx_p, key_id_p) end end end |
.ctx_setopt_key_material(context, key_material) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
데이터 암호화에 사용할 사용자 지정 키 자료를 설정합니다.
533 534 535 536 537 538 539 540 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 533 def self.ctx_setopt_key_material(컨텍스트, key_material) 데이터 = { 'keyMaterial' => key_material }.to_bson.to_s 바이너리.랩 문자열(데이터) do |data_p| check_ctx_status(컨텍스트) do mongocrypt_ctx_setopt_key_material(컨텍스트.ctx_p, data_p) end end end |
.ctx_setopt_query_type(context, query_type) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
FLE 2 명시적 암호화 에 사용할 쿼리 유형을 설정합니다. 쿼리 유형은 인덱싱된 FLE 2 암호화 에만 사용됩니다.
1719 1720 1721 1722 1723 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1719 def self.ctx_setopt_query_type(컨텍스트, query_type) check_ctx_status(컨텍스트) do mongocrypt_ctx_setopt_query_type(컨텍스트.ctx_p, query_type, -1) end end |
.get_binary_data_direct(mongocrypt_binary_t) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
179 180 181 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 179 def self.get_binary_data_direct(mongocrypt_binary_t) mongocrypt_binary_t.get_pointer(0) end |
.get_binary_len_direct(mongocrypt_binary_t) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
183 184 185 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 183 def self.get_binary_len_direct(mongocrypt_binary_t) mongocrypt_binary_t.get_uint32(FFI::NativeType::포인터.size) end |
.init(처리하다) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
Mongo::Crypt::Handle 객체 초기화
405 406 407 408 409 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 405 def self.init(처리하다) check_status(처리하다) do mongocrypt_init(처리하다.ref) end end |
.kms_ctx_bytes_needed(kms_context) ⇒ 정수
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
KmsContext에 필요한 바이트 수를 가져옵니다.
1061 1062 1063 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1061 def self.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의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
Amazon Web Services 마스터 키에 대한 정보를 가져오기 위해 TLS를 통해 연결할 호스트 이름을 가져옵니다.
1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1037 def self.kms_ctx_endpoint(kms_context) ptr = FFI::MemoryPointer.신규(:pointer, 1) check_kms_ctx_status(kms_context) do 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/Binding.rb', 줄 1146 def self.kms_ctx_fail(kms_context) mongocrypt_kms_ctx_fail(kms_context.kms_ctx_p) end |
.kms_ctx_피드(kms_context, 바이트) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
KMS 의 응답을 libmongocrypt에 다시 피드합니다.
1081 1082 1083 1084 1085 1086 1087 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1081 def self.kms_ctx_피드(kms_context, 바이트) check_kms_ctx_status(kms_context) do 바이너리.랩 문자열(바이트) do |bytes_p| mongocrypt_kms_ctx_피드(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/Binding.rb', 줄 968 def self.kms_ctx_get_kms_provider(kms_context) len_ptr = FFI::MemoryPointer.신규(:uint32, 1) provider = mongocrypt_kms_ctx_get_kms_provider( kms_context.kms_ctx_p, len_ptr ) 만약 len_ptr.nil? nil other len = 만약 BSON::환경.jruby? # JRuby FFI 구현 에는 `read(type)` 메서드가 없지만 # 에는 이 `get_uint32`가 있습니다. len_ptr.get_uint32 other # 자기공명영상(MRI)의 경우 문서화된 '읽기(read)' 메서드를 사용합니다 - https://www.rubydoc.info/github/ffi/ffi/FFI%2FPointer:read len_ptr.읽기(:uint32) end provider.read_string(len).to_sym end end |
.kms_ctx_message(kms_context) ⇒ string
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
KmsContext 객체 에서 마스터 키를 가져오는 데 필요한 메시지를 가져옵니다.HTTP Amazon Web Services KMS
1008 1009 1010 1011 1012 1013 1014 1015 1016 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1008 def self.(kms_context) 바이너리 = 바이너리.신규 check_kms_ctx_status(kms_context) do (kms_context.kms_ctx_p, 바이너리.ref) end 바이너리.to_s end |
.kms_ctx_setopt_retry_kms(handle, value) ⇒ true, fale
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
KMS 재시도 동작을 활성화하거나 비활성화합니다.
1165 1166 1167 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1165 def self.kms_ctx_setopt_retry_kms(처리하다, value) mongocrypt_setopt_retry_kms(처리하다.ref, value) end |
.kms_ctx_usleep(kms_context) ⇒ Integer
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
지정된 KMS 컨텍스트에 대해 KMS 요청 보내기 전에 절전 모드로 전환할 시간(밀리초)을 반환합니다.
1129 1130 1131 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1129 def self.kms_ctx_usleep(kms_context) mongocrypt_kms_ctx_usleep(kms_context.kms_ctx_p) end |
.mongocrypt_binary_data(binary) ⇒ FFI::Pointer
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
mongocrypt_binary_t의 기본 데이터에 대한 포인터를 가져옵니다.
169 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 169 Attach_function :mongocrypt_binary_data, [ :pointer ], :pointer |
.mongocrypt_binary_destory(binary) ⇒ nil
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
mongocrypt_binary_t 객체 를 삭제합니다.
193 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 193 Attach_function :mongocrypt_binary_destory, [ :pointer ], : 무효 |
.mongocrypt_binary_len(바이너리) ⇒ 정수
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
기본 데이터 배열의 길이를 가져옵니다.
177 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 177 Attach_function :mongocrypt_binary_len, [ :pointer ], :int |
.mongocrypt_binary_new ⇒ FFI::Pointer
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
새 mongocrypt_binary_t 객체(바이트 배열의 비소유 뷰)를 만듭니다.
145 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 145 Attach_function :mongocrypt_binary_new, [], :pointer |
.mongocrypt_binary_new_from_data(data, len) ⇒ FFI::Pointer
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
지정된 바이트 배열에 대한 포인터를 유지하는 새 mongocrypt_binary_t 객체를 만듭니다.
157 158 159 160 161 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 157 Attach_function( :mongocrypt_binary_new_from_data, %i[포인터 int], :pointer ) |
.mongocrypt_crypt_shared_lib_version(crypt) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
1586 1587 1588 1589 1590 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1586 Attach_function( :mongocrypt_crypt_shared_lib_version, [ :pointer ], :uint64 ) |
.mongocrypt_ctx_datakey_init(ctx, 필터) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
616 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 616 Attach_function :mongocrypt_ctx_datakey_init, [ :pointer ], :bool |
.mongocrypt_ctx_decrypt_init(ctx, doc) ⇒ Boolean
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
자동 복호화를 위해 ctx를 초기화합니다.
776 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 776 Attach_function :mongocrypt_ctx_decrypt_init, %i[포인터 포인터], :bool |
.mongocrypt_ctx_destory(ctx) ⇒ nil
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
mongocrypt_ctx_t 객체 에 대한 참조를 삭제합니다.
1225 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1225 Attach_function :mongocrypt_ctx_destory, [ :pointer ], : 무효 |
.mongocrypt_ctx_encrypt_init(ctx, db, db_len, cmd) ⇒ Boolean
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
이 메서드는 전달된 BSON { "v": 복호화할 BSON 값 } 형식이어야 합니다.
자동 암호화를 위해 ctx를 초기화합니다.
676 677 678 679 680 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 676 Attach_function( :mongocrypt_ctx_encrypt_init, %i[포인터 문자열 int 포인터], :bool ) |
.mongocrypt_ctx_explicit_decrypt_init(ctx, msg) ⇒ Boolean
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
명시적 암호 해독을 위해 ctx를 초기화합니다.
802 803 804 805 806 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 802 Attach_function( :mongocrypt_ctx_explicit_decrypt_init, %i[포인터 포인터], :bool ) |
.mongocrypt_ctx_explicit_encrypt_init(ctx, msg) ⇒ Boolean
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
이 메서드를 호출하기 전에 mongocrypt_ctx_setopt_key_id, mongocrypt_ctx_setopt_key_alt_name, mongocrypt_ctx_setopt_algorithm 메서드를 설정하다 하여 key_id, key_alt_name(선택 사항) 및 암호화 알고리즘 을 설정합니다.
명시적 표현식 암호화 를 위해 ctx를 초기화합니다.
712 713 714 715 716 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 712 Attach_function( :mongocrypt_ctx_explicit_encrypt_init, %i[포인터 포인터], :bool ) |
.mongocrypt_ctx_finalize(ctx, op_bson) ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
최종 암호화 또는 암호 해독을 수행하고 BSON 문서 를 반환합니다.
1198 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1198 Attach_function :mongocrypt_ctx_finalize, %i[포인터 포인터], : 무효 |
.mongocrypt_ctx_mongo_done(ctx) ⇒ Boolean
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
운전자 에 응답 제공이 완료되었음을 libmongocrypt에 표시합니다.
911 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 911 Attach_function :mongocrypt_ctx_mongo_done, [ :pointer ], :bool |
.mongocrypt_ctx_mongo_피드(ctx, 회신) ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
libmongocrypt에 BSON 응답을 피드.
887 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 887 Attach_function :mongocrypt_ctx_mongo_피드, %i[포인터 포인터], :bool |
.mongocrypt_ctx_mongo_next_kms_ctx(ctx) ⇒ FFI::Pointer
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
mongocrypt_kms_ctx_t 객체 에 대한 포인터 또는 NULL을 반환합니다.
919 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 919 Attach_function :mongocrypt_ctx_next_kms_ctx, [ :pointer ], :pointer |
.mongocrypt_ctx_mongo_op(ctx, op_bson) ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
운전자 가 MongoDB 컬렉션, 키 볼트 데이터베이스 또는 mongocryptd 에 대해 실행 BSON 작업을 가져옵니다.
855 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 855 Attach_function :mongocrypt_ctx_mongo_op, %i[포인터 포인터], :bool |
.mongocrypt_ctx_new(crypt) ⇒ FFI::Pointer
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
새 mongocrypt_ctx_t 객체 (libmongocrypt 상태 시스템용 래퍼)를 만듭니다.
436 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 436 Attach_function :mongocrypt_ctx_new, [ :pointer ], :pointer |
.mongocrypt_ctx_provide_kms_providers(ctx, kms_providers) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
1664 1665 1666 1667 1668 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1664 Attach_function( :mongocrypt_ctx_provide_kms_providers, %i[포인터 포인터], :bool ) |
.mongocrypt_ctx_setopt_algorithm(ctx, 알고리즘, len) ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
이 메서드를 호출하기 전에 ctx를 초기화하지 마세요.
명시적 암호화에 사용되는 알고리즘을 설정합니다.
553 554 555 556 557 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 553 Attach_function( :mongocrypt_ctx_setopt_algorithm, %i[포인터 문자열 int], :bool ) |
.mongocrypt_ctx_setopt_algorithm_range(ctx, opts) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
1770 1771 1772 1773 1774 1775 1776 1777 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1770 Attach_function( :mongocrypt_ctx_setopt_algorithm_range, %i[ 포인터 포인터 ], :bool ) |
.mongocrypt_ctx_setopt_contention_factor(ctx,contention_factor) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
1735 1736 1737 1738 1739 1740 1741 1742 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1735 Attach_function( :mongocrypt_ctx_setopt_contention_factor, %i[ 포인터 int64 ], :bool ) |
.mongocrypt_ctx_setopt_key_alt_name(ctx, 바이너리) ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
이 메서드를 호출하기 전에 ctx를 초기화하지 마세요.
데이터 키를 생성할 때 해당 키에 대체 이름을 설정하다 . 명시적 암호화 수행할 때 keyAltName 필드 기반으로 암호화 에 사용할 데이터 키를 지정합니다.
485 486 487 488 489 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 485 Attach_function( :mongocrypt_ctx_setopt_key_alt_name, %i[포인터 포인터], :bool ) |
.mongocrypt_ctx_setopt_key_encryption_key(ctx) ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
이 메서드를 호출하기 전에 ctx를 초기화하지 마세요.
데이터 키 생성을 위한 키 암호화 키 문서 를 설정합니다.
583 584 585 586 587 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 583 Attach_function( :mongocrypt_ctx_setopt_key_encryption_key, %i[포인터 포인터], :bool ) |
.mongocrypt_ctx_setopt_key_id(ctx, key_id) ⇒ Boolean
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
이 메서드를 호출하기 전에 ctx를 초기화하지 마세요.
명시적 암호화 에 사용되는 키 ID를 설정합니다.
457 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 457 Attach_function :mongocrypt_ctx_setopt_key_id, %i[포인터 포인터], :bool |
.mongocrypt_ctx_setopt_key_material(ctx, 바이너리) ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
이 메서드를 호출하기 전에 ctx를 초기화하지 마세요.
데이터 키를 생성할 때 데이터 암호화에 사용할 사용자 지정 주 자료 를 설정하다 합니다.
520 521 522 523 524 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 520 Attach_function( :mongocrypt_ctx_setopt_key_material, %i[포인터 포인터], :bool ) |
.mongocrypt_ctx_setopt_query_type(ctx, mongocrypt_query_type) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
1702 1703 1704 1705 1706 1707 1708 1709 1710 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1702 Attach_function( :mongocrypt_ctx_setopt_query_type, %i[ 포인터 문자열 int ], :bool ) |
.mongocrypt_ctx_state(ctx) ⇒ 기호
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
ctx의 현재 상태를 가져옵니다.
843 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 843 Attach_function :mongocrypt_ctx_state, [ :pointer ], :mongocrypt_ctx_state |
.mongocrypt_ctx_status(ctx, status) ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
mongocrypt_status_t 객체의 mongocrypt_ctx_t 객체 에서 상태 정보를 설정 객체.
446 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 446 Attach_function :mongocrypt_ctx_status, %i[포인터 포인터], :bool |
.mongocrypt_destory(crypt) ⇒ nil
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
참조를 mongocrypt_t 객체를 삭제합니다.
427 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 427 Attach_function :mongocrypt_destory, [ :pointer ], : 무효 |
.mongocrypt_init(crypt) ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
mongocrypt_t 객체 를 초기화합니다.
398 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 398 Attach_function :mongocrypt_init, [ :pointer ], :bool |
.mongocrypt_kms_ctx_bytes_needed(KMS) ⇒ 정수
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
KMS 컨텍스트에 필요한 바이트 수를 가져옵니다.
1054 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1054 Attach_function :mongocrypt_kms_ctx_bytes_needed, [ :pointer ], :int |
.mongocrypt_kms_ctx_done(ctx) ⇒ Boolean
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
mongocrypt_kms_ctx_t 객체로부터 더 이상 응답을 받지 않음을 libmongocrypt에 표시합니다.
1176 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1176 Attach_function :mongocrypt_ctx_kms_done, [ :pointer ], :bool |
.mongocrypt_kms_ctx_endpoint(KMS, endpoint) ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
Amazon Web Services 마스터 키에 대한 정보를 가져오기 위해 TLS를 통해 연결할 호스트 이름을 가져옵니다.
1027 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1027 Attach_function :mongocrypt_kms_ctx_endpoint, %i[포인터 포인터], :bool |
.mongocrypt_kms_ctx_fail(ctx) ⇒ Object
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
1140 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1140 Attach_function :mongocrypt_kms_ctx_fail, [ :pointer ], :bool |
.mongocrypt_kms_ctx_피드(KMS, 바이트) ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
KMS 의 응답을 libmongocrypt에 다시 피드합니다.
1073 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1073 Attach_function :mongocrypt_kms_ctx_피드, %i[포인터 포인터], :bool |
.mongocrypt_kms_ctx_get_kms_provider(crypt, kms_providers) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
953 954 955 956 957 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 953 Attach_function( :mongocrypt_kms_ctx_get_kms_provider, %i[포인터 포인터], :pointer ) |
.mongocrypt_kms_ctx_message(KMS, msg) ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
Amazon Web Services KMS 마스터 키를 가져오는 데 필요한 메시지를 가져옵니다.
998 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 998 Attach_function :mongocrypt_kms_ctx_message, %i[포인터 포인터], :bool |
.mongocrypt_kms_ctx_status(KMS, status) ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
mongocrypt_kms_ctx_t 객체에 대한 상태 정보를 mongocrypt_status_t 객체에 씁니다.
1097 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1097 Attach_function :mongocrypt_kms_ctx_status, %i[포인터 포인터], :bool |
.mongocrypt_kms_ctx_usleep(ctx) ⇒ int64
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
KMS 요청 보내기 전에 휴면 상태로 유지되는 시간을 나타냅니다.
1121 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1121 Attach_function :mongocrypt_kms_ctx_usleep, [ :pointer ], :int64 |
.mongocrypt_setopt_aes_256_ctr(crypt, aes_256_ctr_encrypt, aes_256_ctr_decrypt, ctx) ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
AES256-CTR 작업에 대한 암호화 훅을 설정합니다.
1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1482 Attach_function( :mongocrypt_setopt_aes_256_ctr, %i[ 포인터 mongocrypt_crypto_fn mongocrypt_crypto_fn 포인터 ], :bool ) |
.mongocrypt_setopt_append_crypt_shared_lib_search_path(crypt, 경로) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
1519 1520 1521 1522 1523 1524 1525 1526 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1519 Attach_function( :mongocrypt_setopt_append_crypt_shared_lib_search_path, %i[ 포인터 문자열 ], : 무효 ) |
.mongocrypt_setopt_bypass_query_analysis(crypt) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
1458 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1458 Attach_function(:mongocrypt_setopt_bypass_query_analysis, [ :pointer ], : 무효) |
.mongocrypt_setopt_crypto_hook_sign_rsaes_pkcs1_v1_5(crypt, sign_rsaes_pkcs1_v1_5, ctx = nil) ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
SHA-256 해시를 사용하여 RSASSA-PKCS1-v1_5 알고리즘 에 대한 크립토 훅을 설정합니다.
1375 1376 1377 1378 1379 1380 1381 1382 1383 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1375 Attach_function( :mongocrypt_setopt_crypto_hook_sign_rsaes_pkcs1_v1_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/Binding.rb', 줄 1330 Attach_function( :mongocrypt_setopt_crypto_hooks, %i[ 포인터 mongocrypt_crypto_fn mongocrypt_crypto_fn mongocrypt_random_fn mongocrypt_hmac_fn mongocrypt_hmac_fn mongocrypt_hash_fn 포인터 ], :bool ) |
.mongocrypt_setopt_encrypted_field_config_map(crypt, efc_map) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
1417 1418 1419 1420 1421 1422 1423 1424 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1417 Attach_function( :mongocrypt_setopt_encrypted_field_config_map, %i[ 포인터 포인터 ], :bool ) |
.mongocrypt_setopt_kms_providers(crypt, kms_providers) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
이 메서드를 호출하기 전에 ctx를 초기화하지 마세요.
BSON 문서 로 KMS 제공자를 구성합니다.
342 343 344 345 346 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 342 Attach_function( :mongocrypt_setopt_kms_providers, %i[포인터 포인터], :bool ) |
.mongocrypt_setopt_log_handler(crypt, log_fn, log_ctx = nil) ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
libmongocrypt가 메시지를 기록할 때마다 호출되도록 mongocrypt_t 객체의 핸들러를 설정합니다.
313 314 315 316 317 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 313 Attach_function( :mongocrypt_setopt_log_handler, %i[포인터 mongocrypt_log_fn_t 포인터], :bool ) |
.mongocrypt_setopt_retry_kms(crypt, 활성화) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
1158 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1158 Attach_function :mongocrypt_setopt_retry_kms, %i[포인터 부울], :bool |
.mongocrypt_setopt_schema_map(crypt, schema_map) ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
암호화를 위한 로컬 스키마 맵을 설정합니다.
373 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 373 Attach_function :mongocrypt_setopt_schema_map, %i[포인터 포인터], :bool |
.mongocrypt_setopt_set_crypt_shared_lib_path_override(crypt, 경로) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
1548 1549 1550 1551 1552 1553 1554 1555 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1548 Attach_function( :mongocrypt_setopt_set_crypt_shared_lib_path_override, %i[ 포인터 문자열 ], : 무효 ) |
.mongocrypt_setopt_use_need_kms_credentials_state(crypt) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
1627 1628 1629 1630 1631 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1627 Attach_function( :mongocrypt_setopt_use_need_kms_credentials_state, [ :pointer ], : 무효 ) |
.mongocrypt_status(crypt, status) ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
mongocrypt_status_t 객체의 mongocrypt_t 객체 에서 상태 정보를 설정 객체.
419 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 419 Attach_function :mongocrypt_status, %i[포인터 포인터], :bool |
.mongocrypt_status_code(status) ⇒ 정수
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
상태 오류 코드를 반환합니다.
241 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 241 Attach_function :mongocrypt_status_code, [ :pointer ], :int |
.mongocrypt_status_destory(status) ⇒ nil
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
mongocrypt_status_t 객체에 대한 참조를 삭제합니다.
267 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 267 Attach_function :mongocrypt_status_destory, [ :pointer ], : 무효 |
.mongocrypt_status_message(status, len = nil) ⇒ String
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
상태 메시지를 반환합니다.
251 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 251 Attach_function :mongocrypt_status_message, %i[포인터 포인터], : 문자열 |
.mongocrypt_status_new ⇒ FFI::Pointer
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
새 mongocrypt_status_t 객체를 만듭니다.
207 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 207 Attach_function :mongocrypt_status_new, [], :pointer |
.mongocrypt_status_ok(status) ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
상태가 정상인지 오류인지를 반환합니다.
259 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 259 Attach_function :mongocrypt_status_ok, [ :pointer ], :bool |
.mongocrypt_status_set(상태, 유형, 코드, 메시지, len) ⇒ nil
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
기존 상태에 대한 메시지, 유형 및 코드를 설정합니다.
221 222 223 224 225 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 221 Attach_function( :mongocrypt_status_set, %i[포인터 status_type int 문자열 int], : 무효 ) |
.mongocrypt_status_type(status) ⇒ Symbol
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
상태 유형을 나타냅니다.
233 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 233 Attach_function :mongocrypt_status_type, [ :pointer ], :status_type |
.mongocrypt_version(len) ⇒ string
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
libmongocrypt 라이브러리의 버전 string 을 반환합니다.
93 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 93 Attach_function :mongocrypt_version, [ :pointer ], : 문자열 |
.ongocrypt_new ⇒ FFI::Pointer
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
새 mongocrypt_t 객체 를 만듭니다.
301 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 301 Attach_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/Binding.rb', 줄 106 def self.parse_version(버전) Gem::버전.신규(버전) 구출 ArgumentError match = 버전.match(/\A(?<major>\d+)\.(?<minor>\d+)\.(?<patch>\d+)?(-[A-Za-z+\d]+)?\z/) 올리다 ArgumentError.신규("잘못된 버전 번호 string #{version}") 만약 match.nil? Gem::버전.신규( [ match[:major], match[:minor], match[:patch] ].가입('.') ) end |
.setopt_aes_256_ctr(처리하다, aes_ctr_encrypt_cb, aes_ctr_decrypt_cb) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
AES256-CTR 작업에 대한 암호화 훅을 설정합니다.
1500 1501 1502 1503 1504 1505 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1500 def self.setopt_aes_256_ctr(처리하다, aes_ctr_encrypt_cb, aes_ctr_decrypt_cb) check_status(처리하다) do mongocrypt_setopt_aes_256_ctr(처리하다.ref, aes_ctr_encrypt_cb, aes_ctr_decrypt_cb, nil) end end |
.setopt_append_crypt_shared_lib_search_path(handle, 경로) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
crypt_shared 동적 라이브러리를 로드하기 위해 검색 경로에 추가 검색 디렉토리 를 추가합니다.
1533 1534 1535 1536 1537 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1533 def self.setopt_append_crypt_shared_lib_search_path(처리하다, 경로) check_status(처리하다) do mongocrypt_setopt_append_crypt_shared_lib_search_path(처리하다.ref, 경로) end end |
.setopt_bypass_query_analysis(handle) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
쿼리 분석 건너뛰기를 선택합니다.
선택한 경우:
- csfle 공유 라이브러리는 로드를 시도하지 않습니다.
- mongocrypt_ctx_t는 MongOCRYPT_CTX_NEED_MARKINGS 상태로 전환되지 않습니다.
1467 1468 1469 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1467 def self.setopt_bypass_query_analysis(처리하다) mongocrypt_setopt_bypass_query_analysis(처리하다.ref) end |
.setopt_crypto_hook_sign_rsaes_pkcs1_v1_5(처리하다, rsaes_pkcs_signature_cb) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
SHA-256 해시를 사용하여 RSASSA-PKCS1-v1_5 알고리즘 에 대한 크립토 훅을 핸들로 설정합니다.
1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1392 def self.setopt_crypto_hook_sign_rsaes_pkcs1_v1_5( 처리하다, rsaes_pkcs_signature_cb ) check_status(처리하다) do mongocrypt_setopt_crypto_hook_sign_rsaes_pkcs1_v1_5( 처리하다.ref, rsaes_pkcs_signature_cb, nil ) end end |
.setopt_crypto_hooks(handle, aes_encrypt_cb, aes_decrypt_cb, random_cb, hmac_sha_512_cb, hmac_sha_256_cb, hmac_hash_cb) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
핸들에서 암호화 콜백 설정
1356 1357 1358 1359 1360 1361 1362 1363 1364 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1356 def self.setopt_crypto_hooks(처리하다, aes_encrypt_cb, aes_decrypt_cb, random_cb, hmac_sha_512_cb, hmac_sha_256_cb, hmac_hash_cb) check_status(처리하다) do mongocrypt_setopt_crypto_hooks(처리하다.ref, aes_encrypt_cb, aes_decrypt_cb, random_cb, hmac_sha_512_cb, hmac_sha_256_cb, hmac_hash_cb, nil) end end |
.setopt_encrypted_field_config_map(처리하다, efc_map) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
암호화 를 위해 로컬 EncryptedFieldConfigMap을 설정합니다.
1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1435 def self.setopt_encrypted_field_config_map(처리하다, efc_map) validate_document(efc_map) 데이터 = efc_map.to_bson.to_s 바이너리.랩 문자열(데이터) do |data_p| check_status(처리하다) do mongocrypt_setopt_encrypted_field_config_map( 처리하다.ref, 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/Binding.rb', 줄 355 def self.setopt_kms_providers(처리하다, kms_providers) validate_document(kms_providers) 데이터 = kms_providers.to_bson.to_s 바이너리.랩 문자열(데이터) do |data_p| check_status(처리하다) do mongocrypt_setopt_kms_providers(처리하다.ref, data_p) end end end |
.setopt_log_handler(처리하다, log_callback) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
Mongo::Crypt::Handle 객체 에 로거 콜백 함수를 설정합니다.
325 326 327 328 329 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 325 def self.setopt_log_handler(처리하다, log_callback) check_status(처리하다) do mongocrypt_setopt_log_handler(처리하다, log_callback, nil) end end |
.setopt_schema_map(처리하다, schema_map_doc) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
Mongo::Crypt::Handle 객체 에 스키마 맵 설정
382 383 384 385 386 387 388 389 390 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 382 def self.setopt_schema_map(처리하다, schema_map_doc) validate_document(schema_map_doc) 데이터 = schema_map_doc.to_bson.to_s 바이너리.랩 문자열(데이터) do |data_p| check_status(처리하다) do mongocrypt_setopt_schema_map(처리하다.ref, data_p) end end end |
.setopt_set_crypt_shared_lib_path_override(handle, 경로) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
crypt 공유 라이브러리를 로드하기 위한 단일 재정의 경로를 설정합니다.
1561 1562 1563 1564 1565 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1561 def self.setopt_set_crypt_shared_lib_path_override(처리하다, 경로) check_status(처리하다) do mongocrypt_setopt_set_crypt_shared_lib_path_override(처리하다.ref, 경로) end end |
.setopt_use_need_kms_credentials_state(처리하다) ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
MONGOCRYPT_CTX_NEED_KMS_CREDENTIALS 상태 를 처리하도록 옵트인합니다.
mongocrypt_ctx_provide_kms_providers 설정하다( 를 ) 통해 자격 증명 상태 제공될 때까지 을(를) 통해 자격 증명 제공될 때까지 대기할 수 있습니다.
mongocrypt_setopt_kms_providers의 KMS 제공자 에 대해 빈 문서 설정하다 경우에만 컨텍스트가 MongOCRYPT_CTX_NEED_KMS_CREDENTIALS에 진입합니다.
1645 1646 1647 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1645 def self.setopt_use_need_kms_credentials_state(처리하다) mongocrypt_setopt_use_need_kms_credentials_state(처리하다.ref) 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/Binding.rb', 줄 1838 def self.validate_document(데이터) 반환 만약 데이터.is_a?(해시) = 만약 데이터.nil? 'nil 데이터를 libmongocrypt에 전달하려고 시도했습니다. ' + '데이터는 해시여야 합니다. ' other "libmongocrypt에 잘못된 데이터를 전달하려고 시도했습니다: #{데이터} " + '데이터는 해시여야 합니다. ' end 올리다 오류::CRYPTError.신규() end |
.validate_version(lmc_version) ⇒ Object
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
제공된 libmongocrypt 버전이 유효한지, 즉 최소 필수 버전보다 크거나 같은지 확인합니다. 그렇지 않은 경우 LoadError를 발생시킵니다.
129 130 131 132 133 134 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 129 def self.validate_version(lmc_version) 만약 (real_version = parse_version(lmc_version)) < MIN_LIBMONOCRYPT_VERSION 올리다 LoadError, "libmongocrypt 버전 #{MIN_LIBMOCRYPT_VERSION} 이상이 필요합니다, " + "하지만 버전 #{real_version} 이(가) 발견되었습니다." end end |
인스턴스 메서드 세부 정보
#mongocrypt_crypto_fn(ctx, key, iv, input, output, status) ⇒ Bool
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
이는 FFI 콜백 에 대한 메서드 서명을 정의합니다. 즉, Binding 클래스의 인스턴스 메서드가 아닙니다.
AES 암호화 또는 복호화를 수행하는 함수에 대한 콜백 입니다.
1248 1249 1250 1251 1252 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1248 콜백( :mongocrypt_crypto_fn, %i[포인터 포인터 포인터 포인터 포인터 포인터 포인터], :bool ) |
#mongocrypt_hash_fn(ctx, 입력, 출력, 상태) ⇒ Bool
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
이는 FFI 콜백 에 대한 메서드 서명을 정의합니다. 즉, Binding 클래스의 인스턴스 메서드가 아닙니다.
SHA-256 해시 함수에 대한 콜백 입니다.
1296 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1296 콜백 :mongocrypt_hash_fn, %i[포인터 포인터 포인터 포인터], :bool |
#mongocrypt_hmac_fn(ctx, 키, 입력, 출력, 상태) ⇒ Bool
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
이는 FFI 콜백 에 대한 메서드 서명을 정의합니다. 즉, Binding 클래스의 인스턴스 메서드가 아닙니다.
HMAC SHA-512 또는 SHA-256 를 수행하는 함수에 대한 콜백입니다.
1273 1274 1275 1276 1277 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1273 콜백( :mongocrypt_hmac_fn, %i[포인터 포인터 포인터 포인터 포인터], :bool ) |
#mongocrypt_log_fn_t(레벨, 메시지, len, ctx) ⇒ nil
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
이는 FFI 콜백 에 대한 메서드 서명을 정의합니다. 즉, Binding 클래스의 인스턴스 메서드가 아닙니다.
mongocrypt 로그 함수에 대한 콜백 . mongocrypt_setopt_log_handler 메서드를 사용하여 사용자 지정 로그 콜백 설정
294 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 294 콜백 :mongocrypt_log_fn_t, %i[log_level 문자열 int 포인터], : 무효 |
#mongocrypt_random_fn(ctx, 출력, 카운트, 상태) ⇒ Bool
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
이는 FFI 콜백 에 대한 메서드 서명을 정의합니다. 즉, Binding 클래스의 인스턴스 메서드가 아닙니다.
암호화된 보안 임의 함수에 대한 콜백 입니다.
1314 |
# 파일 'lib/ Mongo/crypt/Binding.rb', 줄 1314 콜백 :mongocrypt_random_fn, %i[포인터 포인터 int 포인터], :bool |