Weryfikacja zakresu z ograniczeniami

Niektóre interfejsy API Google (te, które akceptują zakresy wrażliwe lub z ograniczeniami ) mają wymagania dotyczące aplikacji, które żądają uprawnień do dostępu do danych konsumentów. Te dodatkowe wymagania dotyczące ograniczonych zakresów wymagają, aby aplikacja wykazała, że jest dozwolonym typem aplikacji, oraz przesłała aplikację do dodatkowych kontroli, które obejmują ocenę bezpieczeństwa.

Zastosowanie ograniczonych zakresów w interfejsie API zależy głównie od stopnia dostępu wymaganego do udostępnienia odpowiedniej funkcji w aplikacji: tylko do odczytu, tylko do zapisu, odczyt i zapis itp.

Gdy używasz OAuth 2.0, aby uzyskać uprawnienia do dostępu do tych danych na koncie Google, używasz ciągów znaków zwanych zakresami, aby określić typ danych, do których chcesz uzyskać dostęp, oraz zakres tego dostępu. Jeśli Twoja aplikacja wymaga zakresów wrażliwych lub ograniczonych, musisz przejść proces weryfikacji, chyba że jej użycie kwalifikuje się do wyjątku.

Zakresy ograniczone są mniej liczne niż zakresy poufne. Najczęstsze pytania dotyczące weryfikacji OAuth API zawierają aktualną listę zakresów wrażliwych i ograniczonych. Te zakresy zapewniają szeroki dostęp do danych użytkowników Google i wymagają przejścia procesu weryfikacji zakresu przed przesłaniem żądania zakresu z dowolnego konta Google. Informacje o tym wymaganiu znajdziesz w zasadach dotyczących danych użytkownika w usługach interfejsu API Googledodatkowych wymaganiach dotyczących konkretnych zakresów interfejsu API lub na stronie dewelopera Google dotyczącej danej usługi. Jeśli przechowujesz lub przesyłasz dane z zakresem z ograniczeniami na serwerach, musisz przeprowadzić ocenę zabezpieczeń.

Omówienie zakresów z ograniczeniami

Jeśli Twoja aplikacja wymaga zakresów z ograniczeniami i nie kwalifikuje się do wyjątku, musisz spełnić dodatkowe wymagania dotyczące zakresów interfejsu API opisane w zasadach dotyczących danych użytkownika w usługach Google API lub wymagania dotyczące danego produktu podane na stronie dewelopera Google. Wymaga to bardziej rozbudowanego procesu weryfikacji.

Korzystanie z zakresu

  • Sprawdź zakresy, których używa lub których chcesz używać Twoja aplikacja. Aby sprawdzić, jakie zakresy są używane w Twojej aplikacji, sprawdź jej kod źródłowy pod kątem zakresów wysyłanych z prośbami o autoryzację.
  • Upewnij się, że każdy żądany zakres jest niezbędny do wykonywania zamierzonych działań przez funkcję aplikacji, i używaj jak najmniejszych uprawnień niezbędnych do obsługi tej funkcji. Interfejs API Google jest zwykle omówiony w dokumentacji referencyjnej na stronie dewelopera Google, która zawiera informacje o zakresie wymaganym do wywołania punktu końcowego lub określonych właściwości. Więcej informacji o wymaganych zakresach dostępu do punktów końcowych interfejsu API, które wywołuje aplikacja, znajdziesz w dokumentacji tych punktów końcowych. For example, for an app that only uses Gmail APIs to occasionally send emails on a user's behalf, don't request the scope that provides full access to the user's email data.
  • Dane otrzymane z interfejsu API Google można używać tylko zgodnie z zasadami interfejsu API oraz w sposób opisany w opisie działania aplikacji i w polityce prywatności.
  • Więcej informacji o każdym zakresie, w tym o możliwym stanie sensitive or restricted , znajdziesz w dokumentacji interfejsu API.
  • Zadeklaruj wszystkie zakresy używane przez aplikację w  . Określone przez Ciebie zakresy są grupowane według kategorii wrażliwych lub z ograniczeniem, aby wyróżnić wymaganą dodatkową weryfikację.
  • Znajdź najlepszy zakres, który pasuje do danych używanych przez integrację, poznaj jego zastosowanie, potwierdź, że wszystko działa w środowisku testowym, a następnie przygotuj się do przesłania danych na weryfikację.

