Sha256: c8817dc41f428a81ba6a4031e30b89c98b55d13e618adb1222ad0c0032356079
Contents?: true
Size: 1.31 KB
Versions: 3
Compression:
Stored size: 1.31 KB
Contents
require 'miasma' module Miasma module Contrib module Aws module Api # IAM helper class class Iam < Miasma::Types::Api # Service name of the API API_SERVICE = 'iam'.freeze # Supported version of the IAM API API_VERSION = '2010-05-08'.freeze include Contrib::AwsApiCore::ApiCommon include Contrib::AwsApiCore::RequestUtils def connect super service_name = self.class::API_SERVICE.downcase self.aws_host = [ service_name, api_endpoint ].join('.') end # Fetch current user information def user_info result = request( :path => '/', :params => { 'Action' => 'GetUser' } ).get(:body, 'GetUserResponse', 'GetUserResult', 'User') Smash.new( :user_id => result['UserId'], :path => result['Path'], :username => result['UserName'], :arn => result['Arn'], :created => result['CreateDate'], :password_last_used => result['PasswordLastUsed'], :account_id => result['Arn'].split(':')[4] ) end end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
miasma-aws-0.3.10 | lib/miasma-aws/api/iam.rb |
miasma-aws-0.3.8 | lib/miasma-aws/api/iam.rb |
miasma-aws-0.3.6 | lib/miasma-aws/api/iam.rb |