OAuth2.0
読み方:オーオース2.0
正式名称:Open Authorization2.0
OAuth 2.0は、あるWebサービスが他のサービスに「自分の代わりにアクセスする許可」を与えるためのしくみです。例えば、ご自身のSNSアカウントを使って別のアプリにログインした経験はありませんか?そのとき、裏側ではOAuth 2.0というしくみが働いていることがあります。
OAuth 2.0では、(1)利用者、(2)アクセスを許可するサービス、(3)アクセスへの許可を受けるサービスの3者が登場します。利用者が「このサービスにだけ、私のデータへのアクセスを認める」と指定し、その結果が“許可証”のようなもの(アクセストークン)として形になります。
この技術の目的は、パスワードを渡さずにアクセス権だけを共有することです。例えば、あなたがあるアプリに「Googleのカレンダーを見せてもいいよ」と許可を出したとします。そのとき、アプリにはGoogleのIDやパスワードは渡しません。でも、アプリは「この人は確かに許可してくれた」という許可証(アクセストークン)を受け取って、カレンダーにアクセスできるようになります。
OAuth 2.0のメリットは、パスワードを共有しないため安全性を高められることです。万が一アクセストークンが漏れても、そのトークンには有効期限があるため、ずっと使い続けられることはありません。また、アクセスの範囲も最初に決めておけるので、不要な情報まで見られるリスクを減らせます。
とはいえ、OAuth 2.0を使えばすべて安心というわけではありません。トークンの扱い方がずさんだと、情報が盗まれるおそれもあります。例えば、アクセストークンを盗んだ攻撃者が、本人になりすまして勝手にデータを取得するといった被害も過去には発生しています。
そのため、OAuth 2.0を導入する際は、トークンの保存方法や通信の暗号化、定期的な期限の確認など、いくつものポイントを注意深く設計する必要があります。
用語解説の監修:増井 敏克