获取我们在 Firebase 峰会上发布的所有信息,了解 Firebase 可如何帮助您加快应用开发速度并满怀信心地运行应用。了解详情

Zacznij korzystać z Sprawdzania aplikacji z SafetyNet na Androidzie

Na tej stronie pokazano, jak włączyć sprawdzanie aplikacji w aplikacji na Androida przy użyciu wbudowanego dostawcy SafetyNet. Po włączeniu Kontroli aplikacji zapewniasz, że tylko Twoja aplikacja ma dostęp do zasobów Firebase projektu. Zobacz przegląd tej funkcji.

Jeśli chcesz korzystać z funkcji App Check z własnym niestandardowym dostawcą, zobacz Implementowanie niestandardowego dostawcy App Check .

1. Skonfiguruj projekt Firebase

  1. Dodaj Firebase do swojego projektu na Androida, jeśli jeszcze tego nie zrobiłeś.

  2. Zarejestruj swoje aplikacje, aby korzystać z funkcji App Check u dostawcy SafetyNet w sekcji App Check konsoli Firebase. Musisz podać odcisk cyfrowy SHA-256 certyfikatu podpisywania aplikacji.

    Zwykle musisz zarejestrować wszystkie aplikacje swojego projektu, ponieważ po włączeniu wymuszania dla produktu Firebase tylko zarejestrowane aplikacje będą miały dostęp do zasobów zaplecza produktu.

  3. Opcjonalnie : w ustawieniach rejestracji aplikacji ustaw niestandardowy czas wygaśnięcia (TTL) dla tokenów sprawdzania aplikacji wydanych przez dostawcę. Możesz ustawić TTL na dowolną wartość z zakresu od 30 minut do 7 dni. Zmieniając tę ​​wartość, pamiętaj o następujących kompromisach:

    • Bezpieczeństwo: Krótsze TTL zapewniają większe bezpieczeństwo, ponieważ zmniejszają okno, w którym przeciek lub przechwycony token może zostać nadużyty przez atakującego.
    • Wydajność: krótsze czasy TTL oznaczają, że Twoja aplikacja będzie częściej przeprowadzać atestację. Ponieważ proces zaświadczania aplikacji zwiększa opóźnienie żądań sieciowych za każdym razem, gdy jest wykonywany, krótki czas TTL może wpłynąć na wydajność aplikacji.
    • Limit i koszt: krótsze czasy oczekiwania i częste ponowna atestacja szybciej zmniejszają Twój limit, a w przypadku usług płatnych potencjalnie kosztują więcej. Zobacz Kontyngenty i limity .

    Domyślny czas TTL wynoszący 1 godzinę jest rozsądny dla większości aplikacji. Zwróć uwagę, że biblioteka App Check odświeża tokeny po około połowie czasu TTL.

2. Dodaj bibliotekę App Check do swojej aplikacji

W swoim module (app-level) pliku Gradle (zazwyczaj app/build.gradle ) zadeklaruj zależność dla biblioteki App Check Android:

Java

dependencies {
    implementation 'com.google.firebase:firebase-appcheck-safetynet:16.1.0'
}

Kotlin+KTX

dependencies {
    implementation 'com.google.firebase:firebase-appcheck-safetynet:16.1.0'
}

3. Zainicjuj sprawdzanie aplikacji

Dodaj następujący kod inicjujący do swojej aplikacji, aby działała przed użyciem innych pakietów SDK Firebase:

Java

FirebaseApp.initializeApp(/*context=*/ this);
FirebaseAppCheck firebaseAppCheck = FirebaseAppCheck.getInstance();
firebaseAppCheck.installAppCheckProviderFactory(
        SafetyNetAppCheckProviderFactory.getInstance());

Kotlin+KTX

FirebaseApp.initializeApp(/*context=*/this)
val firebaseAppCheck = FirebaseAppCheck.getInstance()
firebaseAppCheck.installAppCheckProviderFactory(
    SafetyNetAppCheckProviderFactory.getInstance()
)

Następne kroki

Po zainstalowaniu biblioteki Sprawdzanie aplikacji w Twojej aplikacji zacznij rozpowszechniać zaktualizowaną aplikację wśród użytkowników.

Zaktualizowana aplikacja kliencka zacznie wysyłać tokeny sprawdzania aplikacji wraz z każdym żądaniem wysyłanym do Firebase, ale produkty Firebase nie będą wymagać ważności tokenów, dopóki nie włączysz wymuszania w sekcji Sprawdzanie aplikacji w konsoli Firebase.

Monitoruj metryki i włącz egzekwowanie

Zanim jednak włączysz wymuszanie, upewnij się, że nie zakłóci to działania Twoich istniejących legalnych użytkowników. Z drugiej strony, jeśli zauważysz podejrzane wykorzystanie zasobów aplikacji, możesz chcieć wcześniej włączyć wymuszanie.

Aby pomóc w podjęciu tej decyzji, możesz przyjrzeć się wskaźnikom Kontroli aplikacji dla usług, z których korzystasz:

Włącz wymuszanie sprawdzania aplikacji

Gdy zrozumiesz, w jaki sposób Kontrola aplikacji wpłynie na użytkowników i będziesz gotowy do kontynuowania, możesz włączyć wymuszanie kontroli aplikacji:

Użyj sprawdzania aplikacji w środowiskach debugowania

Jeśli po zarejestrowaniu aplikacji do sprawdzania aplikacji chcesz uruchomić aplikację w środowisku, którego Sprawdzanie aplikacji normalnie nie klasyfikuje jako prawidłowe, takim jak emulator podczas tworzenia lub ze środowiska ciągłej integracji (CI), możesz utwórz kompilację debugowania swojej aplikacji, która używa dostawcy debugowania sprawdzania aplikacji zamiast rzeczywistego dostawcy poświadczania.

Zobacz Używanie sprawdzania aplikacji z dostawcą debugowania w systemie Android .