許可清單網址

您可以使用許可清單指定特定網址,讓指令碼或外掛程式預先核准存取這些網址。許可清單有助於保護使用者資料;定義許可清單後,指令碼專案就無法存取未加入許可清單的網址。

安裝測試部署時,這個欄位為選填,但建立版本化部署時則為必填。

當指令碼或外掛程式執行下列動作時,您就會使用許可清單:

  • 使用 Apps Script UrlFetch 服務,從外部位置 (例如 HTTPS 端點) 擷取或擷取資訊。如要將網址加入取得的許可清單,請在資訊清單檔案中加入 urlFetchWhitelist 欄位。
  • 根據使用者動作開啟或顯示網址 (如果 Google Workspace 外掛程式會開啟或顯示 Google 以外的網址,則必須使用此方法)。如要將網址加入許可清單,請在資訊清單檔案中加入 addOns.common.openLinkUrlPrefixes 欄位。

在許可清單中新增前置字串

在資訊清單檔案中指定許可清單 (透過加入 addOns.common.openLinkUrlPrefixesurlFetchWhitelist 欄位) 時,您必須加入網址前置字串清單。您在資訊清單中新增的前置字串必須符合下列規定:

  • 每個前置字串都必須是有效的網址。
  • 每個前置字串都必須使用 https://,而非 http://
  • 每個前置字串都必須有完整網域。
  • 每個前置字串都必須有非空白路徑。例如,https://www.google.com/ 有效,但 https://www.google.com 無效。
  • 您可以使用萬用字元比對網址子網域前置字串。
  • 您可以在 addOns.common.openLinkUrlPrefixes 欄位中使用單一 * 萬用字元,比對所有連結,但我們不建議這麼做,因為這可能會使使用者資料暴露在風險中,並延長外掛程式審查程序。只有在外掛程式功能需要時,才使用萬用字元。

判斷網址是否與允許清單中的前置字串相符時,會套用下列規則:

  • 路徑比對會區分大小寫。
  • 如果前置字串與網址相同,則代表相符。
  • 如果網址相同或為前置字串的子項,則表示符合。

舉例來說,前置字串 https://example.com/foo 會比對下列網址:

  • https://example.com/foo
  • https://example.com/foo/
  • https://example.com/foo/bar
  • https://example.com/foo?bar
  • https://example.com/foo#bar

使用萬用字元

您可以使用單一萬用字元 (*) 比對 urlFetchWhitelistaddOns.common.openLinkUrlPrefixes 欄位的子網域。您無法使用多個萬用字元比對多個子網域,且萬用字元必須代表網址的前置字串。

例如,前置字串 https://*.example.com/foo 會比對下列網址:

  • https://subdomain.example.com/foo
  • https://any.number.of.subdomains.example.com/foo

前置字串 https://*.example.com/foo「不」符合下列網址:

  • https://subdomain.example.com/bar (後置字串不相符)
  • https://example.com/foo (至少須提供一個子網域)

嘗試儲存資訊清單時,系統會強制執行部分前置字詞規則。舉例來說,如果您嘗試儲存時,資訊清單中出現下列前置字串,就會發生錯誤:

  • https://*.*.example.com/foo (禁止使用多個萬用字元)
  • https://subdomain.*.example.com/foo (萬用字元必須用於前置字串)