URL-адреса белого списка

Вы используете белые списки для обозначения определенных URL-адресов, которые предварительно одобрены для доступа вашим скриптом или надстройкой. Белые списки помогают защитить данные пользователей; Когда вы определяете список разрешений, проекты сценариев не могут получить доступ к URL-адресам, которые не были добавлены в список разрешений.

Это поле является необязательным при установке тестового развертывания, но является обязательным при создании версионного развертывания.

Вы используете белые списки, когда ваш скрипт или надстройка выполняет следующие действия:

  • Извлекает или извлекает информацию из внешнего расположения (например, конечных точек HTTPS) с помощью службы UrlFetch скрипта приложений. Чтобы добавить URL-адреса в список разрешенных для извлечения, включите поле urlFetchWhitelist в файл манифеста.
  • Открывает или отображает URL-адрес в ответ на действие пользователя (требуется для надстроек Google Workspace, которые открывают или отображают URL-адреса, внешние по отношению к Google). Чтобы открыть URL-адреса, разрешенные для открытия, включите поле addOns.common.openLinkUrlPrefixes в файл манифеста.

Добавление префиксов в белый список

Когда вы указываете белые списки в файле манифеста (путем включения поля addOns.common.openLinkUrlPrefixes или urlFetchWhitelist ), вы должны включить список префиксов URL-адресов. Префиксы, добавляемые в манифест, должны удовлетворять следующим требованиям:

  • Каждый префикс должен быть действительным URL-адресом.
  • Каждый префикс должен использовать https:// , а не http:// .
  • Каждый префикс должен иметь полный домен.
  • Каждый префикс должен иметь непустой путь. Например, https://www.google.com/ действителен, а https://www.google.com – нет.
  • Вы можете использовать подстановочные знаки для сопоставления префиксов субдоменов URL.
  • В поле addOns.common.openLinkUrlPrefixes можно использовать один подстановочный знак * , чтобы сопоставить все ссылки, но это не рекомендуется, поскольку это может подвергнуть риску данные пользователя и продлить процесс проверки надстройки . Используйте подстановочный знак только в том случае, если этого требуют функции вашего дополнения.

При определении того, соответствует ли URL-адрес префиксу в белом списке, применяются следующие правила:

  • Сопоставление путей чувствительно к регистру.
  • Если префикс идентичен URL-адресу, это совпадение.
  • Если URL-адрес тот же или дочерний по отношению к префиксу, это совпадение.

Например, префикс https://example.com/foo соответствует следующим URL-адресам:

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

Использование подстановочных знаков

Вы можете использовать один подстановочный знак ( * ) для сопоставления поддомена как для полей urlFetchWhitelist , так и для полей addOns.common.openLinkUrlPrefixes . Вы не можете использовать более одного подстановочного знака для сопоставления нескольких субдоменов, и подстановочный знак должен представлять собой ведущий префикс URL-адреса.

Например, префикс https://*.example.com/foo соответствует следующим URL-адресам:

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

Префикс https://*.example.com/foo не соответствует следующим URL-адресам:

  • https://subdomain.example.com/bar (несоответствие суффикса)
  • https://example.com/foo (должен присутствовать хотя бы один субдомен)

Некоторые правила префикса применяются при попытке сохранить манифест. Например, следующие префиксы вызывают ошибку, если они присутствуют в вашем манифесте при попытке сохранения:

  • https://*.*.example.com/foo (множественные подстановочные знаки запрещены)
  • https://subdomain.*.example.com/foo (в качестве ведущего префикса необходимо использовать подстановочные знаки)