class Aws::TokenProviderChain
@api private
def determine_profile_name(options)
def determine_profile_name(options) (options[:config] && options[:config].profile) || ENV['AWS_PROFILE'] || ENV['AWS_DEFAULT_PROFILE'] || 'default' end
def initialize(config = nil)
def initialize(config = nil) @config = config end
def providers
def providers [ [:static_profile_sso_token, {}], [:sso_token, {}] ] end
def resolve
-
(TokenProvider, nil)
-
def resolve providers.each do |method_name, options| provider = send(method_name, options.merge(config: @config)) return provider if provider && provider.set? end nil end
def sso_token(options)
def sso_token(options) profile_name = determine_profile_name(options) if Aws.shared_config.config_enabled? Aws.shared_config.sso_token_from_config(profile: profile_name) end rescue Errors::NoSuchProfileError nil end
def static_profile_sso_token(options)
def static_profile_sso_token(options) if Aws.shared_config.config_enabled? && options[:config] && options[:config].profile Aws.shared_config.sso_token_from_config( profile: options[:config].profile ) end end