Omówienie interfejsu Play Integrity API

Interfejs Play Integrity API pomaga sprawdzać, czy interakcje i żądania serwera pochodzące z autentycznego pliku binarnego aplikacji uruchomionej na oryginalnym urządzeniu z Androidem. Według wykrywania interakcji potencjalnie niebezpiecznych i fałszywych, np. pochodzących z manipulacji. i niezaufanych środowisk, serwer backendu aplikacji może zareagować, podejmując odpowiednie działania, aby zapobiec atakom i ograniczyć nadużycia.

Gdy aplikacja lub gra jest używana na urządzeniu z Androidem, na którym jest dostępna Sklep Google Play i korzysta z Usług Google Play, interfejs Play Integrity API odpowiada który pomaga określić, czy wchodzisz w interakcję z tymi treściami:

  • Oryginalny plik binarny aplikacji: określ, czy używasz niezmodyfikowany plik binarny rozpoznawany przez Google Play.
  • Oryginalna instalacja z Google Play: sprawdzanie, czy bieżące konto użytkownika z licencją, co oznacza, że użytkownik zainstalował Twoją aplikację lub grę lub za nią zapłacił. w Google Play.
  • Oryginalność urządzenia z Androidem: pozwala określić, czy aplikacja działa na oryginalne urządzenie z Androidem z Usługami Google Play (lub oryginalne) instancji Gier Google Play na PC).

Możesz też otrzymywać informacje o środowisku w odpowiedziach interfejsu Play Integrity API, w tym:

  • Zagrożenie dostępu do aplikacji: ustal, czy uruchomione są aplikacje, które mogą używany do przechwytywania ekranu, wyświetlania nakładek lub sterowania urządzeniem.
  • Zagrożenie związane ze znanym złośliwym oprogramowaniem: sprawdzanie, czy usługa Google Play Protect jest włączona oraz czy wykryła zainstalowane na urządzeniu niebezpieczne lub niebezpieczne aplikacje.

Omówienie

Gdy użytkownik wykonuje działanie w aplikacji, możesz wywołać interfejs Play Integrity API. czy problem wystąpił w oryginalnym pliku binarnym aplikacji zainstalowanym z Google Play na oryginalnym urządzeniu z Androidem. Możesz też włączyć dodatkowe informacje w odpowiedzi, w tym liczbę żądań wysłanych przez urządzenie; ostatnie sygnały dotyczące środowiska, w tym ryzyko związane z dostępem do aplikacji, wyroku w sprawie Play Protect. Jeśli coś jest nie tak z wynikami, serwer backendu aplikacji może określić sposób ochrony przed problemami takie jak nadużycia i oszustwa, niewłaściwe używanie, oszukiwanie i nieupoważniony dostęp oraz ataki.

Omówienie interfejsu Play Integrity API
przepływ

Bezpieczeństwo

Jeśli zastosujesz się do tych wskazówek, interfejs Play Integrity API będzie działać jak najlepiej zalecane metody:

mieć strategię przeciwdziałania nadużyciom;

Interfejs Play Integrity API działa najlepiej, gdy jest używany razem z innymi sygnałami ogólną strategię przeciwdziałania nadużyciom, a nie jako jedyny mechanizm przeciwdziałania nadużyciom. Używaj ten interfejs API w połączeniu z innymi odpowiednimi najlepszymi zabezpieczeniami metoddotyczących aplikacji. Domyślnie aplikacja może wysłać do 10 tys. żądań dziennie w przypadku wszystkich instalacji. Dostępne opcje poproś o zwiększenie dziennego budżetu maksimum.

Zanim podejmiesz działanie, zbierz dane telemetryczne i poznaj odbiorców

Zanim zmienisz sposób działania aplikacji na podstawie ocen interfejsu Play Integrity API, możesz: zrozumieć bieżącą sytuację obecnych odbiorców, stosując Interfejs API bez egzekwowania. Kiedy poznasz już czynniki wpływające na aktualną liczbę instalacji możesz oszacować wpływ planowanego egzekwowania zasad odpowiednio dostosować strategię przeciwdziałania nadużyciom.

Zdecyduj, jak będziesz wysyłać żądania ocen integralności

Interfejs Play Integrity API oferuje 2 opcje żądań i odbierania integralności decyzji. od tego, czy wysyłasz żądania standardowe, klasyczne czy ich połączenia; w przypadku obu typów żądań, odpowiedź z oceną integralności zostanie zwrócona w polu w tym samym formacie.

