Weryfikacja zakresu z ograniczeniami

Niektóre interfejsy API Google (te, które akceptują zakresy wrażliwe lub z ograniczeniami ) mają wymagania dotyczące aplikacji proszących o dostęp do danych konsumentów. Te dodatkowe wymagania dotyczące zakresów z ograniczeniami wymagają, aby aplikacja wykazała, że jest dozwolonym typem aplikacji, i przeszła dodatkowe kontrole, w tym ewentualną ocenę bezpieczeństwa.

Zastosowanie zakresów z ograniczeniami 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, do odczytu i zapisu itp.

Gdy używasz OAuth 2.0, aby uzyskać od konta Google uprawnienia dostępu do tych danych, używasz ciągów znaków zwanych zakresami, aby określić typ danych, do których chcesz uzyskać dostęp, oraz stopień tego dostępu. Jeśli Twoja aplikacja prosi o wrażliwe lub z ograniczeniami zakresy, musisz przejść proces weryfikacji, chyba że korzystanie z aplikacji kwalifikuje się do wyjątku.

Zakresów z ograniczeniami jest mniej niż zakresów wrażliwych. Aktualną listę zakresów wrażliwych i z ograniczeniami znajdziesz w artykule Najczęstsze pytania dotyczące weryfikacji interfejsu API OAuth. Zakresy te zapewniają szeroki dostęp do danych użytkowników Google i wymagają przejścia procesu weryfikacji zakresu, zanim poprosisz o te zakresy z dowolnego konta Google. Informacje o tym wymaganiu znajdziesz w zasadach dotyczących danych użytkownika w usługach interfejsu API Google oraz w dodatkowych wymaganiach dotyczących zakresów interfejsu API lub nastronie Google dla deweloperów dotyczącej konkretnej usługi. Jeśli przechowujesz lub przesyłasz dane z zakresów z ograniczeniami na serwerach, musisz przejść ocenę bezpieczeństwa.

Informacje o zakresach z ograniczeniami

Jeśli Twoja aplikacja prosi o zakresy z ograniczeniami i nie kwalifikuje się do wyjątku, musisz spełnić dodatkowe wymagania dotyczące zakresów interfejsu API określone w zasadach dotyczących danych użytkownika w usługach interfejsu API Google lub wymagania dotyczące konkretnej usługi na stronie Google dla deweloperów, co wymaga bardziej szczegółowego procesu weryfikacji.

Informacje o korzystaniu z zakresów

  • Sprawdź zakresy, których używa Twoja aplikacja lub których chcesz używać. Aby sprawdzić, jak obecnie korzystasz z zakresów, przejrzyj kod źródłowy aplikacji pod kątem zakresów wysyłanych z prośbami o autoryzację.
  • Upewnij się, że każdy żądany zakres jest niezbędny do działania funkcji aplikacji i korzysta z jak najmniejszych uprawnień wymaganych do udostępnienia tej funkcji. Interfejs API Google zwykle zawiera dokumentację referencyjną na stronie Google dla deweloperów dotyczącą konkretnej usługi, która zawiera informacje o punktach końcowych, w tym o zakresie wymaganym do wywołania punktu końcowego lub określonych właściwości w jego obrębie. Więcej informacji o zakresach dostępu wymaganych w przypadku punktów końcowych interfejsu API, które wywołuje Twoja aplikacja, znajdziesz w dokumentacji referencyjnej 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 mogą być używane tylko zgodnie z zasadami interfejsu API oraz w sposób, który przedstawiasz użytkownikom w działaniach aplikacji i w polityce prywatności.
  • Zapoznaj się z dokumentacją interfejsu API, aby dowiedzieć się więcej o każdym zakresie, w tym o jego potencjalnym stanie.
  • Zadeklaruj wszystkie zakresy używane przez aplikację na stronie Dostęp do danych w konsoli Cloud. Określone przez Ciebie zakresy są grupowane w kategorie zakresów wrażliwych lub z ograniczeniami aby wyróżnić dodatkową weryfikację, która jest wymagana.
  • Znajdź najlepszy zakres pasujący do danych używanych przez integrację, zapoznaj się z jego zastosowaniem, ponownie sprawdź, czy wszystko działa w środowisku testowym, a następnie przygotuj się do przesłania aplikacji do weryfikacji.

