Credentials — Documentation by YARD 0.9.37 (original) (raw)

Class: Mongo::Crypt::KMS::Local::CredentialsPrivate

Inherits:

Object

Extended by:

Forwardable

Includes:

Validations

Defined in:

lib/mongo/crypt/kms/local/credentials.rb

Overview

This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.

Local KMS Credentials object contains credentials for using local KMS provider.

Constant Summarycollapse

FORMAT_HINT =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

"Local KMS provider options must be in the format: " + "{ key: 'MASTER-KEY' }"

Instance Attribute Summary collapse

Instance Method Summarycollapse

Methods included from Validations

#validate_param, validate_tls_options

Constructor Details

#initialize(opts) ⇒ Credentials

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Creates a local KMS credentials object form a parameters hash.

46 47 48 49 50 51 # File 'lib/mongo/crypt/kms/local/credentials.rb', line 46 def initialize(opts) @opts = opts unless empty? @key = validate_param(:key, opts, FORMAT_HINT) end end

Instance Attribute Details

#key ⇒ String

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns Master key.

30 31 32 # File 'lib/mongo/crypt/kms/local/credentials.rb', line 30 def key @key end

Instance Method Details

#to_document ⇒ BSON::Document

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns Local KMS credentials in libmongocrypt format.

54 55 56 57 58 59 # File 'lib/mongo/crypt/kms/local/credentials.rb', line 54 def to_document return BSON::Document.new({}) if empty? BSON::Document.new({ key: BSON::Binary.new(@key, :generic), }) end