class Speculate::Console
Define console URL class
Public Class Methods
new(params = {})
click to toggle source
# File lib/speculate/console.rb, line 9 def initialize(params = {}) @options = params end
Public Instance Methods
logout_url()
click to toggle source
# File lib/speculate/console.rb, line 25 def logout_url @logout_url ||= 'https://console.aws.amazon.com/ec2/logout!doLogout'.freeze end
url()
click to toggle source
# File lib/speculate/console.rb, line 13 def url @url ||= [ 'https://signin.aws.amazon.com/federation', '?Action=login', '&Issuer=', '&Destination=', CGI.escape('https://console.aws.amazon.com/'), '&SigninToken=', signin_token ].join end
Private Instance Methods
signin_token()
click to toggle source
# File lib/speculate/console.rb, line 31 def signin_token @signin_token ||= JSON.parse(open(signin_token_url).read)['SigninToken'] end
signin_token_creds()
click to toggle source
# File lib/speculate/console.rb, line 44 def signin_token_creds @signin_token_creds ||= { 'sessionId' => @options[:creds].access_key_id, 'sessionKey' => @options[:creds].secret_access_key, 'sessionToken' => @options[:creds].session_token } end
signin_token_url()
click to toggle source
# File lib/speculate/console.rb, line 35 def signin_token_url @signin_token_url ||= [ 'https://signin.aws.amazon.com/federation', '?Action=getSigninToken', '&Session=', CGI.escape(signin_token_creds.to_json) ].join end