Zakresy autoryzacji

Użytkownicy muszą autoryzować projekty skryptu, które uzyskują dostęp do ich danych lub działają w ich imieniu. Gdy użytkownik po raz pierwszy uruchomi skrypt, który wymaga autoryzacji, interfejs wyświetli prośbę o rozpoczęcie procesu autoryzacji.

W trakcie tego procesu interfejs użytkownika informuje użytkownika, do czego skrypt potrzebuje uprawnień. Na przykład skrypt może wymagać uprawnień do odczytywania e-maili użytkownika lub tworzenia wydarzeń w jego kalendarzu. W projekcie skryptu definiuje się te uprawnienia jako zakresy OAuth.

W przypadku większości skryptów Apps Script automatycznie wykrywa zakresy, które są Ci potrzebne. Zakresy te możesz wyświetlić w dowolnym momencie. Możesz też ustawić zakresy wyraźnie w manifeście za pomocą ciągów adresów URL. Określenie zakresów jest czasami wymagane w przypadku niektórych aplikacji, takich jak dodatki, ponieważ opublikowane aplikacje zawsze powinny korzystać z najwęższych dostępnych zakresów.

W trakcie procesu autoryzacji Apps Script wyświetla użytkownikowi zrozumiałe dla człowieka opisy wymaganych zakresów. Jeśli np. skrypt wymaga dostępu tylko do odczytu do arkuszy kalkulacyjnych, plik manifestu może mieć zakres https://www.googleapis.com/auth/spreadsheets.readonly. W trakcie procesu autoryzacji skrypt z tym zakresem prosi użytkownika o zgodę na wyświetlanie Twoich arkuszy kalkulacyjnych Google przez tę aplikację.

Niektóre zakresy są włączane do innych. Na przykład po autoryzacji zakresu https://www.googleapis.com/auth/spreadsheets zapewnia uprawnienia do odczytu i zapisu w arkuszach kalkulacyjnych.

Wyświetlanie zakresów

Aby sprawdzić, jakie zakresy jest obecnie wymagane w projekcie skryptu, wykonaj te czynności:

  1. Otwórz projekt skryptu.
  2. Po lewej stronie kliknij Przegląd .
  3. Wyświetl zakresy w sekcji Zakresy protokołu OAuth projektu.

Ustawianie zakresów jawnych

Apps Script automatycznie określa, jakich zakresów potrzebuje skrypt, skanując jego kod pod kątem wywołań funkcji, które ich wymagają. W przypadku większości skryptów jest to wystarczające i pozwala zaoszczędzić czas, ale w przypadku opublikowanych dodatków, aplikacji internetowych, aplikacji Google Chat oraz wywołań interfejsu Google Chat API musisz mieć bardziej bezpośrednią kontrolę nad zakresami.

Apps Script czasami automatycznie przypisuje do projektów bardzo mało restrykcyjne zakresy. Może to oznaczać, że skrypt prosi użytkownika o więcej, niż potrzebuje, a to nie jest zgodne z oczekiwaniami. W przypadku opublikowanych skryptów musisz zastąpić szerokie zakresy bardziej ograniczonym zbiorem, który zaspokoi wszystkie potrzeby skryptu, a nie więcej.

Zakresy, których używa projekt skryptu, możesz bezpośrednio ustawić, edytując jego plik manifest. Pole manifestu oauthScopes to tablica wszystkich zakresów używanych przez projekt. Aby ustawić zakresy projektu, wykonaj te czynności:

  1. Otwórz projekt skryptu.
  2. Po lewej stronie kliknij Ustawienia projektu .
  3. Zaznacz pole wyboru Pokazuj plik manifestu „appsscript.json” w edytorze.
  4. Po lewej stronie kliknij Edytor .
  5. Po lewej stronie kliknij plik appsscript.json.
  6. Znajdź pole najwyższego poziomu o nazwie oauthScopes. Jeśli go nie ma, możesz go dodać.
  7. Pole oauthScopes określa tablicę ciągów tekstowych. Aby ustawić zakresy, których używa projekt, zastąp zawartość tej tablicy zakresami, których chcesz używać. Przykład:
          {
            ...
            "oauthScopes": [
              "https://www.googleapis.com/auth/spreadsheets.readonly",
              "https://www.googleapis.com/auth/userinfo.email"
            ],
           ...
          }
    
  8. U góry kliknij Zapisz .

Weryfikacja OAuth

Niektóre zakresy OAuth są wrażliwe, ponieważ umożliwiają dostęp do danych użytkownika Google. Jeśli projekt skryptu używa zakresów, które umożliwiają dostęp do danych użytkownika, przed opublikowaniem go jako aplikacji internetowej lub dodatku musi on przejść weryfikację klienta OAuth. Więcej informacji znajdziesz w tych przewodnikach:

Zakresy z ograniczeniami

Oprócz zakresów wrażliwych niektóre zakresy są klasyfikowane jako z ograniczonym dostępem i objęte dodatkowymi regułami, które pomagają chronić dane użytkowników. Jeśli chcesz opublikować aplikację internetową lub dodatek, który używa co najmniej 1 zakresu z ograniczeniami, musi ona spełniać wszystkie określone ograniczenia, zanim zostanie opublikowana.

Zanim przystąpisz do publikacji, przejrzyj pełną listę zakresów z ograniczeniami. Jeśli aplikacja korzysta z któregokolwiek z tych zakresów, przed jej opublikowaniem musisz spełnić wymagania opisane w Dodatkowych wymaganiach dotyczących określonych zakresów interfejsu API.