2021年2月16日火曜日

Amazonのアカウント

生活のインフラとなったAmazonだが、日米を往復していると、思わぬトラブルに遭遇することがある。

今回遭遇したものは次のようなもの。

1. Amazon.comとAmazon.co.jpの両方にアカウントがある。

2. USにいるときでもAmazon.co.jpで発注して日本の住所に届けたいことがある。

3. JPに一時帰国中。

4. WindowsUpdateをかけた。ブラウザのCookieなどブラウザに保存されていた認証情報が飛ぶ。

5. パスワードを入れてログインしようとしたら、認証リンクがUSの携帯電話のSMSに送付される。

詰んだ


現象を理解するために、現代での認証についておさらい。

ウェブサービスの認証に、ユーザ名(一般的にはe-mailアドレス)とパスワードだけで認証するには弱い、とされている。e-mailは公開だし、たいがいのユーザはパスワードが単純で使いまわしている。推測パスワードやどこかで漏れたパスワードで容易にログインできる。

それを防ぐためのものが2要素認証。代表的にはパスワードに加えて「携帯電話を持っていること」で認証する。アカウントに携帯電話を登録しておいて、その携帯電話にSMSで確認コードや確認リンクを送付。確認コードの入力や確認リンクのクリックをもって、認証OKとする。

しかし、毎回ログインするたびに携帯電話にSMSを送っても煩雑だ。そのために、ブラウザ認証というものがある。いちどログインが成功したブラウザのCookieに認証情報を保存しておくことによって、そのブラウザでログインしたときには2要素認証を省略する。パスワードの入力も省略することがほとんどだ。

逆にCookieを飛ばしたらブラウザの認証情報が失われて2要素認証が再発動する。これが今回発生したこと。本来であればWindowsUpdateでCookieはリセットされるべきではない。しかも、FirefoxとChromeの両方とも、一気にやられた。

2要素認証の代表的な手段としてSMS認証がある。しかし、今回のような国をまたいで移動するときには使えない。その代わりとして、認証アプリ(Google Authenticatorなど)を使って確認コードを発生させたり、YubiKeyなどのUSBデバイスも使うことができる。OTPトークンも同様。携帯電話の電話番号と同様に、2要素認証に使うアプリやデバイスの固有IDを事前に登録しておかなければならない。

今回のようなことを防ぐためには、デフォルトのSMS認証に頼るのではなく、積極的に2要素認証を有効に設定して、認証アプリやYubiKeyを事前に登録しておかなければならない。スマホにはUSBポートが無いので、利便性を考えると認証アプリが便利かな。バックアップとしてUSBキーも確実性を考えるとよさそうだ。


顛末としては、なんとかブラウザ認証が生きている端末を探し出して、そこからログインして、登録携帯電話番号を国内に変更したら復活した。この場合でもe-mailに確認コードが送られてくるがe-mailは世界中でアクセス可能だ。携帯電話番号の変更なので、SMSが送られてはこない。ブラウザ認証がなされているので、SMS認証ではなくe-mail認証ですんだ。

 

Amazonの場合はAmazonアプリもインストールして、そこにも認証情報を入れておくとより安心だろう。


 

 

 

 

 

 

 

 

0 件のコメント:

コメントを投稿