Google Drive API のスコープを選択する

このドキュメントには、Google Drive API 固有の認可と認証の情報が記載されています。このドキュメントを読む前に、認証と認可について学習するで、Google Workspace の一般的な認証と認可の情報を必ずお読みください。

認可用に OAuth 2.0 を構成する

OAuth 同意画面を構成し、スコープを選択して、ユーザーとアプリの審査担当者に表示する情報を定義し、後で公開できるようにアプリを登録します。

Drive API スコープ

アプリに付与されるアクセスレベルを定義するには、認可スコープを特定して宣言する必要があります。認可スコープは OAuth 2.0 URI 文字列で、Google Workspace アプリ名、アクセスするデータの種類、アクセスレベルが含まれます。スコープとは、ユーザーの Google アカウント データを含む Google Workspace データを操作する、アプリからのリクエストです。

アプリがインストールされると、ユーザーはアプリで使用されているスコープを検証するよう求められます。一般的には、可能な限り最も狭い範囲のスコープを選択し、アプリが必要としないスコープをリクエストしないようにする必要があります。ユーザーが、明確に説明された制限付きのスコープに対するアクセス権を付与しやすくなります。

可能であれば、ファイルごとのアクセス スコープが付与され、アプリに必要な特定の機能へのアクセスが限定されるため、機密性の低いスコープを使用することをおすすめします。

Drive API は、次のスコープをサポートしています。

スコープコード 説明 用途
https://www.googleapis.com/auth/drive.appdata
https://www.googleapis.com/auth/drive.appfolder
Google ドライブ内のアプリケーション独自の設定データの表示と管理。 推奨
非機密
https://www.googleapis.com/auth/drive.install [アプリで開く] または [新規] メニューのオプションとしてアプリを表示することを許可します。 推奨
非機密
https://www.googleapis.com/auth/drive.file アプリで開いたり、ユーザーが Google Picker API やアプリのファイル選択ツールを使用してアプリと共有したりする新しいドライブ ファイルを作成するか、既存のファイルを変更します。 推奨
非機密
https://www.googleapis.com/auth/auth/drive.apps.readonly ドライブへのアクセスを許可されたアプリを表示します。 デリケートなコンテンツ
https://www.googleapis.com/auth/drive ドライブのファイルを表示、管理する。 制限されています
https://www.googleapis.com/auth/drive.readonly ドライブのファイルを表示、ダウンロードする。 制限されています
https://www.googleapis.com/auth/drive.activityドライブ内のファイルのアクティビティ記録を表示、追加します。 制限されています
https://www.googleapis.com/auth/drive.activity.readonlyドライブ内のファイルのアクティビティ記録を表示する。 制限されています
https://www.googleapis.com/auth/drive.metadata ドライブ内のファイルのメタデータを表示、管理します。 制限されています
https://www.googleapis.com/auth/drive.metadata.readonly ドライブ内のファイルのメタデータを表示する。 制限されています
https://www.googleapis.com/auth/drive.scripts Google Apps Script スクリプトの動作を変更します。 制限されています

上の表の「使用量」列は、各スコープの機密性を示しています。定義は次のとおりです。

  • 推奨 / 非機密 - これらのスコープは承認アクセスの最小スコープを提供し、基本的なアプリ検証のみを必要とします。この要件の詳細については、検証の準備手順をご覧ください。

  • 推奨 / 機密 - これらのスコープは、アプリについてユーザーが承認した特定の Google ユーザーデータへのアクセスを提供します。追加のアプリ検証を行う必要があります。この要件の詳細については、機密性の高いスコープをリクエストするアプリ向けの手順をご覧ください。

  • 制限付き - これらのスコープでは、Google ユーザーデータに幅広くアクセスできます。制限付きのスコープの検証プロセスを行う必要があります。この要件については、Google API サービスのユーザーデータに関するポリシー特定の API スコープの追加要件をご覧ください。制限付きのスコープのデータをサーバーに保存(または送信)する場合は、セキュリティ評価を行う必要があります。

アプリで他の Google API にアクセスする必要がある場合は、それらのスコープも追加できます。Google API スコープの詳細については、OAuth 2.0 を使用した Google API へのアクセスをご覧ください。

特定の OAuth 2.0 スコープの詳細については、Google API の OAuth 2.0 スコープをご覧ください。

OAuth の確認

特定の OAuth スコープを使用すると、アプリで Google の OAuth 検証プロセスが必要になる場合があります。アプリで検証を行うタイミングと必要な検証の種類を判断するには、OAuth API の検証に関するよくある質問をご覧ください。Google ドライブ利用規約もご覧ください。

制限付きスコープを使用する場合

ドライブの場合、次のアプリケーション タイプのみが制限付きスコープにアクセスできます。

  1. ユーザーのドライブ ファイルのローカル同期または自動バックアップを行う、プラットフォーム固有のウェブアプリとウェブアプリ。
  2. ユーザー インターフェースがドライブのファイル(またはそのメタデータまたは権限)を操作する可能性がある生産性向上および教育アプリケーション。生産性向上アプリケーションには、タスク管理、メモ作成、ワークグループのコミュニケーション、クラスルームのコラボレーション アプリケーションが含まれます。
  3. ファイルの共有方法やアクセス方法についてユーザーやお客様に分析情報を提供するレポートとセキュリティ アプリケーション。

制限付きスコープを引き続き使用するには、制限付きスコープの検証に対応するようにアプリを準備する必要があります。

制限付きスコープから既存のアプリを移行する

制限付きスコープのいずれかを使用してドライブアプリを開発した場合は、機密性の低いスコープを使用するようにアプリを移行することをおすすめします。これにより、ファイルごとのアクセス スコープが付与され、アプリに必要な特定の機能へのアクセスが制限されます。多くのアプリは、変更なしでファイルごとのアクセスで動作します。独自のファイル選択ツールを使用している場合は、さまざまなスコープを完全にサポートしている Google Picker API に切り替えることをおすすめします。

drive.file OAuth スコープのメリット

drive.file OAuth スコープと Google Picker API を使用すると、アプリのユーザー エクスペリエンスと安全性の両方を最適化できます。

drive.file OAuth スコープを使用すると、ユーザーはアプリと共有するファイルを選択できます。これにより、ユーザーは、アプリによるファイルへのアクセスをより詳細に制御し、確信を持って制限し、安全性を高めることができます。一方、すべてのドライブのファイルへの幅広いアクセスを要求すると、ユーザーがアプリを使用しなくなる可能性があります。drive.file スコープを使用するべき理由は次のとおりです。

  • ユーザビリティ: drive.file スコープはすべての Drive API REST リソースで機能するので、より広範な OAuth スコープと同じように使用できます。

  • 機能: Google Picker API は、ドライブの UI と同様のインターフェースを提供します。これには、ドライブのファイルのプレビューとサムネイルを表示する複数のビューや、ユーザーがメインアプリを離れることのないインラインのモーダル ウィンドウが含まれます。

  • 便利: Google Picker ファイルのフィルタを使用する場合、アプリで特定のドライブ ファイル形式(Google ドキュメント、スプレッドシート、写真など)にフィルタを適用できます。

また、drive.file は機密性が低いため、検証プロセスを効率化できます。

更新トークンを保存する

更新トークンは安全で長期的なストレージに保存し、有効な間は使い続けます。