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.

Podczas tego procesu interfejs użytkownika informuje użytkownika, do jakich uprawnień skrypt chce uzyskać uprawnienia. Skrypt może na przykład poprosić o uprawnienia do odczytywania e-maili użytkownika lub tworzenia wydarzeń w kalendarzu. Projekt skryptu definiuje te uprawnienia jako zakresy OAuth.

W przypadku większości skryptów Apps Script automatycznie wykrywa zakresy, które są Ci potrzebne. W każdej chwili możesz wyświetlić zakresy używane przez skrypt. Możesz też ustawić zakresy wyraźnie w pliku manifestu za pomocą ciągów adresów URL. W przypadku niektórych aplikacji takich jak dodatki bezpośrednie ustawienie zakresów jest czasami wymagane, ponieważ opublikowane aplikacje powinny zawsze używać najwęższych dostępnych zakresów.

W trakcie procesu autoryzacji Apps Script wyświetla użytkownikowi możliwe do odczytania opisy wymaganych zakresów. Jeśli na przykład skrypt wymaga dostępu do Twoich arkuszy kalkulacyjnych w trybie tylko do odczytu, 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 zezwolenie aplikacji na „Wyświetlanie Twoich arkuszy kalkulacyjnych Google”.

Niektóre zakresy uwzględniają inne. Na przykład po autoryzacji zakresu https://www.googleapis.com/auth/spreadsheets uprawnienia do odczytu i zapisu w arkuszach kalkulacyjnych.

Wyświetlane zakresy

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 zakresy potrzebne przez 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 Ci zaoszczędzić czas, ale w przypadku opublikowanych dodatków, aplikacji internetowych, aplikacji Google Chat i wywołań interfejsu Google Chat API musisz dokładniej kontrolować zakresy.

Apps Script czasami automatycznie przypisuje projekty o bardzo mało restrykcyjnych zakresach. Może to oznaczać, że skrypt prosi użytkownika o więcej, niż potrzebuje, a jest to niewłaściwe. W przypadku opublikowanych skryptów musisz zastąpić szerokie zakresy bardziej ograniczonym zestawem, który będzie uwzględniał tylko potrzeby skryptu.

Zakresy, których używa projekt skryptu, możesz bezpośrednio ustawić, edytując jego plik manifest. Pole oauthScopes pliku manifestu 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 Wyświetlaj 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 Twój 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 umożliwiających 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 ograniczeniami i podlegają dodatkowym regułom, 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 używa któregokolwiek z tych zakresów, przed opublikowaniem musisz spełnić dodatkowe wymagania dotyczące określonych zakresów interfejsów API.