Class: Mongo::Crypt::KMS::Local::Credentials Private
- Inherits:
-
Object
- Object
- Mongo::Crypt::KMS::Local::Credentials
- 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 Summary collapse
- 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
-
#key ⇒ String
readonly
private
Master key.
Instance Method Summary collapse
-
#initialize(opts) ⇒ Credentials
constructor
private
Creates a local KMS credentials object form a parameters hash.
-
#to_document ⇒ BSON::Document
private
Local KMS credentials in libmongocrypt format.
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 (readonly)
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 |