アプリを公開する際は、認証と認可のために主に次の 4 つのタスクを行う必要があります。
- OAuth 同意画面に入力します。
- OAuth 2.0 認証情報を作成します。
- Google Workspace Marketplace SDK でアプリの実行に必要なすべてのスコープを構成する
- OAuth 検証のためアプリを送信する
各場所に追加するスコープは一致している必要があります。その用途は次のとおりです。
- OAuth 同意画面に追加されたスコープは、OAuth 検証に使用されます。
- Google Workspace Marketplace SDK に追加されたスコープは、ドメイン全体および個々のインストールで、Google Workspace Marketplace からインストールされたアプリの承認に使用されます。
- マニフェストに追加されるスコープは、アプリが正常に機能するために必要です。
たとえば、Google スプレッドシート アドオンと Google ドキュメント アドオンを含むアプリを公開する場合、各アドオンの Apps Script マニフェストには、そのアドオンに固有のスコープのみが含まれます。Google Cloud プロジェクトでは、OAuth 同意画面と Google Workspace Marketplace SDK に、両方のアドオンのスコープが含まれています。
前提条件
- Google Cloud プロジェクトで、課金を有効にします。
- アプリをビルドしてテストする。
- 認証と認可について学習する。
- Google Apps Script でアプリを作成した場合は、Apps Script プロジェクト用に Google Cloud プロジェクトを更新します。
1. OAuth 同意画面に入力する
OAuth 同意画面は、誰がデータへのアクセスをリクエストしているのかと、どのような種類のデータへのアクセスがアプリに許可されるのかをユーザーに示すプロンプトです。
- Google Cloud コンソールで、メニュー > [API とサービス] > [OAuth 同意画面] に移動します。
- アプリのユーザータイプを選択し、[作成] をクリックします。
- アプリ登録フォームに入力し、[保存して次へ] をクリックします。
Google Workspace 組織外で使用するアプリを作成する場合は、[スコープを追加または削除] をクリックします。スコープを選択する際は、次のベスト プラクティスをおすすめします。
- アプリに必要な最小レベルのアクセスレベルを提供するスコープを選択します。使用可能なスコープのリストについては、Google API の OAuth 2.0 スコープをご覧ください。
- 3 つのセクション(機密でないスコープ、機密性の高いスコープ、制限付きスコープ)のそれぞれに表示されているスコープを確認します。「機密性の高いスコープ」または「制限付きのスコープ」に記載されているスコープについては、不要な追加の審査を避けるため、機密性の低い別のスコープを特定するようにしてください。
- 一部のスコープは、Google による追加審査が必要です。Google Workspace 組織によって内部的にのみ使用されるアプリの場合、スコープは同意画面に表示されません。制限付きスコープまたはプライベート スコープの使用については、Google による追加審査は必要ありません。詳細については、スコープのカテゴリをご覧ください。
- アプリに必要なスコープを選択したら、[Save and Continue] をクリックします。
- ユーザーの種類に [外部] を選択した場合は、テストユーザーを追加します。
- [テストユーザー] で [ユーザーを追加] をクリックします。
- メールアドレスとその他の承認済みテストユーザーを入力し、[保存して次へ] をクリックします。
- アプリ登録の概要を確認します。変更するには、[編集] をクリックします。アプリ登録に問題がない場合は、[Back to Dashboard] をクリックします。
2. OAuth 2.0 認証情報を作成する
アプリの作成方法に応じて、OAuth 2.0 認証情報を作成する方法は 2 つあります。
Apps Script でアプリを作成した場合
Apps Script プロジェクトをデフォルトの Google Cloud プロジェクトから新しい標準プロジェクトに切り替えます。別の標準プロジェクトに切り替えるをご覧ください。
Apps Script プロジェクトを Google Cloud プロジェクトに関連付けると、OAuth 2.0 認証情報が自動的に作成されます。
Apps Script を使用してアプリをビルドしていない場合
OAuth 2.0 認証情報を作成するには、OAuth クライアント ID の認証情報をご覧ください。
3.スコープを構成する
アプリに必要な OAuth スコープの完全なリストを提供します。可能な限り、可能な限り狭いスコープを使用してください。
アプリに付与されるアクセスレベルを定義するには、認可スコープを特定して宣言する必要があります。認可スコープは OAuth 2.0 URI 文字列で、Google Workspace アプリ名、アクセスするデータの種類、アクセスレベルが含まれます。スコープとは、ユーザーの Google アカウント データを含む Google Workspace データを操作する、アプリからのリクエストです。
アプリがインストールされると、ユーザーはアプリで使用されているスコープを検証するよう求められます。一般的には、可能な限り最も狭い範囲のスコープを選択し、アプリが必要としないスコープをリクエストしないようにする必要があります。ユーザーが、明確に説明された制限付きのスコープに対するアクセス権を付与しやすくなります。
4. OAuth 検証のために送信(公開アプリのみ)
一般公開アプリで機密性の高いスコープや制限付きのスコープが使用されている場合は、OAuth 検証の審査プロセスを受ける必要があります。
- OAuth 検証では、リクエストされたスコープまたはデータの使用方法をユーザーに説明する手順またはフローを示すデモ動画を提出する必要があります。
- アプリで制限付きスコープを使用している場合は、セキュリティ評価も必要になる場合があります。セキュリティ評価が必要な理由をご覧ください。
認証を申請する手順は次のとおりです。
- Google Cloud コンソールで、メニュー > [API とサービス] > [OAuth 同意画面] に移動します。
- [プロジェクト セレクタ] をクリックし、プロジェクトを選択します。
- [Edit app] をクリックします。
- 必要な情報を入力して、[Submit for verification] をクリックします。
- [確認が必要] ダイアログで適切な理由を入力し、[送信] をクリックして確認プロセスを開始します。
機密性の高いスコープや制限的なスコープを使用するようにアプリを更新する場合は、アプリを再度送信して OAuth 検証を受ける必要があります。アプリの審査のために再度送信する必要はありません。
OAuth 検証とアプリの審査の違い
OAuth の確認は、アプリの審査とは別のプロセスです。同意画面でアプリの ID と意図を正確に表現し、アプリでユーザーデータが不正使用されないようにすることに重点を置いています。アプリの OAuth 検証が完了するまで、アプリの掲載情報は承認できません。OAuth 検証の詳細については、OAuth API 検証に関するよくある質問をご覧ください。
アプリの審査では、Google Workspace Marketplace API で提供する情報と、アプリの機能とユーザビリティが重視されます。アプリの審査基準について詳しくは、アプリの審査についてをご覧ください。