Pamiętaj, aby uwzględnić czas potrzebny na przeprowadzenie weryfikacji w planie wprowadzania aplikacji na rynek lub nowych funkcji, które wymagają nowego zakresu. Jeden z tych dodatkowych wymagań występuje, jeśli aplikacja uzyskuje dostęp do danych użytkownika Google z serwera lub ma możliwość uzyskania takiego dostępu. W takich przypadkach system musi przejść coroczną ocenę bezpieczeństwa przeprowadzoną przez niezależnego zewnętrznego oceniającego, który został zatwierdzony przez Google. Z tego powodu proces weryfikacji zakresów z ograniczeniami może potrwać kilka tygodni. Pamiętaj, że wszystkie aplikacje muszą najpierw przejść weryfikację marki, która zwykle trwa 2–3 dni robocze, jeśli informacje dotyczące marki zmieniły się od czasu ostatniej zatwierdzonej weryfikacji ekranu z prośbą o zgodę na dostęp OAuth.

Dozwolone typy aplikacji

Niektóre typy aplikacji mogą mieć dostęp do ograniczonych zakresów w przypadku poszczególnych usług. Typy aplikacji znajdziesz na stronie dewelopera Google dotyczących danej usługi (np. zasady interfejsu Gmail API).

Twoim obowiązkiem jest zapoznanie się z typami aplikacji i określenie typu aplikacji. Jeśli jednak nie masz pewności co do typu aplikacji, podczas przesyłania aplikacji do weryfikacji możesz nie wybierać opcji w pytaniu Jakie funkcje będziesz używać?. Zespół weryfikujący interfejsy API Google określi wtedy typ aplikacji.

Ocena zabezpieczeń

Każda aplikacja, która prosi o dostęp do ograniczonych danych użytkowników Google i ma możliwość uzyskania dostępu do danych z serwera innej firmy lub przez niego, musi przejść ocenę bezpieczeństwa przeprowadzoną przez powołanych przez Google ekspertów. Ta ocena pomaga chronić dane użytkowników Google, ponieważ weryfikuje, czy wszystkie aplikacje, które mają dostęp do danych użytkowników Google, są w stanie bezpiecznie przetwarzać dane i usuwać je na żądanie użytkownika.

Aby ustandaryzować ocenę zabezpieczeń, korzystamy z  platformy App Defense Alliance ramy oceny bezpieczeństwa aplikacji w chmurze (Cloud Application Security Assessment, CASA).

Jak już wspomnieliśmy, aby zachować dostęp do zweryfikowanych ograniczonych zakresów, aplikacje muszą przejść ponowną weryfikację pod kątem zgodności i co najmniej raz na 12 miesięcy od daty zatwierdzenia listu oceny (LOA) przez oceniającego. Jeśli aplikacja zawiera nowy zakres z ograniczeniami, może być konieczne ponowne sprawdzenie aplikacji, aby uwzględnić dodatkowy zakres, jeśli nie był uwzględniony w poprzedniej ocenie bezpieczeństwa.

Gdy nadejdzie czas na ponowne przetestowanie aplikacji, zespół Google sprawdzi i wyśle e-maila. Aby mieć pewność, że odpowiedni członkowie Twojego zespołu otrzymają powiadomienie o tej corocznej weryfikacji, powiązaj z projektem dodatkowe konta Google jako właściciele lub edytorzy. Warto też aktualizować adresy e-mail pomocy dla użytkowników i dewelopera, które są określone w protokole Google OAuth.

Przygotowanie się do weryfikacji

Wszystkie aplikacje, które korzystają z interfejsów API Google, aby uzyskać dostęp do danych, muszą wykonać te czynności, aby przejść weryfikację marki:

  1. Sprawdź, czy Twoja aplikacja nie mieści się w żadnym z przypadków użycia opisanych w sekcji Wyjątki od wymagań weryfikacji.
  2. Upewnij się, że Twoja aplikacja jest zgodna z wymaganiami dotyczącymi marki powiązanych interfejsów API lub usługi. Zapoznaj się na przykład ze wskazówkami dotyczącymi promowania marki w przypadku zakresów logowania się w Google.
  3. Potwierdź w Google Search Console własność autoryzowanych domen projektu. Użyj konta Google powiązanego z Twoim projektem API Console jako właściciela lub edytującego.
  4. Upewnij się, że wszystkie informacje dotyczące marki na ekranie zgody OAuth, takie jak nazwa aplikacji, adres e-mail pomocy, URI strony głównej, URI polityki prywatności itp., prawidłowo odzwierciedlają tożsamość aplikacji.

Wymagania dotyczące strony głównej aplikacji

Upewnij się, że strona główna spełnia te wymagania:

  • Strona główna musi być dostępna publicznie, a nie tylko dla zalogowanych użytkowników witryny.
  • Strona główna musi być wyraźnie związana z aplikacją, która jest w trakcie sprawdzania.
  • Linki do strony aplikacji w Google Play lub jej strony na Facebooku nie są uznawane za prawidłowe strony główne aplikacji.

