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 uruchomi skrypt, który po raz pierwszy wymaga autoryzacji, w interfejsie wyświetli się prośba o rozpoczęcie procesu autoryzacji.

W ramach tego procesu UI informuje użytkownika, do czego skrypt potrzebuje uprawnień. Skrypt może na przykład potrzebować uprawnień do odczytu 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ą dla Ciebie potrzebne. Zakresy możesz wyświetlić w dowolnym momencie. Zakresy możesz też ustawić bezpośrednio w pliku manifestu za pomocą ciągów URL. Czasami w przypadku niektórych aplikacji, takich jak dodatki, wymagane jest jednoznaczne podanie zakresów, ponieważ publikowane aplikacje powinny zawsze używać najwęższych zakresów.

Podczas procesu autoryzacji Apps Script prezentuje użytkownikowi czytelne opisy wymaganych zakresów. Jeśli na przykład skrypt potrzebuje dostępu tylko do odczytu do arkuszy kalkulacyjnych, plik manifestu może mieć zakres https://www.googleapis.com/auth/spreadsheets.readonly. Podczas procesu autoryzacji skrypt o tym zakresie prosi użytkownika o zezwolenie aplikacji na wyświetlanie arkuszy kalkulacyjnych Google.

Niektóre zakresy obejmują inne. Na przykład gdy autoryzowano zakres https://www.googleapis.com/auth/spreadsheets, umożliwia on dostęp do arkuszy kalkulacyjnych z możliwością odczytu i zapisu.

Wyświetlanie zakresów

Zakresy, z których obecnie korzysta Twój projekt skryptu, możesz sprawdzić, wykonując te czynności:

  1. Otwórz projekt skryptu.
  2. Po lewej stronie kliknij Przegląd.
  3. Wyświetl zakresy w sekcji Projektowe zakresy OAuth.

Ustawianie wyraźnych zakresów

Apps Script automatycznie określa zakresy, których potrzebuje skrypt. Skanuje on kod pod kątem wywołań funkcji, które tego wymagają. W przypadku większości skryptów jest to wystarczający i oszczędza czas, ale w przypadku opublikowanych dodatków i aplikacji internetowych musisz mieć większą kontrolę nad zakresami.

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ż tego potrzebuje, co jest niewskazane. W przypadku opublikowanych skryptów należy zastąpić zakresy przybliżone bardziej ograniczonym zestawem, który spełnia wymagania skryptu.

Zakresy, których Twój projekt skryptu może używać, możesz bezpośrednio zmodyfikować w pliku manifestu. Pole pliku 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 Pokaż 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 oauthScopes. Jeśli go nie ma, możesz go dodać.
  7. Pole oauthScopes określa tablicę ciągów znaków. Aby ustawić zakresy używane przez projekt, zastąp zawartość tej tablicy zakresami, których chcesz używać. Na 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, bo umożliwiają dostęp do danych użytkownika Google. Jeśli Twój projekt skryptu używa zakresów, które umożliwiają dostęp do danych użytkownika, musi on przejść weryfikację klienta OAuth, zanim będzie można go udostępnić publicznie jako aplikację internetową lub dodatek. Więcej informacji znajdziesz w tych przewodnikach:

Zakresy z ograniczeniami

Oprócz zakresów wrażliwych niektóre zakresy są klasyfikowane jako ograniczone 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, przed opublikowaniem musi ona spełniać wszystkie określone wymagania.

Zanim spróbujesz opublikować treści, przejrzyj pełną listę zakresów z ograniczeniami. Jeśli aplikacja korzysta z któregokolwiek z tych interfejsów API, przed ich opublikowaniem musisz przestrzegać dodatkowych wymagań dotyczących określonych zakresów interfejsu API.