class KmsClient
Public Class Methods
aws_kms_client(options)
click to toggle source
# File lib/kms_client.rb, line 19 def self.aws_kms_client(options) params = { region: 'us-east-1', stub_responses: ENV['APP_ENV'] == 'test' }.merge(options) @@kms = Aws::KMS::Client.new(params) if @@kms.nil? @@kms end
new(options = {})
click to toggle source
# File lib/kms_client.rb, line 7 def initialize(options = {}) options ||= {} @kms = self.class.aws_kms_client(options) end
Public Instance Methods
decrypt(cipher)
click to toggle source
# File lib/kms_client.rb, line 12 def decrypt(cipher) # Assume value is base64 encoded: decoded = Base64.decode64 cipher decrypted = @kms.decrypt ciphertext_blob: decoded decrypted[:plaintext] end