Google Photos API には、メディア アイテムとアルバムにアクセスするために使用する複数のスコープが含まれます。さまざまな呼び出しから返されるレスポンスは、 ダウンロードするよう要求されています。
アプリケーションから Google Photos API に送信されるすべてのリクエストに、認証トークンが含まれている必要があります。このトークンは Google でアプリケーションを識別するためにも使用されます。
認証プロトコルについて
リクエストを承認するために、アプリケーションは OAuth 2.0 を使用する必要があります。これ以外の認証プロトコルには対応していません。アプリケーションで「Google でログイン」を使用している場合、承認手続きの一部が自動化されます。
OAuth 2.0 を使用したリクエストの承認
Google Photos API に対するすべてのリクエストは、認証済みのユーザーによって承認される必要があります。
OAuth 2.0 の承認プロセス(「フロー」)の詳細は開発するアプリケーションの種類によって若干異なりますが、次の一般的なプロセスはすべての種類のアプリケーションに当てはまります。
- アプリケーションの作成時に、Google API Console を使用してアプリケーションを登録します。登録すると、後で必要になるクライアント ID やクライアント シークレットなどの情報が Google から提供されます。
- Google API Console で Google Photos API を有効にします。(Indexing API が API Console に表示されない場合は、この手順をスキップしてください)。
- アプリケーションでユーザーデータにアクセスする必要がある場合は、特定のアクセスのスコープを Google にリクエストします。
- データをリクエストするアプリケーションの承認を求める Google の同意画面がユーザーに表示されます。
- ユーザーが承認すると、有効期間の短いアクセス トークンがアプリケーションに付与されます。
- アプリケーションは、リクエストにそのアクセス トークンを付与してユーザーデータをリクエストします。
- Google がそのリクエストとトークンが有効であると判断すると、リクエストされたデータが返されます。
プロセスによっては、更新トークンを使用して新しいアクセス トークンを取得するなど、追加の手順が必要になる場合もあります。各種アプリケーションのフローについて詳しくは、Google の OAuth 2.0 ドキュメントをご覧ください。
Google Photos API の OAuth 2.0 のスコープ情報は次のとおりです。
Picker API のスコープ
範囲 | 意味 |
---|---|
https://www.googleapis.com/auth/photospicker.mediaitems.readonly |
セッションを作成、取得、削除し、セッションのメディア アイテムを一覧表示するためのアクセス権。 |
Library API のスコープ
範囲 | 意味 |
---|---|
https://www.googleapis.com/auth/photoslibrary.readonly https://www.googleapis.com/auth/photoslibrary.sharing https://www.googleapis.com/auth/photoslibrary
|
|
https://www.googleapis.com/auth/photoslibrary.appendonly |
バイトのアップロード、メディア アイテムの作成、アルバムの作成、エンリッチメントの追加を行うためのアクセス権。新しいメディアは、ユーザーのライブラリおよびアプリで作成されたアルバムにのみ作成できます。 |
https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata |
デベロッパーが作成したメディア アイテムとアルバムに対する読み取りアクセス権。詳細については、次をご覧ください: メディア アイテムにアクセスする ライブラリのコンテンツ、アルバム、メディア アイテムをリストする。
|
https://www.googleapis.com/auth/photoslibrary.edit.appcreateddata |
編集権限のみ。 デベロッパーが作成したアルバムやメディア アイテムの詳細を変更できます。
|
OAuth 2.0 を使用してアクセスをリクエストする場合、アプリケーションを登録したときに Google から提供された情報(クライアント ID やクライアント シークレットなど)に加えて、スコープ情報が必要になります。
ヒント: Google API クライアント ライブラリで一部の承認プロセスを処理することもできます。これらのライブラリはさまざまなプログラミング言語で用意されています。詳細については、ライブラリとサンプルのページをご覧ください。
スコープの選択
原則として、可能な限り制限の厳しいスコープを選択して、 スコープを指定することができます。ユーザーは、明確に説明された限定的なスコープに対してアクセス権限を付与する傾向があります。アプリを信頼して、アプリが情報を必要とする理由を理解している場合を除き、ユーザーはメディアへの広範なアクセス権限を許可することをためらう場合があります。
段階的にスコープをリクエストする
認可のベスト プラクティスに従うと、アプリケーションは スコープを構成できます。アプリケーションのすべてのスコープをリクエストしない 表示することもできます。理由を入力してリクエストしてください。 説明します。ユーザーのアクションやユーザーの操作をデータをどのように活用するかを UX ガイドラインおよびベスト プラクティスに沿ってアクセス権を付与することで、 法的措置を講じるにあたり、 できます。
サービス アカウント
Google Photos API はサービス アカウントをサポートしていません。アプリケーションは、 使用可能な他の OAuth 2.0 フロー(たとえば OAuth 2.0)を ウェブサーバー アプリケーション、または OAuth 2.0 for モバイルアプリとデスクトップ アプリ。