アプリケーションから限定公開データがリクエストされた場合は、対象データへのアクセス権を持つ認証済みのユーザーがリクエストを承認する必要があります。
アプリケーションから Android Over The Air API に送信するすべてのリクエストには、認証トークンが含まれている必要があります。このトークンは Google でアプリケーションを識別するためにも使用されます。
認証プロトコルについて
リクエストを承認するために、アプリケーションは OAuth 2.0 を使用する必要があります。これ以外の認証プロトコルには対応していません。アプリケーションで「Google でログイン」を使用している場合、承認手続きの一部が自動化されます。
OAuth 2.0 を使用したリクエストの承認
Android Over The Air API へのリクエストは、すべて認証済みのユーザーによって承認される必要があります。
OAuth 2.0 の承認プロセス(「フロー」)の詳細は開発するアプリケーションの種類によって若干異なりますが、次の一般的なプロセスはすべての種類のアプリケーションに当てはまります。
- アプリケーションの作成時に、Google API Console を使用してアプリケーションを登録します。登録すると、後で必要になるクライアント ID やクライアント シークレットなどの情報が Google から提供されます。
- Google API Console で Android Over The Air API を有効にします(Indexing API が API Console に表示されない場合は、この手順をスキップしてください)。
- アプリケーションでユーザーデータにアクセスする必要がある場合は、特定のアクセスのスコープを Google にリクエストします。
- データをリクエストするアプリケーションの承認を求める Google の同意画面がユーザーに表示されます。
- ユーザーが承認すると、有効期間の短いアクセス トークンがアプリケーションに付与されます。
- アプリケーションは、リクエストにそのアクセス トークンを付与してユーザーデータをリクエストします。
- Google がそのリクエストとトークンが有効であると判断すると、リクエストされたデータが返されます。
プロセスによっては、更新トークンを使用して新しいアクセス トークンを取得するなど、追加の手順が必要になる場合もあります。各種アプリケーションのフローについて詳しくは、Google の OAuth 2.0 ドキュメントをご覧ください。
Android Over The Air API の OAuth 2.0 のスコープ情報は次のとおりです。
範囲 | 意味 |
---|---|
https://www.googleapis.com/auth/android_partner_over_the_air |
読み取り / 書き込みアクセス |
https://www.googleapis.com/auth/android_partner_over_the_air.readonly |
読み取り専用アクセス |
OAuth 2.0 を使用してアクセスをリクエストするには、アプリケーションの登録時に Google より提供される情報(クライアント ID やクライアント シークレットなど)の他に、スコープ情報が必要です。
ヒント: Google API クライアント ライブラリで一部の承認プロセスを処理することもできます。これらのライブラリはさまざまなプログラミング言語で用意されています。詳細については、ライブラリとサンプルのページをご覧ください。
サービス アカウントの使用
Android Over The Air API では、表示できるデータを決定するために、実際のユーザーが必要になります。プログラムで操作する場合は、サービス アカウントを使用します。サービス アカウントの作成手順は次のとおりです。
- [認証情報] ページに移動します。
- [認証情報を作成] をクリックし、[サービス アカウント キー] を選択します。
- [新しいサービス アカウント] を選択し、メールアドレスを入力します(gota-api が推奨されます)。ロールとして [サービス アカウント アクター] を選択します。
- [作成] をクリックします。
JSON ファイルと、目的のプログラミング言語のサービス アカウントを使用してアプリケーションを認可する手順を使用します。