class ZuoraConnect::AppInstanceBase
def kms_encrypt(value)
def kms_encrypt(value) kms_tries ||= 0 kms_client = Aws::KMS::Client.new({region: Rails.application.secrets.aws['AWS_REGION'], credentials: self.aws_auth_client}.delete_if {|k,v| v.blank? }) resp = kms_client.encrypt({key_id: kms_key, plaintext: value}) return resp.ciphertext_blob.unpack('H*').first rescue *AWS_AUTH_ERRORS => ex if (kms_tries += 1) < 3 Rails.logger.warn(AWS_AUTH_ERRORS_MSG, ex) retry else Rails.logger.error(AWS_AUTH_ERRORS_MSG, ex) raise end end