class Awssume::Adapter::AwsClient
This is aws sts client wrapper class
Attributes
config[R]
Public Class Methods
new(config)
click to toggle source
# File lib/awssume/adapter/aws_client.rb, line 9 def initialize(config) @config = config end
Public Instance Methods
assume()
click to toggle source
# File lib/awssume/adapter/aws_client.rb, line 13 def assume sts_client.assume_role(assume_role_params).credentials.to_h end
role_session_name()
click to toggle source
# File lib/awssume/adapter/aws_client.rb, line 17 def role_session_name config[:role_session_name] end
Private Instance Methods
assume_role_params()
click to toggle source
# File lib/awssume/adapter/aws_client.rb, line 23 def assume_role_params p = { role_arn: config[:role_arn], role_session_name: role_session_name, external_id: config[:external_id], duration_seconds: config[:duration_seconds], } p.delete(:external_id) unless p[:external_id] p.delete(:duration_seconds) \ if p[:duration_seconds].nil? || p[:duration_seconds] == 0 p end
sts_client()
click to toggle source
# File lib/awssume/adapter/aws_client.rb, line 38 def sts_client Aws::STS::Client.new(region: config[:region]) end