Pamiętaj, aby uwzględnić czas potrzebny na przeprowadzenie weryfikacji w planie wdrożenia aplikacji lub nowych funkcji, które wymagają nowego zakresu. Jednym z tych dodatkowych wymagań jest to, że aplikacja uzyskuje dostęp do danych użytkowników Google z serwera lub za jego pośrednictwem albo ma taką możliwość. W takich przypadkach system musi co roku przechodzić ocenę bezpieczeństwa przeprowadzaną przez niezależnego eksperta zewnętrznego zatwierdzonego przez Google. Z tego powodu proces weryfikacji zakresów z ograniczeniami może potrwać kilka tygodni. Pamiętaj, że jeśli informacje o marce uległy zmianie od czasu ostatniej zatwierdzonej weryfikacji ekranu akceptacji OAuth, wszystkie aplikacje muszą najpierw przejść proces weryfikacji marki , który zwykle trwa 2–3 dni robocze.

Dozwolone typy aplikacji

Niektóre typy aplikacji mogą uzyskiwać dostęp do zakresów z ograniczeniami w przypadku każdej usługi. Typy aplikacji znajdziesz na stronie Google dla deweloperów dotyczącej konkretnej usługi (np. w zasadach dotyczących interfejsu Gmail API).

Twoim obowiązkiem jest zapoznanie się z typem aplikacji i jego określenie. Jeśli jednak nie masz pewności, jaki typ aplikacji ma Twoja aplikacja, podczas przesyłania jej do weryfikacji możesz nie zaznaczyć żadnej opcji w odpowiedzi na pytanie Jakich funkcji będziesz używać? Zespół ds. weryfikacji interfejsu API Google określi wtedy typ aplikacji.

Ocena bezpieczeństwa

Każda aplikacja, która prosi o dostęp do danych z ograniczeniami użytkowników Google i ma możliwość uzyskania dostępu do danych z serwera innej firmy lub za jego pośrednictwem, musi przejść ocenę bezpieczeństwa przeprowadzaną przez ekspertów ds. bezpieczeństwa powołanych przez Google. Ocena ta pomaga chronić dane użytkowników Google, ponieważ sprawdza, czy wszystkie aplikacje, które uzyskują dostęp do danych użytkowników Google, mają możliwość bezpiecznego przetwarzania danych i usuwania danych użytkowników na ich żądanie.

Aby ujednolicić ocenę bezpieczeństwa, korzystamy z App Defense Alliance i z struktury oceny bezpieczeństwa aplikacji w chmurze (CASA).

Jak wspomnieliśmy wcześniej, aby zachować dostęp do zweryfikowanych zakresów z ograniczeniami, aplikacje muszą co najmniej co 12 miesięcy po dacie zatwierdzenia przez eksperta listu z oceną przejść ponowną weryfikację zgodności i ocenę bezpieczeństwa. Jeśli aplikacja dodaje nowy zakres z ograniczeniami, może być konieczne ponowne przeprowadzenie oceny, aby uwzględnić ten dodatkowy zakres, jeśli nie został on uwzględniony w poprzedniej ocenie bezpieczeństwa.

Gdy nadejdzie czas ponownej certyfikacji aplikacji, zespół ds. weryfikacji Google wyśle Ci e-maila. Aby mieć pewność, że odpowiedni członkowie zespołu zostaną powiadomieni o tym corocznym egzekwowaniu zasad, powiąż dodatkowe konta Google z projektem w konsoli Cloud jako właściciel lub edytor. Pomaga to też w aktualizowaniu adresów e-mail do obsługi użytkowników i kontaktu z deweloperami, które są określone na stronie Promowanie marki OAuth w konsoli Google Cloud.

Czynności przygotowawcze do weryfikacji

