2012-06-04 15:24:02 +02:00
|
|
|
require 'fog/core/model'
|
|
|
|
|
|
|
|
module Fog
|
|
|
|
module AWS
|
|
|
|
class IAM
|
|
|
|
|
|
|
|
class AccessKey < Fog::Model
|
|
|
|
|
|
|
|
identity :id, :aliases => 'AccessKeyId'
|
|
|
|
attribute :username, :aliases => 'UserName'
|
|
|
|
attribute :secret_access_key, :aliases => 'SecretAccessKey'
|
|
|
|
attribute :status, :aliases => 'Status'
|
2012-12-22 23:30:34 +00:00
|
|
|
|
2012-06-04 15:24:02 +02:00
|
|
|
def save
|
|
|
|
requires :username
|
|
|
|
|
2012-12-22 23:30:34 +00:00
|
|
|
data = service.create_access_key('UserName'=> username).body["AccessKey"]
|
2012-06-04 15:24:02 +02:00
|
|
|
merge_attributes(data)
|
|
|
|
true
|
|
|
|
end
|
2012-12-22 23:30:34 +00:00
|
|
|
|
2012-06-04 15:24:02 +02:00
|
|
|
def destroy
|
|
|
|
requires :id
|
|
|
|
requires :username
|
|
|
|
|
2012-12-22 23:30:34 +00:00
|
|
|
service.delete_access_key(id,'UserName'=> username)
|
2012-06-04 15:24:02 +02:00
|
|
|
true
|
|
|
|
end
|
2012-12-22 23:30:34 +00:00
|
|
|
|
2012-06-04 15:24:02 +02:00
|
|
|
def user
|
|
|
|
requires :username
|
2012-12-22 23:30:34 +00:00
|
|
|
service.users.get(username)
|
2012-06-04 15:24:02 +02:00
|
|
|
end
|
2012-12-22 23:30:34 +00:00
|
|
|
|
2012-06-04 15:24:02 +02:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
2012-12-22 23:30:34 +00:00
|
|
|
end
|