Sha256: f59910967ce61a539bf48ae7d18bd78c5714ffb41675cf54012d48ded83803c6

Contents?: true

Size: 904 Bytes

Versions: 1

Compression:

Stored size: 904 Bytes

Contents

# frozen_string_literal: true

require_relative 'configuration'
require_relative 'secure'
require_relative 'http'
require_relative 'validators/configuration'
require_relative 'managers/auth_manager'
require_relative 'authenticators/pam'
require_relative 'authenticators/aws'

module RevbitsPamCicd
  class API
    class << self
      def fetch_secret(variable_id)

        secret_creators = {
          prime: 23,
          generated: 9,
        }

        private_key_a, private_key_b = Secure.private_keys

        public_key_a, public_key_b = Secure.public_keys(private_key_a, private_key_b, secret_creators)

        encrypted_values = Managers::AuthManager.fetch_secret(variable_id, public_key_a, public_key_b)

        secret = Secure.secret(encrypted_values, private_key_a, private_key_b, secret_creators)

        Secure.decrypt(secret, encrypted_values.dig('value'))
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
revbits_pam_cicd-0.1.2 lib/revbits_pam_cicd/api.rb