このドキュメントでは、Google Drive API 固有の認可と認証について説明します。このドキュメントを読む前に、認証と認可についてで Google Workspace の認証と認可に関する一般的な情報を確認してください。
認可用に OAuth 2.0 を構成する
OAuth 同意画面を構成し、スコープを選択することで、ユーザーとアプリの審査担当者に表示される情報を定義し、後でアプリを公開できるようにアプリを登録します。
Drive API スコープ
アプリに付与するアクセスレベルを定義するには、承認スコープを特定して宣言する必要があります。認証スコープは、Google Workspace アプリ名、アクセスするデータの種類、アクセスレベルを含む OAuth 2.0 URI 文字列です。スコープとは、ユーザーの Google アカウント データを含む Google Workspace データを操作するためのアプリのリクエストのことです。
アプリがインストールされると、アプリで使用されるスコープの検証を求めるメッセージがユーザーに表示されます。一般に、できる限り狭い範囲のスコープを選択し、アプリで必要ないスコープはリクエストしないようにします。ユーザーは、明確に説明された限定的なスコープに対してアクセス権限を付与する傾向があります。
可能であれば、機密性の低いスコープを使用することをおすすめします。これにより、ファイルごとのアクセス スコープが付与され、アプリに必要な特定の機能へのアクセスが制限されます。
ドライブ API は次のスコープをサポートしています。
スコープコード | 説明 | 用途 |
---|---|---|
https://www.googleapis.com/auth/drive.appdata |
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 ドライブ利用規約もご覧ください。
制限付きスコープを使用する場合
Google ドライブの場合、制限付きスコープにアクセスできるのは次のアプリケーション タイプのみです。
- ユーザーのドライブ ファイルのローカル同期や自動バックアップが可能なプラットフォーム固有のアプリやウェブアプリ。
- ユーザー インターフェースでドライブ ファイル(またはそのメタデータや権限)とのやり取りが発生する可能性のある生産性向上アプリや教育用アプリ。生産性向上アプリケーションには、タスク管理、メモ取り、ワークグループ コミュニケーション、教室でのコラボレーション アプリケーションなどがあります。
- ファイルがどのように共有またはアクセスされているかについて、ユーザーまたは顧客に分析情報を提供するレポート アプリケーションとセキュリティ アプリケーション。
制限付きスコープを引き続き使用するには、制限付きスコープの確認のためにアプリを準備する必要があります。
制限付きスコープから既存のアプリを移行する
制限付きスコープを使用してドライブアプリを開発した場合は、アプリを移行して機密性の低いスコープを使用することをおすすめします。機密性の低いスコープでは、ファイルごとのアクセス スコープが付与され、アプリに必要な特定の機能へのアクセスが制限されます。多くのアプリは、ファイルごとのアクセスで変更なしで動作します。独自のファイル選択ツールを使用している場合は、さまざまなスコープを完全にサポートする 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
は機密情報ではないため、検証プロセスを効率化できます。
更新トークンを保存する
更新トークンを安全な長期保存に保存し、有効な限り使用し続けます。