클래스: Mongo::Crypt:: KMS:: GCP::Credentials Private
- 상속:
-
객체
- 객체
- Mongo::Crypt::KMS::GCP::Credentials
- 확장자:
- 전달 가능
- 다음을 포함합니다.
- 유효성 검사
- 다음에 정의됨:
- build/ruby-driver-v2.19/lib/mongo/crypt/KMS/GCP/credentials.rb
개요
이 클래스는 비공개 API의 일부입니다. 이 클래스는 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
GCP Cloud 키 관리 자격 증명 객체 에는 GCP KMS 제공자 를 사용하기 위한 자격 증명 이 포함되어 있습니다.
상수 요약 접기
- FORMAT_HINT =
이 상수는 비공개 API의 일부입니다. 이 상수는 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
"GCP KMS 제공자 옵션은 다음 형식이어야 합니다. " + "{ email: 'EMAIL', private_key: 'PRIVATE-KEY' }"
인스턴스 속성 요약 접기
-
#access_token ⇒ String | nil
읽기 전용
비공개
GCP 액세스 토큰.
-
#이메일 ⇒ string
읽기 전용
비공개
인증할 GCP 이메일입니다.
-
#엔드포인트 ⇒ string | nil
읽기 전용
비공개
GCP KMS 엔드포인트.
-
#private_key ⇒ string
읽기 전용
비공개
GCP 비공개 키, 기본64 로 인코딩된 DER 형식입니다.
인스턴스 메서드 요약 접기
-
#initialize(opts) ⇒ 자격 증명
생성자
비공개
매개변수 해시로부터 GCP KMS 자격 증명 객체를 생성합니다.
-
#to_document ⇒ BSON::Document
비공개
자격 증명 객체 를 libmongocrypt 형식의 BSON 문서 로 변환합니다.
유효성 검사에 포함된 메서드
#validate_param, validate_tls_options
생성자 세부 정보
#initialize(opts) ⇒ 자격 증명
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
매개변수 해시로부터 GCP KMS 자격 증명 객체를 생성합니다.
61 62 63 64 65 66 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 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/crypt/KMS/GCP/ 자격 증명.rb', 줄 61 def 초기화(opts) @opts = opts 반환 만약 비어 있나요? 만약 opts[:access_token] @access_token = opts[:access_token] other @email = validate_param(:email, opts, FORMAT_HINT) @private_key = 시작 private_key_opt = validate_param(:private_key, opts, FORMAT_HINT) 만약 BSON::환경.jruby? # JRuby에서는 실제로 개인 키의 유효성을 검사할 수 없으므로 다음과 같이 가정합니다. # 기본64 로 인코딩된 DER 형식입니다. private_key_opt other # 비공개 키가 PEM 형식인지 확인합니다. pkey = OpenSSL::PKey::RSA.신규(private_key_opt) # PEM이므로 기본64 로 인코딩된 DER로 변환해야 합니다. der = 만약 pkey.response_to?(:private_to_der) pkey.private_to_der other pkey.to_der end Base64.인코딩64(der) end 구출 OpenSSL::PKey::RSAError # 개인 키가 DER에 있는지 확인합니다. 시작 OpenSSL::PKey.읽기(Base64.디코딩64(private_key_opt)) # 비공개 키는 괜찮습니다. 사용하세요. private_key_opt 구출 OpenSSL::PKey::PKeyError 올리다 ArgumentError.신규( "private_key 옵션은 기본64 로 인코딩된 DER 형식 또는 PEM 형식이어야 합니다." ) end end @endpoint = validate_param( :endpoint, opts, FORMAT_HINT, 필수: 거짓 ) end end |
인스턴스 속성 세부 정보
#access_token ⇒ string | nil (읽기 전용)
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
GCP 액세스 토큰을 반환합니다.
40 41 42 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/crypt/KMS/GCP/ 자격 증명.rb', 줄 40 def access_token @access_token end |
#이메일 ⇒ string (읽기 전용)
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
인증에 사용할 GCP 이메일 을 반환합니다.
31 32 33 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/crypt/KMS/GCP/ 자격 증명.rb', 줄 31 def 이메일 @email end |
#엔드포인트 ⇒ string | nil (읽기 전용)
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
GCP KMS 엔드포인트를 반환합니다.
37 38 39 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/crypt/KMS/GCP/ 자격 증명.rb', 줄 37 def 엔드포인트 @endpoint end |
#private_key ⇒ string (읽기 전용)
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
GCP 비공개 키(기본64 로 인코딩된 DER 형식)를 반환합니다.
34 35 36 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/crypt/KMS/GCP/ 자격 증명.rb', 줄 34 def PRIVATE_KEY @private_key end |
인스턴스 메서드 세부 정보
#to_document ⇒ BSON::Document
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
자격 증명 객체 를 libmongocrypt 형식의 BSON 문서 로 변환합니다.
108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 |
# 파일 ' 빌드/ Ruby-driver-v2.19/lib/mongo/crypt/KMS/GCP/ 자격 증명.rb', 줄 108 def to_document 반환 BSON::문서.신규 만약 비어 있나요? 만약 access_token BSON::문서.신규({ accessToken: access_token }) other BSON::문서.신규({ 이메일: 이메일, privateKey: BSON::바이너리.신규(PRIVATE_KEY, :generic), }).탭 do |BSON| 하지 않는 한 엔드포인트.nil? BSON.update({ 엔드포인트: 엔드포인트 }) end end end end |