Wymagania dotyczące linku do polityki prywatności aplikacji

Upewnij się, że polityka prywatności aplikacji spełnia te wymagania:

  • Polityka prywatności musi być widoczna dla użytkowników, hostowana w tej samej domenie co strona główna aplikacji i powiązana z ekranem zgody OAuth w aplikacji Google API Console. Pamiętaj, że strona główna musi zawierać opis funkcji aplikacji oraz linki do polityki prywatności i opcjonalnie do warunków korzystania z usługi.
  • Polityka prywatności musi określać sposób, w jaki aplikacja uzyskuje dostęp do danych użytkowników Google, wykorzystuje je, przechowuje je lub udostępnia. The privacy policy must comply with the Google API Services User Data Policy and the Limited Use requirements for restricted scopes. Musisz ograniczyć korzystanie z danych użytkowników Google do działań opisanych w Twojej opublikowanej polityce prywatności.
  • Review example cases of privacy policies that don't meet the Limited Use requirements.

Jak przesłać aplikację do weryfikacji

Projekt porządkuje wszystkie zasoby. Projekt składa się z zestawu powiązanych kont Google, które mają uprawnienia do wykonywania operacji projektowych, zestawu włączonych interfejsów API oraz ustawień płatności, uwierzytelniania i monitorowania tych interfejsów. Projekt może na przykład zawierać co najmniej 1 klienta OAuth, skonfigurowane interfejsy API do użycia przez tych klientów oraz ekran zgody OAuth, który wyświetla się użytkownikom przed autoryzacją dostępu do aplikacji.

Jeśli którykolwiek z Twoich klientów OAuth nie jest gotowy do wdrożenia, zalecamy usunięcie go z projektu, który wymaga weryfikacji. Możesz to zrobić w  .

Aby przesłać dane do weryfikacji, wykonaj te czynności:

  1. Upewnij się, że Twoja aplikacja jest zgodna z Warunkami korzystania z interfejsów API GoogleZasadami dotyczącymi danych użytkownika w usługach interfejsu API Google.
  2. Aktualizuj role właściciela i edytującego na powiązanych kontach projektu, a także informacje kontaktowe pomocy dla użytkowników i informacje kontaktowe dewelopera w  . Dzięki temu odpowiednie osoby z Twojego zespołu otrzymają powiadomienie o nowych wymaganiach.
  3. Otwórz OAuth .
  4. Kliknij przycisk Selektor projektów.
  5. W wyświetlonym oknie Select from (Wybierz spośród) wybierz swój projekt. Jeśli nie możesz znaleźć swojego projektu, ale znasz jego identyfikator, możesz utworzyć adres URL w przeglądarce w tym formacie:

    ?project=[PROJECT_ID]

    Zastąp [PROJECT_ID] identyfikatorem projektu, którego chcesz użyć.

  6. Kliknij przycisk Edytuj aplikację.
  7. Wpisz niezbędne informacje na stronie ekranu zgody OAuth, a potem kliknij przycisk Zapisz i kontynuuj.
  8. Aby zadeklarować wszystkie zakresy wymagane przez Twoją aplikację, użyj przycisku Dodaj lub usuń zakresy. W sekcji Zakresy niekrytyczne znajdziesz wstępny zestaw zakresów wymaganych do Logowania przez Google. Dodane zakresy są klasyfikowane jako niewrażliwe. sensitive, or restricted
  9. Podaj maksymalnie 3 linki do istotnej dokumentacji funkcji w aplikacji.
  10. W kolejnych krokach podaj wszelkie dodatkowe informacje o aplikacji, o które Cię poprosimy.

    1. Ensure your app complies with the Additional requirements for specific API scopes, which includes undergoing an annual security assessment if your app accesses restricted scope Google users' data from or through a third-party server.
    2. Ensure your app is one of the allowed types specified in the Limited Use section of the Additional requirements for specific API scopes page.
    3. If your app is a task automation platform, your demonstration video must showcase how multiple API workflows are created and automated, and in which directions user data flows.
    4. Prepare a video that fully demonstrates how a user initiates and grants access to the requested scopes and shows, in detail, the usage of the granted sensitive and restricted scopes in the app. Upload the video to YouTube Studio and set Visibility as Unlisted. You need to provide a link to the demonstration video in the YouTube link field.

      1. Show the OAuth grant process that users will experience, in English. This includes the consent flow and, if you use Google Sign-In, the sign-in flow.
      2. Show that the OAuth consent screen correctly displays the App Name.
      3. Show that the browser address bar of the OAuth consent screen correctly includes your app's OAuth client ID.
      4. To show how the data will be used, demonstrate the functionality that's enabled by each sensitive and restricted scope that you request.
      5. If you use multiple clients, and therefore have multiple OAuth client IDs, show how the data is accessed on each OAuth client.
    5. Select your permitted application type from the "What features will you use?" list.
    6. Describe how you will use the restricted scopes in your app and why more limited scopes aren't sufficient.
  11. Jeśli konfiguracja aplikacji wymaga weryfikacji, możesz przesłać aplikację do weryfikacji. Wypełnij wymagane pola i kliknij Prześlij, aby rozpocząć proces weryfikacji.

