新しい OAuth カスタム URI スキーム制限を通じて OAuth フローでのユーザーの安全性を向上させる

10月 02, 2023
Vikrant Rana Product Manager

OAuth 2.0 カスタム URI スキームは、アプリのなりすましによる攻撃に対して脆弱であることが知られています。ユーザーの安全性を確保することや、Google のユーザーデータにアクセスするサードパーティ アプリケーションをより安全に使用する方法を見つけるという Google の継続的な取り組みの一環として、カスタム URI スキーム メソッドの使用を制限します。これらのメソッドは、新しい Chrome 拡張機能では許可されなくなるほか、デフォルトで Android アプリでサポートされなくなります。

新しい Chrome 拡張機能ではカスタム URI スキーム リダイレクト メソッドが許可されない

Chrome 拡張機能になりすまして、認証情報を盗もうとする悪意のある人物からユーザーを保護するため、新しい拡張機能が OAuth カスタム URI スキーム メソッドを使用することは許可されなくなりました。代わりに、Chrome Identity API を使用して OAuth を実装します。これにより、OAuth 2.0 レスポンスがより安全にアプリに送信されます。

デベロッパーが行うべきこと

認証に Chrome Identity API メソッドを使用するには、新しい Chrome 拡張機能が必要になります。既存の OAuth クライアント設定はこの変更の影響を受けませんが、Chrome Identity API メソッドに移行することを強くお勧めします。Google は今後、カスタム URI スキーム メソッドを禁止し、すべての拡張機能に Chrome Identity API メソッドの使用を義務付ける可能性があります。

Android クライアントに対してデフォルトでカスタム URI スキーム リダイレクト メソッドを無効にする

新しい Android アプリは、デフォルトでカスタム URI スキームを使用して認証リクエストを行うことができなくなります。代わりに、Android 用 Google Identity Services SDK を使用して、OAuth 2.0 レスポンスをアプリに直接送信することを検討してください。

デベロッパーが行うべきこと

既存のアプリを切り替えて、Android 用 Google Identity Services SDK を使用するよう強くお勧めします。新しいアプリを作成していて、推奨される代替手段がニーズに合わない場合は、Google API Console のクライアント設定ページにある [Advanced Settings] セクションで、アプリのカスタム URI スキーム メソッドを有効にすることができます。

ユーザーに表示されるエラー メッセージ

ユーザーが、カスタム URI スキーム メソッドを使用して不正なリクエストを行うアプリを使用しようとすると、「無効なリクエスト」というエラー メッセージが表示されることがあります。エラー メッセージの [Learn more] リンクをクリックすると、このエラーについてさらに詳しく知ることができます。

Chrome-Identity-API-release-2
ユーザーに表示されるエラーの例

デベロッパーに表示されるエラー メッセージ

デベロッパーは、アプリケーションのユーザーフローをテストする際に追加のエラー情報を見ることができます。「エラーの詳細を表示」するリンクをクリックすると、エラーに関する詳細な情報が得られます。これには、根本原因や、エラーの解決方法を説明したリンクなどが含まれます。

2
デベロッパーに表示されるエラーの例