Z tej strony dowiesz się, jak włączyć App Check w aplikacji Apple za pomocą wbudowanego dostawcy DeviceCheck. Gdy włączysz App Check, będziesz mieć pewność , że tylko Twoja aplikacja może uzyskiwać dostęp do zasobów Firebase w Twoim projekcie. Zobacz omówienie tej funkcji.
Jeśli chcesz używać App Check z własnym dostawcą niestandardowym, przeczytaj artykuł Implementowanie niestandardowego dostawcy App Check.
1. Konfigurowanie projektu w Firebase
Dodaj Firebase do projektu Apple, jeśli jeszcze tego nie zrobiłeś.
W witrynie dla programistów Apple utwórz klucz prywatny DeviceCheck.
Zarejestruj aplikacje, aby używać App Check z dostawcą DeviceCheck w sekcji App Check w konsoli Firebase. Musisz podać klucz prywatny utworzony w poprzednim kroku.
Zwykle musisz zarejestrować wszystkie aplikacje w projekcie, ponieważ po włączeniu egzekwowania zasad w przypadku usługi Firebase tylko zarejestrowane aplikacje będą mogły uzyskiwać dostęp do zasobów backendu tej usługi.
Opcjonalnie: w ustawieniach rejestracji aplikacji ustaw niestandardowy czas życia danych (TTL) tokenów wydawanych przez dostawcę.App Check Możesz ustawić TTL na dowolną wartość od 30 minut do 7 dni. Pamiętaj, że zmiana tej wartości wiąże się z następującymi kompromisami:
- Bezpieczeństwo: krótsze czasy TTL zapewniają większe bezpieczeństwo, ponieważ zmniejszają okno, w którym wyciekły lub przechwycony token może zostać wykorzystany przez atakującego.
- Wydajność: krótsze czasy TTL oznaczają, że aplikacja będzie częściej przeprowadzać atestację. Ponieważ proces atestacji aplikacji za każdym razem dodaje opóźnienie do żądań sieciowych, krótki czas TTL może wpłynąć na wydajność aplikacji.
- Limit i koszt: krótsze czasy TTL i częste ponowne atestacje szybciej wyczerpują limit, a w przypadku usług płatnych mogą generować wyższe koszty. Zobacz Limity.
Domyślny czas TTL wynoszący 1 godzinę jest odpowiedni dla większości aplikacji. Pamiętaj, że biblioteka App Check odświeża tokeny mniej więcej w połowie czasu TTL.
2. Dodawanie biblioteki App Check do aplikacji
Do instalacji zależności Firebase i do zarządzania nimi możesz używać menedżera pakietów Swift.
Po otwarciu projektu aplikacji wybierz w Xcode opcję File > Add Packages (Plik > Dodaj pakiety), dodaj repozytorium pakietu SDK Firebase dla platform Apple (
https://github.com/firebase/firebase-ios-sdk) i wybierz bibliotekę FirebaseAppCheck.
Dalsze kroki
Gdy biblioteka App Check zostanie zainstalowana w aplikacji, zacznij rozpowszechniać zaktualizowaną aplikację wśród użytkowników.
Zaktualizowana aplikacja kliencka zacznie wysyłać tokeny App Check wraz z każdym żądaniem wysyłanym do Firebase, ale usługi Firebase nie będą wymagać, aby tokeny były prawidłowe, dopóki nie włączysz egzekwowania zasad w sekcji App Check w konsoli Firebase.
Monitorowanie danych i włączanie egzekwowania zasad
Zanim włączysz egzekwowanie zasad, upewnij się, że nie zakłóci to działania dotychczasowych użytkowników. Z drugiej strony, jeśli zauważysz podejrzane użycie zasobów aplikacji, możesz włączyć egzekwowanie zasad wcześniej.
Aby ułatwić podjęcie decyzji, możesz sprawdzić dane App Check dotyczące używanych usług:
- Monitoruj dane żądań w przypadku usług Firebase AI Logic, Data Connect, Realtime Database, Cloud Firestore, Cloud Storage, Authentication, Google Identity for iOS, Maps JavaScript API i Places API (nowa wersja).App Check
- Monitoruj dane żądań App Check w przypadku Cloud Functions.
Włączanie egzekwowania zasad App Check
Gdy zrozumiesz, jak App Check wpłynie na użytkowników, i będziesz gotowy(-a) do kontynuowania, możesz włączyć egzekwowanie zasad App Check:
- Włącz egzekwowanie zasad w przypadku Firebase AI Logic, Data Connect, Realtime Database, Cloud Firestore, Cloud Storage, Authentication, Google Identity for iOS, Maps JavaScript API i Places API (nowa wersja).App Check
- Włącz egzekwowanie zasad App Check w przypadku Cloud Functions.
Używanie App Check w środowiskach debugowania
Jeśli po zarejestrowaniu aplikacji w App Check chcesz uruchomić swoją aplikację w środowisku, które zwykle nie jest uznawane przez App Check za prawidłowe, np. w symulatorze podczas programowania lub w trybie ciągłej integracji (CI), możesz utworzyć kompilację do debugowania aplikacji, która będzie używać dostawcy debugowania App Check zamiast prawdziwego dostawcy atestacji.
Zobacz Używanie App Check z dostawcą debugowania na platformach Apple.