認可スコープ

ユーザーは、自身のデータにアクセスする、またはユーザーの操作を行うスクリプト プロジェクトを承認する必要があります。 できます。ユーザーが初めて認証を必要とするスクリプトを実行すると、UI に認証フローを開始するためのプロンプトが表示されます。

このフローの中で、UI はスクリプトが権限を求めているものをユーザーに知らせる できます。たとえば、スクリプトでユーザーの読み取り権限や、 カレンダーの予定を作成したりできます。スクリプト プロジェクト これらの個々の権限を OAuth スコープとして定義しています。

ほとんどのスクリプトの場合、必要なスコープが自動的に検出されます。スクリプトで使用されているスコープを表示できます。スコープを明示的に設定することもできます。 マニフェスト内で URL 文字列を使用して指定します。設定 特定のアプリケーションでは、明示的にスコープを指定する必要が生じる場合があります。 アドオンなど、新しいアプリケーションを開発するための 可能な限り狭いスコープを使用します

承認フローの際、Apps Script は、 ユーザーに付与する必要があります。たとえば、スクリプトが 読み取り専用権限が必要な場合は、マニフェストにそのスコープを https://www.googleapis.com/auth/spreadsheets.readonly。承認フローの際に、このスコープを持つスクリプトから、このアプリに「Google スプレッドシートの表示」を許可するようユーザーに求めるメッセージが表示されます。

一部のスコープには他のスコープが含まれます。たとえば、Compute Engine インスタンスで https://www.googleapis.com/auth/spreadsheets は、以下に対する読み取りと書き込みのアクセスを許可します。 スプレッドシート。

スコープの表示

スクリプト プロジェクトに現在必要なスコープを確認するには、 次のとおりです。

  1. スクリプト プロジェクトを開きます。
  2. 左側の [概要] をクリックします。
  3. [Project OAuth Scopes](プロジェクトの OAuth スコープ)でスコープを表示します。

明示的なスコープを設定する

Apps Script では、スクリプトに必要なスコープを自動的に決定 必要な関数呼び出しがないかスキャンします。ほとんどのスクリプトで、 十分で時間の節約になりますが、公開されているアドオンのウェブ Google Chat API 呼び出し、Google Chat アプリ、Google Chat API 呼び出しなど、 スコープを直接制御できます。

Apps Script では、プロジェクトに非常に許可の範囲の広いスコープが自動的に割り当てられることがあります。これは、スクリプトがユーザーに必要以上のものを要求することを意味します。これは不適切です。 実践していきます。公開されているスクリプトの場合、広範なスコープを スクリプトのニーズを満たせるだけに限定されます。

スクリプト プロジェクトで使用するスコープは、 そのマニフェスト ファイルを実行します。マニフェスト フィールド oauthScopes は、プロジェクトで使用されるすべてのスコープの配列です。設定方法 作成するには、次の操作を行います。

  1. スクリプト プロジェクトを開きます。
  2. 左側にある [プロジェクトの設定] をクリックします。
  3. [「appsscript.json」マニフェスト ファイルをエディタで表示する] チェックボックスをオンにします。
  4. 左側の [エディタ] をクリックします。
  5. 左側の appsscript.json ファイルをクリックします。
  6. oauthScopes というラベルの付いた最上位フィールドを見つけます。見当たらない場合は 追加できます。
  7. oauthScopes フィールドは、文字列の配列を指定します。プロジェクトで使用するスコープを設定するには、この配列の内容を、使用するスコープに置き換えます。次に例を示します。
          {
            ...
            "oauthScopes": [
              "https://www.googleapis.com/auth/spreadsheets.readonly",
              "https://www.googleapis.com/auth/userinfo.email"
            ],
           ...
          }
  8. 上部の保存アイコン()をクリックします。

OAuth の確認

一部の OAuth スコープは、Google へのアクセスを許可するため、機密 ユーザーデータ。スクリプト プロジェクトでユーザーデータへのアクセスを許可するスコープを使用している場合は、 完了するまでは、 OAuth クライアントの確認 ウェブアプリやウェブアプリとして一般公開する前に、 アドオン。 詳細については、次のガイドをご覧ください。

制限付きスコープ

機密性の高いスコープに加えて、特定のスコープが 制限付き ユーザーデータの保護に役立つ追加ルールが適用されます。想定している場合、 1 つ以上を使用するウェブアプリやアドオンを公開する アプリは、指定されたすべての制限に従わなければなりません。 公開することはできません。

制限付きスコープの一覧を確認する 確認することをおすすめしますアプリでこれらの API のいずれかを使用している場合は、公開前に特定の API スコープの追加要件に準拠する必要があります。