클래스: Mongo::Crypt:: 비공개처리
- 상속:
-
객체
- 객체
- Mongo::Crypt::Handle
- 다음에 정의됨:
- lib/ Mongo/crypt/ 처리하다.rb
개요
이 클래스는 비공개 API의 일부입니다. 이 클래스는 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
클라이언트가 해당 객체 에 대한 옵션을 설정하다 하거나 암호화 및 암호 해독과 같은 작업을 수행할 수 있도록 mongocrypt_t 객체 를 래핑하는 libmongocrypt 라이브러리에 대한 처리하다 입니다.
인스턴스 속성 요약 접기
- #kms_providers ⇒ 객체 읽기 전용 비공개
인스턴스 메서드 요약 접기
- #crypt_shared_lib_available? ⇒ 부울 비공개
- #crypt_shared_lib_version ⇒ 객체 비공개
-
#initialize(kms_providers, kms_tls_options, options = {}) ⇒ Handle
생성자
비공개
새 핸들 객체 를 생성하고 옵션을 사용하여 초기화합니다.
-
#kms_tls_options(provider) ⇒ 해시
비공개
KMS 제공자 에 대한 TLS 옵션을 반환합니다.
-
#ref ⇒ FFI::Pointer
비공개
기본 @mongocrypt 객체 에 대한 참조를 반환합니다.
생성자 세부 정보
#initialize(kms_providers, kms_tls_options, options = {}) ⇒ Handle
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
새 핸들 객체 를 생성하고 옵션을 사용하여 초기화합니다.
67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 |
# 파일 'lib/ Mongo/crypt/ 처리하다.rb', 줄 67 def 초기화(kms_providers, , ={}) # FFI::AutoPointer는 사용자 지정 출시하다 전략을 사용하여 # 이 객체 가 범위를 벗어나면 포인터 @mongocrypt = FFI::자동 포인터.신규( 바인딩.mongocrypt_new, 바인딩.메서드(:mongocrypt_destory) ) 바인딩.kms_ctx_setopt_retry_kms(self, true) @kms_providers = kms_providers @kms_tls_options = may_set_schema_map() @encrypted_fields_map = [:encrypted_fields_map] set_encrypted_fields_map 만약 @encrypted_fields_map @bypass_query_analysis = [:bypass_query_analysis] set_bypass_query_analysis 만약 @bypass_query_analysis @crypt_shared_lib_path = [:crypt_shared_lib_path] @explicit_encryption_only = [:explicit_encryption_only] 만약 @crypt_shared_lib_path 바인딩.setopt_set_crypt_shared_lib_path_override(self, @crypt_shared_lib_path) elsif !@bypass_query_analysis && !@explicit_encryption_only 바인딩.setopt_append_crypt_shared_lib_search_path(self, "$SYSTEM") end @logger = [:logger] set_logger_callback 만약 @logger set_crypto_hooks 바인딩.setopt_kms_providers(self, @kms_providers.to_document) 만약 @kms_providers.AWS&.비어 있나요? || @kms_providers.GCP&.비어 있나요? || @kms_providers.Azure&.비어 있나요? 바인딩.setopt_use_need_kms_credentials_state(self) end initialize_mongocrypt @crypt_shared_lib_required = !![:crypt_shared_lib_required] 만약 @crypt_shared_lib_required && crypt_shared_lib_version == 0 올리다 mongo::오류::CRYPTError.신규( "Crypt 공유 라이브러리가 필요하지만 libmongocrypt에 따라 로드할 수 없습니다." ) end end |
인스턴스 속성 세부 정보
#kms_providers ⇒ 객체 (읽기 전용)
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
32 33 34 |
# 파일 'lib/ Mongo/crypt/ 처리하다.rb', 줄 32 def kms_providers @kms_providers end |
인스턴스 메서드 세부 정보
#crypt_shared_lib_available? ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
136 137 138 |
# 파일 'lib/ Mongo/crypt/ 처리하다.rb', 줄 136 def crypt_shared_lib_available? crypt_shared_lib_version != 0 end |
#crypt_shared_lib_version ⇒ 객체
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
132 133 134 |
# 파일 'lib/ Mongo/crypt/ 처리하다.rb', 줄 132 def crypt_shared_lib_version 바인딩.crypt_shared_lib_version(self) end |
#kms_tls_options(제공자) ⇒ 해시
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
KMS 제공자 에 대한 TLS 옵션을 반환합니다. TLS 옵션이 설정하다 되지 않은 경우 빈 해시가 반환됩니다.
128 129 130 |
# 파일 'lib/ Mongo/crypt/ 처리하다.rb', 줄 128 def (provider) @kms_tls_options.가져오기(provider, {}) end |
#ref ⇒ FFI::Pointer
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
기본 @mongocrypt 객체 에 대한 참조 반환
118 119 120 |
# 파일 'lib/ Mongo/crypt/ 처리하다.rb', 줄 118 def ref @mongocrypt end |