OAuth を構成する

アプリを公開する際は、認証と認可のために主に次の 4 つのタスクを行う必要があります。

  1. OAuth 同意画面に入力します
  2. OAuth 2.0 認証情報を作成します
  3. Google Workspace Marketplace SDK でアプリの実行に必要なすべてのスコープを構成する
  4. OAuth 検証のためアプリを送信する

各場所に追加するスコープは一致している必要があります。その用途は次のとおりです。

  • OAuth 同意画面に追加されたスコープは、OAuth 検証に使用されます。
  • Google Workspace Marketplace SDK に追加されたスコープは、ドメイン全体および個々のインストールで、Google Workspace Marketplace からインストールされたアプリの承認に使用されます。
  • マニフェストに追加されるスコープは、アプリが正常に機能するために必要です。

たとえば、Google スプレッドシート アドオンと Google ドキュメント アドオンを含むアプリを公開する場合、各アドオンの Apps Script マニフェストには、そのアドオンに固有のスコープのみが含まれます。Google Cloud プロジェクトでは、OAuth 同意画面と Google Workspace Marketplace SDK に、両方のアドオンのスコープが含まれています。

前提条件

OAuth 同意画面は、誰がデータへのアクセスをリクエストしているのかと、どのような種類のデータへのアクセスがアプリに許可されるのかをユーザーに示すプロンプトです。

  1. Google Cloud コンソールで、メニュー > [API とサービス] > [OAuth 同意画面] に移動します。

    OAuth 同意画面に移動

  2. アプリのユーザータイプを選択し、[作成] をクリックします。
  3. アプリ登録フォームに入力し、[保存して次へ] をクリックします。
  4. Google Workspace 組織外で使用するアプリを作成する場合は、[スコープを追加または削除] をクリックします。スコープを選択する際は、次のベスト プラクティスをおすすめします。

    • アプリに必要な最小レベルのアクセスレベルを提供するスコープを選択します。使用可能なスコープのリストについては、Google API の OAuth 2.0 スコープをご覧ください。
    • 3 つのセクション(機密でないスコープ、機密性の高いスコープ、制限付きスコープ)のそれぞれに表示されているスコープを確認します。「機密性の高いスコープ」または「制限付きのスコープ」に記載されているスコープについては、不要な追加の審査を避けるため、機密性の低い別のスコープを特定するようにしてください。
    • 一部のスコープは、Google による追加審査が必要です。Google Workspace 組織によって内部的にのみ使用されるアプリの場合、スコープは同意画面に表示されません。制限付きスコープまたはプライベート スコープの使用については、Google による追加審査は必要ありません。詳細については、スコープのカテゴリをご覧ください。
  5. アプリに必要なスコープを選択したら、[Save and Continue] をクリックします。
  6. ユーザーの種類に [外部] を選択した場合は、テストユーザーを追加します。
    1. [テストユーザー] で [ユーザーを追加] をクリックします。
    2. メールアドレスとその他の承認済みテストユーザーを入力し、[保存して次へ] をクリックします。
  7. アプリ登録の概要を確認します。変更するには、[編集] をクリックします。アプリ登録に問題がない場合は、[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 検証では、リクエストされたスコープまたはデータの使用方法をユーザーに説明する手順またはフローを示すデモ動画を提出する必要があります。
  • アプリで制限付きスコープを使用している場合は、セキュリティ評価も必要になる場合があります。セキュリティ評価が必要な理由をご覧ください。

認証を申請する手順は次のとおりです。

  1. Google Cloud コンソールで、メニュー > [API とサービス] > [OAuth 同意画面] に移動します。

    OAuth 同意画面に移動

  2. [プロジェクト セレクタ] をクリックし、プロジェクトを選択します。
  3. [Edit app] をクリックします。
  4. 必要な情報を入力して、[Submit for verification] をクリックします。
  5. [確認が必要] ダイアログで適切な理由を入力し、[送信] をクリックして確認プロセスを開始します。

機密性の高いスコープや制限的なスコープを使用するようにアプリを更新する場合は、アプリを再度送信して OAuth 検証を受ける必要があります。アプリの審査のために再度送信する必要はありません。

OAuth 検証とアプリの審査の違い

OAuth の確認は、アプリの審査とは別のプロセスです。同意画面でアプリの ID と意図を正確に表現し、アプリでユーザーデータが不正使用されないようにすることに重点を置いています。アプリの OAuth 検証が完了するまで、アプリの掲載情報は承認できません。OAuth 検証の詳細については、OAuth API 検証に関するよくある質問をご覧ください。

アプリの審査では、Google Workspace Marketplace API で提供する情報と、アプリの機能とユーザビリティが重視されます。アプリの審査基準について詳しくは、アプリの審査についてをご覧ください。