Co to jest identyfikator instancji?

Najważniejsze funkcje

Oprócz udostępniania unikalnych identyfikatorów do uwierzytelniania identyfikator instancji może generować tokeny zabezpieczeń do użycia w innych usługach. Inne funkcje:

Generowanie tokenów bezpieczeństwa

Identyfikator instancji udostępnia prosty interfejs API do generowania tokenów zabezpieczeń, które autoryzują dostęp aplikacji innych firm do zasobów zarządzanych po stronie serwera.

Weryfikowanie autentyczności aplikacji

Prześlij tokeny tożsamości instancji na serwer i użyj usługi tożsamości instancji, aby zweryfikować nazwę pakietu aplikacji i sprawdzić, czy ma on prawidłową sygnaturę. Weryfikowanie tokenów za pomocą usługi w chmurze Identyfikator instancji pomaga identyfikować znane aplikacje. Aby obniżyć koszty i zbędne komunikaty w obie strony, skonfiguruj serwer tak, aby przechowywał te tokeny, dzięki czemu sprawdzenie będzie potrzebne tylko raz. W przypadku problemów z bezpieczeństwem aplikacja może usunąć tokeny lub identyfikator instancji i wygenerować nowe. Ponadto serwer Identyfikatora instancji inicjuje odświeżanie tokena lub Identyfikatora instancji, jeśli wykryje błędy lub problemy z bezpieczeństwem.

Sprawdź, czy urządzenie z aplikacją jest aktywne

Serwer identyfikatorów instancji może podać, kiedy urządzenie z zainstalowaną aplikacją było ostatnio używane. Na tej podstawie możesz zdecydować, czy zachować dane z aplikacji, czy wysłać wiadomość push, aby ponownie zaangażować użytkowników.

Identyfikowanie i śledzenie aplikacji

Identyfikator instancji jest unikalny dla wszystkich instancji aplikacji na całym świecie, więc Twoja baza danych może go używać do jednoznacznej identyfikacji i śledzenia instancji aplikacji. Twój kod po stronie serwera może za pomocą usługi w chmurze Identyfikator instancji sprawdzić, czy identyfikator instancji jest prawdziwy i czy jest taki sam jak identyfikator pierwotnej aplikacji zarejestrowanej na serwerze. Ze względu na ochronę prywatności aplikacja może usunąć identyfikator instancji, aby nie był już powiązany z żadną historią w bazie danych. Gdy następnym razem aplikacja wywoła identyfikator instancji, otrzyma zupełnie nowy identyfikator instancji, który nie będzie miał związku z poprzednim.

Cykl życia identyfikatora instancji

  1. Usługa Identyfikator instancji wysyła InstanceID, gdy aplikacja łączy się z internetem. InstanceID jest obsługiwana przez parę kluczy publicznych/prywatnych, w której klucz prywatny jest przechowywany na urządzeniu lokalnym, a klucz publiczny jest zarejestrowany w usłudze Instance ID.
  2. W razie potrzeby aplikacja może poprosić o nowy InstanceID, używając metody getID(). Aplikacja może przechowywać je na serwerze, jeśli masz serwer, który obsługuje Twoją aplikację.
  3. Aplikacja może w miarę potrzeby prosić o tokeny usługę Instance ID, używając metody getToken(). Podobnie jak w przypadku InstanceID, aplikacja może też przechowywać tokeny na własnym serwerze. Wszystkie tokeny wydane Twojej aplikacji należą do InstanceID tej aplikacji.
  4. Tokeny są unikalne i chronione, ale aplikacja lub usługa Identyfikator instancji może potrzebować odświeżenia tokenów w przypadku problemu z bezpieczeństwem lub gdy użytkownik odinstaluje i ponownie zainstaluje aplikację podczas przywracania urządzenia. Aplikacja musi zaimplementować listenera, który będzie odpowiadać na żądania odświeżenia tokena z usługi Instance ID.

Wdrożenie po stronie klienta

Usługa Identyfikator instancji działa na urządzeniach z Androidem i iOS. W każdym z nich musisz uwzględnić odpowiednią bibliotekę w aplikacji klienta. Android wymaga usług Google Play. Jeśli chcesz generować tokeny, musisz mieć identyfikator projektu wygenerowany przez Google Developers Console.

Szczegółowe instrukcje znajdziesz w przewodnikach wdrożeniowych dotyczących AndroidiOS.