Aby przejść weryfikację marki, wszystkie aplikacje, które używają interfejsów API Google do żądania dostępu do danych, muszą wykonać te czynności:

  1. Potwierdź, że Twoja aplikacja nie mieści się w żadnym z przypadków użycia opisanych w sekcji Wyjątki od wymagań weryfikacyjnych.
  2. Upewnij się, że Twoja aplikacja jest zgodna z wymaganiami dotyczącymi promowania marki w powiązanych interfejsach API lub usłudze. Na przykład zapoznaj się z wytycznymi dotyczącymi promowania marki w przypadku zakresów logowania przez Google.
  3. Zweryfikuj własność autoryzowanych domen projektu w Google Search Console. Użyj konta Google powiązanego z projektem w Konsoli interfejsów API jako właściciel lub edytujący.
  4. Upewnij się, że wszystkie informacje o marce na ekranie zgody OAuth, takie jak nazwa aplikacji, e-mail do obsługi klienta, identyfikator URI strony głównej, identyfikator URI polityki prywatności itp., dokładnie 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ć publicznie dostępna, a nie tylko dla zalogowanych użytkowników witryny.
  • Strona główna musi być wyraźnie powiązana z aplikacją, która jest w trakcie sprawdzania.
  • Linki do strony aplikacji w Sklepie Google Play lub 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 konsoli interfejsu API Google. Pamiętaj, że strona główna musi zawierać a opis funkcji aplikacji oraz linki do polityki prywatności i opcjonalnych 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 lub udostępnia. The privacy policy must comply with the Google API Services User Data Policy and the Limited Use requirements for restricted scopes. Korzystanie z danych użytkowników Google musisz ograniczyć do praktyk ujawnionych w opublikowanej polityce prywatności.
  • Review example cases of privacy policies that don't meet the Limited Use requirements.

Przesyłanie aplikacji do weryfikacji marki

Projekt w konsoli Google Cloud porządkuje wszystkie zasoby w konsoli Cloud. Projekt składa się z zestawu powiązanych kont Google, które mają uprawnienia do wykonywania operacji w projekcie, zestawu włączonych interfejsów API oraz ustawień rozliczeń, uwierzytelniania i monitorowania tych interfejsów API. Projekt może na przykład zawierać co najmniej 1 klienta OAuth, konfigurować interfejsy API do użycia przez tych klientów oraz konfigurować ekran akceptacji OAuth, który jest wyświetlany użytkownikom, zanim autoryzują dostęp do Twojej aplikacji.

Jeśli którykolwiek z Twoich klientów OAuth nie jest gotowy do użycia w środowisku produkcyjnym, zalecamy usunięcie go z projektu, który prosi o weryfikację. Możesz to zrobić na stronie Klienci.

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

  1. Upewnij się, że Twoja aplikacja jest zgodna z Warunkami korzystania z interfejsów API Google i zasadami dotyczącymi danych użytkownika w usługach interfejsu API Google.
  2. W konsoli Cloud utrzymuj aktualne role właściciela i edytora powiązanych kont projektu oraz e-mail do obsługi użytkowników i dane kontaktowe dewelopera na ekranie akceptacji OAuth. Dzięki temu odpowiedni członkowie zespołu będą powiadamiani o wszelkich nowych wymaganiach.
  3. Otwórz stronę Promowanie marki OAuth w konsoli Cloud OAuth Branding page.
  4. Kliknij przycisk Selektor projektu.
  5. W wyświetlonym oknie Wybierz z wybierz swój projekt. Jeśli nie możesz znaleźć projektu, ale znasz jego identyfikator projektu, możesz utworzyć adres URL w przeglądarce w tym formacie:

    https://console.developers.google.com/auth/branding?project=[PROJECT_ID]

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

  6. Na stronie Promowanie marki podaj informacje o marce aplikacji, w tym nazwę aplikacji, logo, dane kontaktowe dewelopera i odpowiednie linki. Wszystkie wprowadzone zmiany są zapisywane jako Wersja robocza promowania marki.
  7. Aby rozpocząć proces oceny , kliknij przycisk Zweryfikuj promowanie marki. Sprawdzanie automatyczne zwykle trwa kilka minut.
  8. Po zakończeniu oceny sprawdź stan. Jeśli ocena zakończy się pomyślnie, stan zmieni się na Gotowe do opublikowania. Jeśli automatyczna weryfikacja się nie powiedzie, możesz zobaczyć wykryte problemy i je naprawić lub poprosić o ręczne sprawdzenie.
  9. Aby opublikować nowe promowanie marki , kliknij przycisk Opublikuj promowanie marki.
  10. Jeśli Twoja aplikacja wymaga też weryfikacji zakresów wrażliwych lub z ograniczeniami, otwórz Centrum weryfikacji OAuth, aby śledzić Stan dostępu do danych i podać dodatkowe informacje, takie jak film demonstracyjny. Pamiętaj, że zanim poprosisz o weryfikację dostępu do danych, musisz mieć opublikowany stan promowania marki.

  11. Aby zadeklarować wszystkie zakresy wymagane przez aplikację, kliknij przycisk Dodaj lub usuń zakresy. Początkowy zestaw zakresów niezbędnych do logowania przez Google jest wstępnie wypełniony w sekcji Zakresy niewrażliwe. Dodane zakresy są klasyfikowane jako niewrażliwe, <a href="/identity/protocols/oauth2/production-readiness/sensitive-scope-verification"

    sensitive, or restricted.

  12. Podaj maksymalnie 3 linki do odpowiedniej dokumentacji dotyczącej powiązanych funkcji w aplikacji.
  13. W kolejnych krokach podaj dodatkowe informacje o aplikacji.

    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.

