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
Jeśli jeszcze tego nie zrobisz, dodaj Firebase do projektu Apple.
Utwórz klucz prywatny DeviceCheck w witrynie dla programistów Apple.
W konsoli Firebase otwórz Zabezpieczenia > Sprawdzanie aplikacji.
Na karcie Aplikacje zarejestruj aplikacje, aby używać App Check z dostawcą DeviceCheck. Musisz podać klucz prywatny utworzony w witrynie dla programistów Apple.
Zwykle musisz zarejestrować wszystkie aplikacje w projekcie, ponieważ po włączeniu egzekwowania 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 (TTL) tokenów wydawanych przez dostawcę.App Check Możesz ustawić czas życia na dowolną wartość od 30 minut do 7 dni. Pamiętaj o tych kompromisach:
- Bezpieczeństwo: krótszy czas życia zapewnia większe bezpieczeństwo, ponieważ zmniejsza okno, w którym atakujący może wykorzystać wyciekły lub przechwycony token.
- Wydajność: krótszy czas życia oznacza, ż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 życia może wpłynąć na wydajność aplikacji.
- Limit i koszt: krótszy czas życia i częsta ponowna atestacja szybciej wyczerpują limit, a w przypadku usług płatnych mogą generować wyższe koszty. Zobacz Limity.
Domyślny czas życia 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 życia.
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 Apple platforms (
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ć App Check tokeny 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 w sekcji App Check w konsoli Firebase.
Monitorowanie danych i włączanie egzekwowania
Zanim włączysz egzekwowanie, 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 wcześniej.
Aby ułatwić podjęcie decyzji, możesz sprawdzić dane App Check dotyczące używanych usług:
- Monitoruj dane żądań App Check w przypadku usług Firebase AI Logic, SQL Connect, Realtime Database, Cloud Firestore, Cloud Storage, Authentication, Google Identity for iOS, Maps JavaScript API i Places API (nowa wersja).
- Monitoruj dane żądań App Check w przypadku Cloud Functions.
Włączanie egzekwowania App Check
Gdy zrozumiesz, jak App Check wpłynie na użytkowników, i będziesz gotowy(-a) do dalszych działań, możesz włączyć egzekwowanie App Check:
- Włącz egzekwowanieApp Checkw przypadku usług Firebase AI Logic, SQL Connect, Realtime Database, Cloud Firestore, Cloud Storage, Authentication, Google Identity for iOS, Maps JavaScript API i Places API (nowa wersja).
- Włącz egzekwowanie w przypadku Cloud Functions.App Check
Używanie App Check w środowiskach debugowania
Jeśli po zarejestrowaniu aplikacji w App Check chcesz uruchomić swoją aplikację w środowisku, które App Check zwykle nie klasyfikuje jako prawidłowe, np. w symulatorze podczas programowania lub w środowisku ciągłej integracji (CI), możesz utworzyć kompilację debugowania aplikacji, która zamiast prawdziwego dostawcy atestacji używa dostawcy debugowania App Check.
Zobacz Używanie App Check z dostawcą debugowania na platformach Apple.