class AWS::Creds::KeyPair

Attributes

access_key_id[R]
secret_access_key[R]

Public Class Methods

new(access_key_id, secret_access_key) click to toggle source
# File lib/aws/creds/keypair.rb, line 9
def initialize access_key_id, secret_access_key
  @access_key_id, @secret_access_key = access_key_id, secret_access_key
  validate
end

Public Instance Methods

inspect()
Alias for: to_s
to_hash() click to toggle source

For AWS-SDK compatibility

# File lib/aws/creds/keypair.rb, line 15
def to_hash
  {:access_key_id => access_key_id, :secret_access_key => secret_access_key}
end
to_s() click to toggle source

Make it harder to leak secrets by accident

# File lib/aws/creds/keypair.rb, line 20
def to_s
  "<#{self.class}: #{access_key_id[0..9]}...>"
end
Also aliased as: inspect

Private Instance Methods

validate() click to toggle source
# File lib/aws/creds/keypair.rb, line 26
def validate
  raise InvalidAccessKeyId.new 'Incorrect length for Access Key ID' unless access_key_id.length == 20
  raise InvalidAccessKeyId.new 'Access Key ID contains invalid characters' unless access_key_id =~ /^[A-Z0-9]{20}$/
  raise InvalidSecretAccessKey.new 'Incorrect length for Secret Access Key' unless secret_access_key.length == 40
end