Gdy prześlesz aplikację, zespół ds. zaufania i bezpieczeństwa wyśle Ci e-maila z dodatkowymi informacjami lub instrukcjami. Sprawdź swoje adresy e-mail w sekcji Dane kontaktowe dewelopera i adres e-mail pomocy w ekranie zgody OAuth, aby uzyskać dodatkowe informacje. Możesz też wyświetlić stronę ekranu akceptacji OAuth w projekcie, aby sprawdzić aktualny stan sprawdzania projektu, w tym czy proces sprawdzania jest wstrzymany, gdy czekamy na Twoją odpowiedź.

Wyjątki od wymagań weryfikacyjnych

Jeśli aplikacja ma być używana w jakimkolwiek ze scenariuszy opisanych w następnych sekcjach, nie musisz jej przesyłać do sprawdzenia.

Do użytku osobistego

Jednym z takich przypadków jest sytuacja, w której jesteś jedynym użytkownikiem aplikacji lub aplikacja jest używana przez niewielką liczbę użytkowników, których znasz osobiście. Ty i niewielka liczba użytkowników możecie przejść przez ekran aplikacji niezweryfikowanej i udostępnić dostęp do aplikacji swoim kontom osobistym.

projekty używane na poziomach rozwoju, testowania lub testów przedprodukcyjnych.

Aby zapewnić zgodność z zasadami Google OAuth 2.0, zalecamy tworzenie różnych projektów na potrzeby środowisk testowych i produkcyjnych. Zalecamy przesyłanie aplikacji do weryfikacji tylko wtedy, gdy chcesz udostępnić ją każdemu użytkownikowi mającym konto Google. Dlatego jeśli aplikacja jest w fazie programowania, testowania lub stagingu, weryfikacja nie jest wymagana.

Jeśli aplikacja jest w fazie rozwoju lub testów, możesz pozostawić Stan publikacji w domyślnym ustawieniu Testowanie. To ustawienie oznacza, że aplikacja jest nadal w fazie rozwoju i jest dostępna tylko dla użytkowników, których dodasz do listy testowych. Musisz zarządzać listą kont Google, które biorą udział w rozwijaniu lub testowaniu aplikacji.

Komunikat ostrzeżenia, że Google nie zweryfikowało aplikacji, która jest testowana.
Rysunek 1. Ekran ostrzeżenia dla testera

Tylko dane należące do usługi

Jeśli Twoja aplikacja używa konta usługi tylko do uzyskiwania dostępu do własnych danych i nie ma dostępu do żadnych danych użytkownika (połączonych z kontem Google), nie musisz przesyłać aplikacji do weryfikacji.

Więcej informacji o kontach usługi znajdziesz w dokumentacji Google Cloud na temat kont usługi. Instrukcje korzystania z konta usługi znajdziesz w artykule Używanie protokołu OAuth 2.0 w aplikacjach międzyserwerowych.

Jest przeznaczony tylko do użytku wewnętrznego

Oznacza to, że aplikacja jest używana tylko przez osoby z Twojej organizacji korzystającej z Google Workspace lub Cloud Identity. Projekt musi należeć do organizacji, a jego ekran akceptacji OAuth musi być skonfigurowany dla typu użytkownika wewnętrznego. W takim przypadku aplikacja może wymagać zatwierdzenia przez administratora organizacji. Więcej informacji znajdziesz w artykule Dodatkowe kwestie dotyczące Google Workspace.

Instalacja w całej domenie

Jeśli planujesz, że Twoja aplikacja będzie kierowana tylko do użytkowników organizacji korzystających z Google Workspace lub Cloud Identity i zawsze będzie używana w ramach instalacji na całą domenę, nie będzie wymagać weryfikacji. Dzieje się tak, ponieważ instalacja w całej domenie umożliwia administratorowi domeny przyznawanie dostępu aplikacjom zewnętrznym i wewnętrznym do danych użytkowników. Tylko administratorzy organizacji mogą dodawać aplikację do listy dozwolonych w swoich domenach.

Więcej informacji o instalowaniu aplikacji w całej domenie znajdziesz w często zadawanych pytaniach Moja aplikacja ma użytkowników z kontami korporacyjnymi z innej domeny Google Workspace.