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

このドキュメントでは、Google Drive API 固有の認可と認証情報について説明します。このドキュメントを読む前に、認証と認可についてで Google Workspace の一般的な認証と認可に関する情報をご確認ください。

認可用に OAuth 2.0 を構成する

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

Drive API スコープ

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

アプリがインストールされると、アプリで使用されるスコープをユーザーが検証するよう求められます。通常は、できるだけ範囲の狭いスコープを選択し、アプリで必要のないスコープはリクエストしないようにします。ユーザーは、明確に記述された制限付きのスコープへのアクセス権を簡単に付与できます。

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

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/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.meet.readonly Google Meet で作成または編集されたドライブ ファイルの参照。 制限付き
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 スコープを使用する場合、アプリは OAuth アプリの確認に関するヘルプセンターの手順に沿って確認を受ける必要があります。OAuth アプリに関するよくある質問を参照して、アプリの確認が必要なタイミングと、必要な確認の種類をご確認ください。Google ドライブ利用規約もご覧ください。

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

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

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

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

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

制限付きスコープを使用して Drive アプリを開発している場合は、ファイルごとのアクセス スコープを付与し、アプリに必要な特定の機能へのアクセスを制限するため、機密性のないスコープを使用するようにアプリを移行することをおすすめします。多くのアプリは、変更なしでファイルごとのアクセスで動作します。独自のファイル選択ツールを使用している場合は、さまざまなスコープを完全にサポートする 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 は機密性が高いものではないため、検証プロセスを効率化できます。

更新トークンを保存する

更新トークンは安全な長期保存ストレージに保存し、有効である限り引き続き使用します。