Google OAuth 2.0トークンの取り消しとアカウントセキュリティの強化
Googleは、ユーザーのデータ保護を強化するために、OAuth 2.0に基づくトークンの取り消しに関する新たなポリシーを導入しました。この変更により、特に企業向けのGmailユーザーのアカウントセキュリティが向上します。本記事では、このポリシーの具体的な内容や影響について詳しく解説します。
新ポリシーの概要
2016年10月5日より、Google Appsドメイン内のユーザーがパスワードを変更すると、そのユーザーのGmailに関連するOAuth 2.0トークンが取り消されることになります。これにより、アプリが新たに認証を求められることとなります。
- パスワード変更後のトークンの取り消し: ユーザーがこの日にパスワードを変更すると、そのメールにアクセスするためのトークンは無効になります。
- 開発者への影響: 開発者は、自身のアプリケーションがHTTP 400または401のエラーコードを処理できるように修正する必要があります。
取り消しトークンの概要
取り消されたOAuth 2.0トークンは、ユーザーのリソースへのアクセスをもはや提供しません。トークンが取り消されると、APIへの呼び出しにエラーが返されます。
- トークンの無効化: 現在のトークン文字列は無効になるため、削除する必要があります。
- エラーの処理: API呼び出しの失敗を処理するために、アプリケーションはエラー処理コードを追加することが推奨されます。
影響を受けるAPIとスコープ
今回は主にメールに関連するスコープに制限されていますが、以下の点に注意が必要です。
- Apps Scriptトークンは対象外: Apps Scriptトークンはトークンの取り消しの対象外です。
- サードパーティーアプリへの影響: Apple MailやThunderbirdなどのサードパーティのメールアプリは、パスワードリセット後に新しいトークンが必要となります。
トークンの取り消しを確認する方法
パスワード変更時に短命のアクセストークンや長期のリフレッシュトークンは取り消されます。取り消されたトークンを使用してAPIへアクセスすると、HTTP 400または401エラーが返されます。
アプリケーションでのトークンの取り消しへの対応方法
トークンの取り消しは通常の条件とみなされるべきです。アプリケーションがこれを期待して処理できるようにするために、以下の対策が推奨されます。
- エラー処理の実装: API呼び出しやトークンの更新時に取り消されたトークンを検出するエラー処理コードを追加します。
- 機能の無効化: アクセス権を失った機能を一時的に無効にします。
- ユーザーへの通知: アクセス権が取り消されたことをユーザーに通知し、再認証を促します。
- 再認証のためのUI提供: ユーザーがスムーズに再認証できるよう、分かりやすいUIを提供します。
変更のタイムライン
この新しいポリシーは2016年10月5日より施行されます。今後のスコープ追加についても事前に通知がなされる予定ですので、開発者は特に注意が必要です。具体的なスコープリストやFAQはGoogleのヘルプセンターにて確認できます。
このポリシーの導入は、ユーザーのアカウントセキュリティを大きく向上させるでしょう。アプリケーションを適切に設定すれば、ユーザーにとってより快適で安全な環境を提供できるはずです。