PNG  IHDR;IDATxܻn0K )(pA 7LeG{ §㻢|ذaÆ 6lذaÆ 6lذaÆ 6lom$^yذag5bÆ 6lذaÆ 6lذa{ 6lذaÆ `}HFkm,mӪôô! x|'ܢ˟;E:9&ᶒ}{v]n&6 h_tڠ͵-ҫZ;Z$.Pkž)!o>}leQfJTu іچ\X=8Rن4`Vwl>nG^is"ms$ui?wbs[m6K4O.4%/bC%t Mז -lG6mrz2s%9s@-k9=)kB5\+͂Zsٲ Rn~GRC wIcIn7jJhۛNCS|j08yiHKֶۛkɈ+;SzL/F*\Ԕ#"5m2[S=gnaPeғL lذaÆ 6l^ḵaÆ 6lذaÆ 6lذa; _ذaÆ 6lذaÆ 6lذaÆ RIENDB` #!/usr/bin/perl use Paws; use v5.10; use Module::Runtime qw/require_module/; package Opts { use Moose; with 'MooseX::Getopt'; has console => (is => 'rw', isa => 'Bool', default => 0); } my $opts = Opts->new_with_options; my $bo_loaded = 0; if (not $opts->console) { # Try to load Browser::Open; eval { require_module 'Browser::Open'; }; if ($@) { $opts->console(1); } } my $user = $ENV{USER} or 'paws federated user'; my $issuer = 'http://aws.amazon.com'; my $dest = 'https://console.aws.amazon.com/'; my $creds = Paws->service('STS')->GetFederationToken( Name => $user, Policy => '{"Version": "2012-10-17","Statement": {"Effect": "Allow","Action": "*", "Resource": "*" } }'); my $token = Paws->service('Signin')->GetSigninToken( SessionId => $creds->Credentials->AccessKeyId, SessionKey => $creds->Credentials->SecretAccessKey, SessionToken => $creds->Credentials->SessionToken ); my $url = Paws->service('Signin')->Login( Issuer => $issuer, Destination => $dest, SigninToken => $token->SigninToken ); if ($opts->console){ say "Go to :"; say $url->URL; } else { Browser::Open::open_browser($url->URL); }