Standardowe żądania do interfejsu API są odpowiednie dla wszystkich aplikacji i gier i można je realizować sprawdzać, czy działania użytkownika i żądania serwera są autentyczne. Standardowa mają najkrótszy czas oczekiwania (średnio kilkaset milisekund) o wysokiej wiarygodności w uzyskaniu użytej oceny. Żądania standardowe wykorzystują inteligentnego buforowania na urządzeniu przy jednoczesnym zapewnieniu ochrony przed określonymi typami do Google Play.

Klasyczne żądania do interfejsu API, które były oryginalnym sposobem żądania oceny integralności, będą nadal dostępne. Żądania klasyczne mają dłuższy czas oczekiwania (kilka sekund średnią) i ponosisz odpowiedzialność za ograniczenie ryzyka związanego z ataków. Klasyczne żądania zużywają więcej danych i baterii użytkownika niż standardowe żądania ponieważ inicjują nową ocenę i dlatego należy je rzadko jako jednorazowe sprawdzenie, czy działanie jest bardzo wrażliwe lub wartościowe jest autentyczny. Jeśli rozważasz wysłanie klasycznego żądania i buforowanie go w użyj go w późniejszym czasie, zamiast tego wyślij standardowe żądanie, aby zmniejszyć ryzyko ataków.

W poniższej tabeli opisujemy kilka kluczowych różnic między tymi dwoma typami tagów żądania:

Standardowe żądanie do interfejsu API Klasyczne żądanie do interfejsu API
Wymagana minimalna wersja pakietu SDK na Androida Android 5.0 (poziom interfejsu API 21) lub nowszy Android 4.4 (poziom interfejsu API 19) lub nowszy
Wymagane rozgrzewka interfejsu API ✔️ (kilka sekund)
Typowe opóźnienie żądania Kilkaset milisekund Kilka sekund
Potencjalna częstotliwość żądań Częste (sprawdzanie na żądanie w przypadku działań i żądań) Rzadkie (jednorazowe sprawdzanie w przypadku działań o największej wartości lub najbardziej wrażliwych żądań)
Minimalizuj ryzyko ponownych ataków i podobnych ataków Automatyczne ograniczanie ryzyka przez Google Play Użyj pola nonce z logiką po stronie serwera

Zobaczysz tabelę z większymi różnicami w kwestiach związanych z klasycznymi żądaniami.

Poproś o ocenę integralności w odpowiednim momencie

Poproś o ocenę ryzyka dostępu do aplikacji jak najbliższy termin działania lub żądania serwera, przed którym chcesz się bronić, dzięki czemu oszuści nie będą mogli obejść kontroli integralności przeprowadzanej przez aplikacji.

Utrudnianie replikacji żądań do interfejsu API

Standardowe żądania do interfejsu API mają pole o nazwie requestHash, które jest używane do ochrony przed manipulacjami i podobnymi atakami. W tym polu wpisz podsumowanie wszystkich odpowiednich wartości z żądania aplikacji. Postępuj zgodnie ze wskazówkami na jak używać wiązania treści, które pozwalają chronić standardowe żądania aplikacji.

