Module: Aws::Endpoints Private

Defined in:
lib/aws-sdk-core/endpoints.rb,
lib/aws-sdk-core/endpoints/url.rb,
lib/aws-sdk-core/endpoints/rule.rb,
lib/aws-sdk-core/endpoints/endpoint.rb,
lib/aws-sdk-core/endpoints/function.rb,
lib/aws-sdk-core/endpoints/matchers.rb,
lib/aws-sdk-core/endpoints/rule_set.rb,
lib/aws-sdk-core/endpoints/condition.rb,
lib/aws-sdk-core/endpoints/reference.rb,
lib/aws-sdk-core/endpoints/templater.rb,
lib/aws-sdk-core/endpoints/tree_rule.rb,
lib/aws-sdk-core/endpoints/error_rule.rb,
lib/aws-sdk-core/endpoints/endpoint_rule.rb,
lib/aws-sdk-core/endpoints/rules_provider.rb

This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.

Defined Under Namespace

Modules: Matchers, Templater Classes: Condition, Endpoint, EndpointRule, ErrorRule, Function, Reference, Rule, RuleSet, RulesProvider, TreeRule, URL

Constant Summary collapse

ENDPOINT_AUTH_PREFERENCE_MAP =

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.

Maps config auth scheme preferences to endpoint auth scheme names.

{
  'sigv4' => %w[sigv4 sigv4-s3express],
  'sigv4a' => ['sigv4a'],
  'httpBearerAuth' => ['bearer'],
  'noAuth' => ['none']
}.freeze
SUPPORTED_ENDPOINT_AUTH =

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.

ENDPOINT_AUTH_PREFERENCE_MAP.values.flatten.freeze
MODELED_AUTH_PREFERENCE_MAP =

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.

Maps configured auth scheme preferences to modeled auth traits.

{
  'sigv4' => 'aws.auth#sigv4',
  'sigv4a' => 'aws.auth#sigv4a',
  'httpBearerAuth' => 'smithy.api#httpBearerAuth',
  'noAuth' => 'smithy.api#noAuth'
}.freeze
SUPPORTED_MODELED_AUTH =

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.

MODELED_AUTH_PREFERENCE_MAP.values.freeze

Class Method Summary collapse

Class Method Details

.resolve_auth_scheme(context, endpoint) ⇒ Object

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.



41
42
43
44
45
46
47
48
49
50
# File 'lib/aws-sdk-core/endpoints.rb', line 41

def resolve_auth_scheme(context, endpoint)
  if endpoint && (auth_schemes = endpoint.properties['authSchemes'])
    auth_scheme = endpoint_auth_scheme_preference(auth_schemes, context.config.auth_scheme_preference)
    raise 'No supported auth scheme for this endpoint.' unless auth_scheme

    merge_signing_defaults(auth_scheme, context.config)
  else
    default_auth_scheme(context)
  end
end