class Aws::SharedCredentials
Attributes
@return [Credentials]
@return [String]
@return [String]
Public Class Methods
Constructs a new SharedCredentials
object. This will load static (access_key_id, secret_access_key and session_token) AWS access credentials from an ini file, which supports profiles. The default profile name is ‘default’. You can specify the profile name with the ‘ENV` or with the `:profile_name` option.
To use credentials from the default credential resolution chain create a client without the credential option specified. You may access the resolved credentials through ‘client.config.credentials`.
@option [String] :path Path to the shared file. Defaults
to "#{Dir.home}/.aws/credentials".
@option [String] :profile_name Defaults to ‘default’ or
`ENV['AWS_PROFILE']`.
# File lib/aws-sdk-core/shared_credentials.rb, line 27 def initialize(options = {}) shared_config = Aws.shared_config @path = options[:path] @path ||= shared_config.credentials_path @profile_name = options[:profile_name] @profile_name ||= ENV['AWS_PROFILE'] @profile_name ||= shared_config.profile_name if @path && @path == shared_config.credentials_path @credentials = shared_config.credentials(profile: @profile_name) else config = SharedConfig.new( credentials_path: @path, profile_name: @profile_name ) @credentials = config.credentials(profile: @profile_name) end end
Public Instance Methods
@api private
# File lib/aws-sdk-core/shared_credentials.rb, line 55 def inspect parts = [ self.class.name, "profile_name=#{profile_name.inspect}", "path=#{path.inspect}", ] "#<#{parts.join(' ')}>" end
@deprecated This method is no longer used. @return [Boolean] Returns ‘true` if a credential file
exists and has appropriate read permissions at {#path}.
@note This method does not indicate if the file found at {#path}
will be parsable, only if it can be read.
# File lib/aws-sdk-core/shared_credentials.rb, line 69 def loadable? !path.nil? && File.exist?(path) && File.readable?(path) end