3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

AWSに手軽に複数アカウントログイン

Last updated at Posted at 2016-09-15

#AWSに手軽に複数アカウントログイン

AWSで複数アカウント使ってると切り替えが面倒です。
Chromeだとシークレットモードにしたり、Chromeのアカウント自体を切り替えたりって方法で対処してるようですが、それもやっぱり面倒です。

というわけでSeleniumとwebdriverを使ってブラウザ立ち上げてもらって、ついでにログイン操作をしてもらうことにしました。

  • seleniumやwebdriverの準備は別の記事を参考にしてください。
  • 人によってログインの仕方違うかもしれないのですが、その場合は自分のやり方に合わせてソース変えてください。

まず以下のソースを login.py とかで保存してください。
EmailやPasswordは自分のに書き換えてください。

#! /usr/bin/env python
#-*- coding: utf-8 -*-

from selenium import webdriver

email = 'EMAIL'
password = 'PASSWORD'

d = webdriver.Chrome("./chromedriver")
d.get('https://www.amazon.com/ap/signin?openid.assoc_handle=aws&openid.return_to=https%3A%2F%2Fsignin.aws.amazon.com%2Foauth%3Fresponse_type%3Dcode%26client_id%3Darn%253Aaws%253Aiam%253A%253A015428540659%253Auser%252Fhomepage%26redirect_uri%3Dhttps%253A%252F%252Fconsole.aws.amazon.com%252Fconsole%252Fhome%253Fstate%253DhashArgs%252523%2526isauthcode%253Dtrue%26noAuthCookie%3Dtrue&openid.mode=checkid_setup&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&openid.identity=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.claimed_id=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&action=&disableCorpSignUp=&clientContext=&marketPlaceId=&poolName=&authCookies=&pageId=aws.ssop&siteState=pre-register%2Cja&accountStatusPolicy=P1&sso=&openid.pape.preferred_auth_policies=MultifactorPhysical&openid.pape.max_auth_age=120&openid.ns.pape=http%3A%2F%2Fspecs.openid.net%2Fextensions%2Fpape%2F1.0&server=%2Fap%2Fsignin%3Fie%3DUTF8&accountPoolAlias=&forceMobileApp=0&language=ja&forceMobileLayout=0')

inputEmail = d.find_element_by_id('ap_email')
inputEmail.send_keys(email)
inputPassword = d.find_element_by_id('ap_password')
inputPassword.send_keys(password)
signInBtn = d.find_element_by_id('signInSubmit-input')
signInBtn.click()

d.maximize_window()

で、macだったら同じ階層にlogin.commandみたいな感じでバッチを作成。

cd `dirname $0`
./login.py
exit

あとは ⌘+Spaceでspotlightを呼び出して、login.command呼び出せばブラウザ開いてログインしてくれます。
アカウント毎に上記のファイルを用意すればいい感じです。

だいぶ雑ですが、他にいい方法あれば教えてください。

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?