Module: VeracodeApiSigning::Regions

Included in:
Formatters, HMACAuth, Validation
Defined in:
lib/veracode_api_signing/regions.rb

Constant Summary collapse

REGIONS =
{ "e" => "eu", "f" => "fedramp", "g" => "global" }.freeze

Instance Method Summary collapse

Instance Method Details

#get_region_for_api_credential(api_credential) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/veracode_api_signing/regions.rb', line 9

def get_region_for_api_credential(api_credential)
  if api_credential.include?("-")
    prefix = api_credential.split("-").first
    raise VeracodeApiSigning::CredentialsError, "Credential starts with an invalid prefix" if prefix.length != 8

    region_character = prefix[6].downcase
  else
    region_character = "g"
  end

  if REGIONS.key?(region_character)
    REGIONS.fetch(region_character)
  else
    (raise VeracodeApiSigning::CredentialsError,
           "Credential does not map to a known region")
  end
end

#remove_prefix_from_api_credential(api_credential) ⇒ Object



27
28
29
# File 'lib/veracode_api_signing/regions.rb', line 27

def remove_prefix_from_api_credential(api_credential)
  api_credential.split("-").last
end