class Fog::AWS::STS::Mock

Public Class Methods

data() click to toggle source
# File lib/fog/aws/sts.rb, line 20
def self.data
  @data ||= Hash.new do |hash, key|
    hash[key] = {
      :owner_id => Fog::AWS::Mock.owner_id,
      :server_certificates => {}
    }
  end
end
new(options={}) click to toggle source
# File lib/fog/aws/sts.rb, line 37
def initialize(options={})
  @use_iam_profile = options[:use_iam_profile]
  setup_credentials(options)
end
reset() click to toggle source
# File lib/fog/aws/sts.rb, line 29
def self.reset
  @data = nil
end
server_certificate_id() click to toggle source
# File lib/fog/aws/sts.rb, line 33
def self.server_certificate_id
  Fog::Mock.random_hex(16)
end

Public Instance Methods

data() click to toggle source
# File lib/fog/aws/sts.rb, line 42
def data
  self.class.data[@aws_access_key_id]
end
get_federation_token(name, policy, duration=43200) click to toggle source
# File lib/fog/aws/requests/sts/get_federation_token.rb, line 44
def get_federation_token(name, policy, duration=43200)
  Excon::Response.new.tap do |response|
    response.status = 200
    response.body = {
    'SessionToken'     => Fog::Mock.random_base64(580),
    'SecretAccessKey'  => Fog::Mock.random_base64(40),
    'Expiration'       => (DateTime.now + duration).strftime('%FT%TZ'),
    'AccessKeyId'      => Fog::AWS::Mock.key_id(20),
    'Arn'              => "arn:aws:sts::#{Fog::AWS::Mock.owner_id}:federated-user/#{name}",
    'FederatedUserId'  => "#{Fog::AWS::Mock.owner_id}:#{name}",
    'PackedPolicySize' => Fog::Mock.random_numbers(2),
    'RequestId'        => Fog::AWS::Mock.request_id
    }
  end
end
reset_data() click to toggle source
# File lib/fog/aws/sts.rb, line 46
def reset_data
  self.class.data.delete(@aws_access_key_id)
end
setup_credentials(options) click to toggle source
# File lib/fog/aws/sts.rb, line 50
def setup_credentials(options)
  @aws_access_key_id = options[:aws_access_key_id]
end