class AwsMfaSecure::Session
Public Class Methods
new(options={}, *argv)
click to toggle source
# File lib/aws_mfa_secure/session.rb, line 3 def initialize(options={}, *argv) @options = options @argv = ["aws"] + argv @aws_profile = aws_profile end
Public Instance Methods
run()
click to toggle source
# File lib/aws_mfa_secure/session.rb, line 9 def run unless iam_mfa? exec(*@argv) # will never get pass this point if there's no mfa_serial setting end if fetch_creds? resp = get_session_token(shell: true) save_creds(resp.credentials.to_h) end ENV['AWS_ACCESS_KEY_ID'] = credentials["access_key_id"] ENV['AWS_SECRET_ACCESS_KEY'] = credentials["secret_access_key"] ENV['AWS_SESSION_TOKEN'] = credentials["session_token"] exec(*@argv) end