클래스: Mongo::Crypt::KMS::GCP::MasterKeyDocument 비공개

상속:
객체
  • 객체
모두 표시
다음을 포함합니다.
유효성 검사
다음에 정의됨:
빌드/ Ruby-driver-v2.19/lib/mongo/crypt/KMS/GCP/master_document.rb

개요

이 클래스는 비공개 API의 일부입니다. 이 클래스는 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

GCP KMS 마스터 키 문서 객체 에는 KMS 마스터 키 매개변수가 포함되어 있습니다.

상수 요약 접기

FORMAT_HINT =

이 상수는 비공개 API의 일부입니다. 이 상수는 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

"GCP 키 문서 는 다음 형식이어야 합니다. " +
"{ project_id: 'PROJECT_ID',location: 'LOCATION', " +
"key_ring: 'KEY-RING', key_name: 'KEY-NAME' }"

인스턴스 속성 요약 접기

인스턴스 메서드 요약 접기

유효성 검사에 포함된 메서드

#validate_param, validate_tls_options

생성자 세부 정보

#initialize(opts) ⇒ MasterKeyDocument

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

매개변수 해시 형식으로 마스터 키 문서 객체를 생성합니다.

매개변수:

  • opts (해시)

    GCP KMS 제공자 에 대한 마스터 키 옵션이 포함된 해시입니다.

옵션 해시(opts):

  • :project_id (string)

    GCP 프로젝트 ID입니다.

  • :location (string)

    GCP 위치.

  • :key_ring (string)

    GCP KMS 키링.

  • :key_name (string)

    GCP KMS 키 이름입니다.

  • :key_version (string | nil)

    GCP KMS 키 버전, 선택 사항.

  • :endpoint (string | nil)

    GCP KMS 키 엔드포인트, 선택 사항.

다음을 발생시킵니다.

  • (ArgumentError)

    필수 옵션이 누락되었거나 잘못된 경우.



62
63
64
65
66
67
68
69
70
71
72
73
# 파일 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/GCP/master_document.rb', 줄 62

def 초기화(opts)
  만약 opts.비어 있나요?
    @empty = true
    반환
  end
  @project_id = validate_param(:project_id, opts, FORMAT_HINT)
  위치 = validate_param(:location, opts, FORMAT_HINT)
  @key_ring = validate_param(:key_ring, opts, FORMAT_HINT)
  @key_name = validate_param(:key_name, opts, FORMAT_HINT)
  @key_version = validate_param(:key_version, opts, FORMAT_HINT, 필수: 거짓)
  @endpoint = validate_param(:endpoint, opts, FORMAT_HINT, 필수: 거짓)
end

인스턴스 속성 세부 정보

#엔드포인트string | nil (읽기 전용)

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

GCP KMS 엔드포인트를 반환합니다.

반환합니다:

  • (string | nil)

    GCP KMS 엔드포인트.



44
45
46
# 파일 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/GCP/master_document.rb', 줄 44

def 엔드포인트
  @endpoint
end

#key_namestring (읽기 전용)

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

GCP KMS 키 이름을 반환합니다.

반환합니다:

  • (string)

    GCP KMS 키 이름입니다.



38
39
40
# 파일 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/GCP/master_document.rb', 줄 38

def key_name
  @key_name
end

#key_ringstring (읽기 전용)

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

GCP KMS 키링을 반환합니다.

반환합니다:

  • (string)

    GCP KMS 키링.



35
36
37
# 파일 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/GCP/master_document.rb', 줄 35

def key_ring
  @key_ring
end

#key_versionstring | nil (읽기 전용)

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

GCP KMS 키 버전을 반환합니다.

반환합니다:

  • (string | nil)

    GCP KMS 키 버전입니다.



41
42
43
# 파일 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/GCP/master_document.rb', 줄 41

def key_version
  @key_version
end

#위치string (읽기 전용)

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

GCP 위치 를 반환합니다.

반환합니다:

  • (string)

    GCP 위치.



32
33
34
# 파일 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/GCP/master_document.rb', 줄 32

def 위치
  위치
end

#project_idstring (읽기 전용)

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

GCP 프로젝트 ID를 반환합니다.

반환합니다:

  • (string)

    GCP 프로젝트 ID입니다.



29
30
31
# 파일 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/GCP/master_document.rb', 줄 29

def PROJECT_ID
  @project_id
end

인스턴스 메서드 세부 정보

#to_documentBSON::Document

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

마스터 키 문서 객체를 libmongocrypt 형식의 BSON 문서로 변환합니다.

반환합니다:

  • (BSON::Document)

    libmongocrypt 형식의 GCP KMS 자격 증명 입니다.



78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# 파일 'build/ruby-driver-v2.19/lib/mongo/crypt/KMS/GCP/master_document.rb', 줄 78

def to_document
  반환 BSON::문서.신규({}) 만약 @empty
  BSON::문서.신규({
    제공자: 'gcp',
    projectId: PROJECT_ID,
    위치: 위치,
    keyRing: key_ring,
    keyName: key_name
  }). do |BSON|
    하지 않는 한 key_version.nil?
      BSON.update({ keyVersion: key_version })
    end
    하지 않는 한 엔드포인트.nil?
      BSON.update({ 엔드포인트: 엔드포인트 })
    end
  end
end