Z tej strony dowiesz się, jak włączyć Sprawdzanie aplikacji w aplikacji Unity przy użyciu niestandardowego dostawcy Sprawdzania aplikacji. Włączenie Sprawdzania aplikacji sprawia, że tylko Twoja aplikacja ma dostęp do zasobów Firebase projektu.
Jeśli chcesz używać Sprawdzania aplikacji z domyślnymi dostawcami, przeczytaj artykuł Włączanie Sprawdzania aplikacji u dostawców domyślnych w Unity.
Zanim zaczniesz
Dodaj Firebase do swojego projektu w Unity, jeśli jeszcze go nie masz.
Zaimplementuj niestandardową logikę dostawcy Sprawdzania aplikacji po stronie serwera
1. Dodawanie biblioteki Sprawdzania aplikacji do aplikacji
Dodaj bibliotekę Sprawdzanie aplikacji do swojego zbioru zależności zgodnie z instrukcjami konfiguracji Sprawdzania aplikacji.
2. Wdrażanie interfejsów Sprawdzania aplikacji
Najpierw musisz utworzyć klasy, które implementują interfejsy IAppCheckProvider
i IAppCheckProviderFactory
.
Klasa AppCheckProvider
musi mieć metodę GetTokenAsync()
, która gromadzi informacje wymagane przez niestandardowego dostawcę Sprawdzania aplikacji w celu potwierdzenia autentyczności i wysyła ją do usługi pozyskiwania tokenów w zamian za token Sprawdzania aplikacji. Pakiet SDK Sprawdzania aplikacji obsługuje zapisywanie tokenów w pamięci podręcznej, więc w implementacji GetTokenAsync()
zawsze należy uzyskać nowy token.
public class YourCustomAppCheckProvider : IAppCheckProvider {
public Task<AppCheckToken> GetTokenAsync() {
// Logic to exchange proof of authenticity for an App Check token and
// expiration time.
// ...
AppCheckToken appCheckToken = new AppCheckToken() {
Token = tokenFromAbove,
ExpireTime = DateTime.UtcNow.AddMinutes(60)
};
return Task<AppCheckToken>.FromResult(appCheckToken);
}
};
Zaimplementuj też klasę AppCheckProviderFactory
, która tworzy wystąpienia Twojej implementacji AppCheckProvider
:
public class YourCustomAppCheckProviderFactory : IAppCheckProviderFactory {
IAppCheckProvider CreateProvider(FirebaseApp app) {
// Create and return an AppCheckProvider object.
return new YourCustomAppCheckProvider(app);
}
}
3. Zainicjuj Sprawdzanie aplikacji
Dodaj do swojej aplikacji poniższy kod inicjowania, aby uruchamiała się przed użyciem innych pakietów SDK Firebase:
FirebaseAppCheck.SetAppCheckProviderFactory(
new YourCustomAppCheckProviderFactory());
Dalsze kroki
Gdy zainstalujesz w aplikacji bibliotekę Sprawdzanie 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 do Firebase, ale usługi Firebase nie będą wymagały ważności tokenów, dopóki nie włączysz wymuszania w sekcji Sprawdzanie aplikacji w konsoli Firebase.
Monitorowanie wskaźników i włączanie wymuszania
Zanim jednak włączysz egzekwowanie, upewnij się, że nie zakłóci to działania istniejących prawidłowych użytkowników. Jeśli natomiast zauważysz podejrzane wykorzystanie zasobów aplikacji, możesz szybciej włączyć egzekwowanie.
Aby ułatwić sobie podjęcie tej decyzji, możesz przejrzeć wskaźniki Sprawdzania aplikacji dotyczące używanych przez Ciebie usług:
- Monitorowanie wskaźników żądań Sprawdzania aplikacji dotyczących Bazy danych czasu rzeczywistego, Cloud Firestore, Cloud Storage i uwierzytelniania (w wersji beta).
- Monitorowanie wskaźników żądań Sprawdzania aplikacji w Cloud Functions
Włącz wymuszanie Sprawdzania aplikacji
Gdy zrozumiesz, jak Sprawdzanie aplikacji wpłynie na Twoich użytkowników, możesz włączyć wymuszanie Sprawdzania aplikacji:
- Włącz wymuszanie Sprawdzania aplikacji w przypadku Bazy danych czasu rzeczywistego, Cloud Firestore, Cloud Storage i uwierzytelniania (w wersji beta).
- Włącz wymuszanie Sprawdzania aplikacji w Cloud Functions.
Używanie Sprawdzania aplikacji w środowiskach debugowania
Jeśli po zarejestrowaniu aplikacji na potrzeby Sprawdzania aplikacji chcesz uruchamiać ją w środowisku, którego Sprawdzanie aplikacji zwykle nie klasyfikowałoby jako prawidłowe, np. w emulatorze podczas programowania lub w środowisku ciągłej integracji (CI), możesz utworzyć kompilację do debugowania aplikacji, która korzysta z dostawcy debugowania Sprawdzania aplikacji zamiast prawdziwego dostawcy atestu.
Zobacz artykuł Używanie Sprawdzania aplikacji z dostawcą debugowania w Unity.