Klasyczne żądania do interfejsu API mają pole o nazwie nonce (skrót od „number one one” (liczba raz), w którym jest wykorzystywana do ochrony przed określonymi typami ataków, takimi jak ponowne odtwarzanie czy i manipulowania. Postępuj zgodnie ze wskazówkami dotyczącymi generowania Liczba przypadkóww celu ochrony klasycznej wersji aplikacji żądań.

Unikaj ocen integralności pamięci podręcznej

Oceny integralności buforowania zwiększają ryzyko wykorzystania serwera proxy, czyli ataku gdy nieuczciwy podmiot wykorzystuje ocenę z dobrego urządzenia do celów nadużyć w innym środowisku. Zamiast buforować odpowiedzi, możesz utworzyć standardowy interfejs API , aby uzyskać ocenę na żądanie.

mieć wielopoziomową strategię egzekwowania zasad.

Ocena integralności interfejsu Play Integrity API ma wiele możliwych odpowiedzi dzięki której można opracować strategię przeciwdziałania nadużyciom na wielu poziomach dotyczących egzekwowania zasad. Aby to zrobić, skonfiguruj serwer backendu aplikacji tak, aby zachowywał się w zależności od możliwej odpowiedzi lub grupy odpowiedzi.

Strategię egzekwowania zasad można też podzielić na podstawie urządzenia dla rzetelności, decydując się na otrzymywanie dodatkowych urządzeń etykiety w interfejsie API w Konsoli Play. Każde urządzenie zwróci wszystkie etykiety, których które spełnia. Na przykład po wyrażeniu zgody na otrzymywanie etykiety, można oznaczyć urządzenie jako zaufane MEETS_STRONG_INTEGRITY, MEETS_DEVICE_INTEGRITY i MEETS_BASIC_INTEGRITY więcej niż urządzenie, które zwraca tylko MEETS_BASIC_INTEGRITY. Możesz odpowiedzieć inaczej niż serwer w każdym przypadku.

Wysyłaj zakres odpowiedzi z serwera do aplikacji

Uzyskanie szerokiego zakresu wyników decyzyjnych jest trudniejsze do odzwierciedlenia niż wysyłanie pliku binarnego Zezwalaj/odrzucaj odpowiedzi z serwera z powrotem do aplikacji dla każdej odpowiedzi. Dla: możesz na przykład dodać serię powiązanych odpowiedzi, takich jak Zezwalaj, Zezwalaj zabezpieczeń, Zezwalaj z limitami po zakończeniu testu CAPTCHA i Odmów.

Wykrywanie nadużyć na dużą skalę na podstawie ostatniej aktywności na urządzeniu

Korzystając z funkcji ostatnia aktywność na urządzeniu w interfejsie Play Integrity API, możesz: urządzeń żądających dużej liczby tokenów integralności. Duża aktywność osoby dopuszczające się nadużyć często generują prawidłowe wyniki poświadczeń na podstawie prawdziwych urządzeń, udostępniać je botom, aby zautomatyzować ataki na urządzenia z dostępem do roota i emulatory. Możesz skorzystać z poziomu ostatniej aktywności urządzenia, aby sprawdzić liczbę zostały wygenerowane przez aplikację na tym urządzeniu w ciągu ostatniej godziny.

Pokaż przydatne komunikaty o błędach

Jeśli to możliwe, przekaż użytkownikowi przydatne komunikaty o błędach i poinformuj go, co co może zrobić, żeby to naprawić; na przykład ponawiać próby, włączyć połączenie z internetem lub sprawdzić, czy aplikacja Sklep Play jest aktualna.

opracuj plan na wypadek nieoczekiwanych problemów lub przerw w działaniu usługi;

Panel stanu Google Play pokazuje: informacje o stanie usługi Play Integrity API oraz informacji o zakłóceniach i przerwach w działaniu usługi. Należy zaplanować z wyprzedzeniem, chcesz, aby serwer backendu działał w nieprawdopodobnym przypadku wystąpienia na dużą skalę Przerwa w działaniu interfejsu Play Integrity API.

Rozważ kompleksowe rozwiązania dla firm dotyczące oszustw

Klienci biznesowi poszukujący kompleksowego rozwiązania do zarządzania oszustwami i botami można kupić reCAPTCHA Enterprise na urządzenia mobilne, zawiera pakiety SDK dla Android które zapewniają deweloperom ocenę ryzyka oszustwa. reCAPTCHA Enterprise automatycznie obejmuje sygnały interfejsu Play Integrity API i łączy je z siecią reCAPTCHA i sygnałów aplikacji dla klientów, co zapewnia bezproblemową i niewidzialną oszustwo gotowe do zarządzania rozwiązaniami. Może też zapewniać ochronę na urządzeniach z Androidem. w przypadku aplikacji, w których interfejs Play Integrity API jest niedostępny.

Zwiększanie ryzyka związanego z ruchem w przypadku dostępu do funkcji o dużej wartości lub poufnych

Wykrywaj w aplikacji lub grze działania o wysokiej wartości lub poufne dane, które chcesz chronić Zamiast natychmiastowego blokowania dostępu do interfejsu Play Integrity API. W miarę możliwości spróbuj mogą generować ryzykowny ruch, zanim zezwolisz na wykonanie wartościowych działań. Na przykład, gdy ryzyko dostępu do aplikacji wskazuje, że uruchomiona jest aplikacja, która może przechwycić poproś użytkownika o wyłączenie lub odinstalowanie aplikacji, które mogą zapisywać obraz z ekranu. zanim umożliwisz im przejście do funkcji, które chcesz chronić.

Warunki korzystania z usługi i bezpieczeństwo danych

Uzyskując dostęp do interfejsu Play Integrity API, akceptujesz Play Integrity API Warunki korzystania z interfejsów API Przeczytaj ze zrozumieniem wszystkich obowiązujących warunków i zasad.

W Google Play jest sekcja Bezpieczeństwo danych, w której deweloperzy mogą informować o swoich aplikacjach zbieranie i udostępnianie danych oraz dbanie o bezpieczeństwo użytkowników. Do do wypełnienia formularza danych, przeczytaj te informacje o tym, jak Interfejs Integrity API obsługuje dane.