Gdy opublikujesz promowanie marki lub prześlesz prośbę o dostęp do danych, zespół ds. bezpieczeństwa i zaufania Google może skontaktować się z Tobą e-mailem, aby poprosić o dodatkowe informacje, których potrzebuje, lub poinformować o czynnościach, które musisz wykonać. Sprawdź adresy e-mail w sekcji Dane kontaktowe dewelopera oraz e-mail do obsługi użytkowników na ekranie akceptacji OAuth pod kątem próśb o dodatkowe informacje. Możesz też sprawdzić strony Promowanie marki lub Centrum weryfikacji w projekcie, aby potwierdzić bieżący stan sprawdzania projektu, w tym czy proces sprawdzania jest wstrzymany, ponieważ czekamy na Twoją odpowiedź.

Wyjątki od wymagań weryfikacyjnych

Jeśli Twoja aplikacja będzie używana w którymś z przypadków opisanych w tych sekcjach, nie musisz przesyłać jej do sprawdzenia.

Do użytku osobistego

Jednym z przypadków użycia jest sytuacja, gdy jesteś jedynym użytkownikiem aplikacji lub gdy aplikacja jest używana tylko przez kilka osób, które znasz osobiście. Ty i ograniczona liczba użytkowników możecie bez problemu przejść przez ekran niezweryfikowanej aplikacji i przyznać swoim kontom osobistym dostęp do aplikacji.

Projekty używane na poziomach programowania, testowania lub stagingu

Aby zachować zgodność z zasadami Google OAuth 2.0, zalecamy używanie różnych projektów w środowiskach testowych i produkcyjnych. Zalecamy przesłanie aplikacji do weryfikacji tylko wtedy, gdy chcesz udostępnić ją wszystkim użytkownikom z kontem Google. Dlatego jeśli aplikacja jest w fazie programowania, testowania lub stagingu, weryfikacja nie jest wymagana.

Jeśli aplikacja jest w fazie programowania lub testowania, możesz pozostawić stan publikacji w ustawieniu domyślnym Testowanie. To ustawienie oznacza, że aplikacja jest nadal w fazie programowania i jest tylko dostępna dla użytkowników, których dodasz do listy użytkowników testowych. Musisz zarządzać listą kont Google które są używane do programowania lub testowania aplikacji.

Komunikat ostrzegawczy informujący, że Google nie zweryfikowało aplikacji, która jest w trakcie testowania.
Ilustracja 1. Ekran ostrzeżenia dla testerów

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 uzyskuje dostępu do danych użytkowników (powiązanych z kontem Google), nie musisz przesyłać jej do weryfikacji.

Aby dowiedzieć się, czym są konta usługi, zapoznaj się z dokumentacją Google Cloud na temat kont usługi. Instrukcje dotyczące korzystania z konta usługi znajdziesz w artykule Używanie 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 w Twojej organizacji Google Workspace lub Cloud Identity organization. Projekt musi należeć do organizacji, a jego ekran zgody OAuth musi być skonfigurowany dla typu użytkownika Wewnętrzny. W takim przypadku aplikacja może wymagać zatwierdzenia przez administratora organizacji. Więcej informacji znajdziesz w sekcji 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 Google Workspace lub Cloud Identity i zawsze będzie używać instalacji w całej domenie, nie będzie ona wymagać weryfikacji marki. Jeśli jednak Twoja aplikacja korzysta z zakresów z ograniczeniami lub wrażliwych, weryfikacja aplikacji jest wymagana. Dzieje się tak, ponieważ instalacja w całej domenie umożliwia administratorowi domeny przyznanie aplikacjom zewnętrznym i wewnętrznym dostępu do danych użytkowników. Tylko administratorzy organizacji mogą dodać aplikację do listy dozwolonych do użycia w swoich domenach.

Dowiedz się, jak skonfigurować aplikację do instalacji w całej domenie, z często zadawanego pytania Moja aplikacja ma użytkowników z kontami firmowymi z innej domeny Google Workspace.