OAuth クライアントの確認

機密性の高い特定の OAuth スコープをリクエストする Google OAuth クライアントは、Google による検証の対象となります。

スクリプト プロジェクトの OAuth クライアントを確認していない場合、ドメイン外のユーザーがスクリプトを承認しようとすると、未確認のアプリの画面が表示されます。未検証の承認フローでは、リスクを理解していることを確認したうえででないと、ユーザーが未検証のアプリを承認して使用できます。未検証のアプリユーザーの合計数にも上限があります。

詳しくは以下の記事をご覧ください。

 

未確認のアプリ画面
図 1: [未確認のアプリ] 画面
未確認のアプリ承認フロー
図 2: 未検証のアプリ承認フロー

 

この変更は、すべての Apps Script プロジェクトで使用されるものを含む、Google OAuth ウェブ クライアントに適用されます。Google でアプリを検証することで、未確認のアプリ画面を承認フローから削除し、アプリが悪意ないことをユーザーに確信してもらうことができます。

未確認のアプリ

アドオン、ウェブアプリ、その他のデプロイメント(Apps Script API を使用するアプリなど)では検証が必要になる場合があります。

適用対象判断

機密性の高い OAuth スコープをアプリが使用している場合は、承認フローの一部として、未確認のアプリ画面が表示されることがあります。アプリの公開元アカウント(および未確認のアプリ承認フロー)は、アプリが公開しているアカウントとアプリを使用しようとしているアカウントによって異なります。たとえば、特定の Google Workspace 組織で公開されているアプリの場合、アプリが検証されていなくても、そのドメインのアカウントで未確認のアプリ承認フローは発生しません。

次の表は、どのような状況で未検証アプリの承認フローが発生するかを示しています。

お客様の身元確認が完了しました パブリッシャーはお客様 A の Google Workspace アカウント スクリプトはお客様 A の共有ドライブ内にある パブリッシャーが Gmail アカウントの場合
ユーザーはお客様 A の Google Workspace アカウント 通常の認証フロー 通常の認証フロー 通常の認証フロー 未確認の認証フロー
ユーザーが、お客様 A のではない Google Workspace アカウントである 通常の認証フロー 未確認の認証フロー 未確認の認証フロー 未確認の認証フロー
ユーザーが Gmail アカウントの場合1 通常の認証フロー 未確認の認証フロー 未確認の認証フロー 未確認の認証フロー

1任意の Gmail アカウント(アプリの公開に使用したアカウントを含む)。

ユーザー数の上限

未検証アプリのフローでアプリを承認できるユーザー数には、不正使用の可能性を抑えるために上限が設定されています。詳しくは、OAuth アプリケーションのユーザー制限をご覧ください。

確認をリクエストしています

アプリで使用される OAuth クライアントとそれに関連付けられた Cloud Platform(GCP)プロジェクトの検証をリクエストできます。アプリが検証されると、ユーザーに未確認アプリの画面が表示されなくなります。また、アプリにはユーザー上限が適用されなくなります。

要件

検証を受けるために OAuth クライアントを送信するには、次の要件を満たす必要があります。

  1. ドメイン上にウェブサイトを所有している必要があります。このサイトは、アプリとプライバシー ポリシーについて説明した、一般公開されているページをホストしている必要があります。また、サイトの所有権を Google に確認する必要もあります。

  2. スクリプト プロジェクトで使用する Google Cloud プロジェクトは、編集権限のある標準の Google Cloud プロジェクトである必要があります。スクリプトがデフォルトの Google Cloud プロジェクトを使用している場合は、標準の Google Cloud プロジェクトに切り替える必要があります。

また、次の必須アセットが必要です。

  • アプリケーション名。アプリの名前。同意画面に表示されます。他の場所でのアプリの名前(公開済みアプリの Google Workspace Marketplace リスティングなど)と一致している必要があります。
  • アプリのロゴ。同意画面で使用するアプリのロゴ(JPEG、PNG、BMP のいずれか)の画像。ファイルサイズは 1 MB 以下である必要があります。
  • サポートメール。これは、ユーザーがアプリのサポートを必要とする場合に、同意画面に表示されるメールです。自身のメールアドレスまたは自分が所有または管理している Google グループを使用できます。
  • スコープ。アプリで使用するすべてのスコープのリスト。Apps Script エディタでスコープを表示できます。
  • 承認済みドメイン。アプリに関する情報を含むドメインのリストです。アプリケーションのすべてのリンク(必要なプライバシー ポリシーのページなど)は、承認済みドメインでホストされている必要があります。
  • アプリケーションのホームページ URL。アプリを説明するホームページの場所。この場所は承認済みドメインでホストされている必要があります。
  • アプリケーションのプライバシー ポリシーの URL。アプリのプライバシー ポリシーについて説明しているページの場所。このロケーションは、承認済みドメインでホストされている必要があります。

上記の必須アセットに加えて、必要に応じて、アプリの利用規約を説明するページを指すアプリ利用規約 URL を指定できます。指定する場合、このロケーションは承認済みドメイン内に存在する必要があります。

手順

  1. まだ確認していない場合は、スクリプト プロジェクトのプライバシー ポリシーなどの情報をホストするために使用するすべての承認済みドメインの所有権を確認します。ドメインの確認済みオーナーは、スクリプト プロジェクトの編集者またはオーナーである必要があります。
  2. Apps Script プロジェクトで、概要アイコン をクリックします。[プロジェクトの OAuth スコープ] で、スクリプト プロジェクトが使用するスコープをコピーします。
  3. 収集したテキストと URL アセットを使用して、アプリケーションの Google Cloud プロジェクトの OAuth 同意画面に入力します

    1. アプリの情報(プライバシー ポリシーなど)がホストされている承認済みドメインのリストを指定します。
    2. アプリケーション スコープを追加するには、[スコープを追加または削除] をクリックします。表示されるダイアログでは、Google Cloud コンソールで有効にした API(拡張サービスなど)のスコープの自動検出が試行されます。このリストからスコープを選択するには、対応するチェックボックスをオンにします。

      この自動検出リストには、Apps Script の組み込みサービスで使用されるスコープが含まれているとは限りません。これらのスコープは、[手動でスコープを追加] で入力する必要があります。

      完了したら、[更新] をクリックします。

  4. 必要な情報をすべて入力したら、[保存] をクリックします。

  5. [確認のために送信] をクリックして、確認リクエストを開始します。

通常、確認リクエストには 24 ~ 72 時間以内に回答があります。 [確認ステータス] は、OAuth 同意画面フォームの上部で確認できます。OAuth クライアントの検証が確定すると、アプリは検証されます。