Przygotowanie tożsamości (lub tworzenie kont) to proces konfigurowania kont i nawiązywania połączeń między 3 systemami, a w niektórych przypadkach także między użytkownikami a ich urządzeniami.
W środowisku Android Enterprise informacje o koncie mogą być przechowywane w 3 różnych systemach:
- Katalog użytkowników organizacji jest ostatecznym źródłem informacji o użytkownikach.
- Ty (dostawca rozwiązania EMM) musisz utrzymywać co najmniej minimalny katalog użytkowników organizacji.
- Google przechowuje niektóre informacje o zarządzanych kontach Google Play i kontach Google, aby umożliwić zarządzanie aplikacjami w Google Play.
Zasób Users
reprezentuje konto powiązane z organizacją. Konto może być przypisane do konkretnego urządzenia lub do osoby, która ma wiele urządzeń (telefon komórkowy, tablet itp.) i korzysta z konta na wszystkich tych urządzeniach. Konto może zapewniać dostęp tylko do zarządzanego Sklepu Google Play lub do innych usług Google, w zależności od tego, jak skonfigurujesz firmę klienta:
Zarządzane konta Google Play to przejrzyste rozwiązanie, które umożliwia firmom automatyczne tworzenie kont użytkowników lub urządzeń za pomocą dostawcy rozwiązań do zarządzania mobilnością w firmie. Te konta zapewniają dostęp tylko do zarządzanego Sklepu Google Play.
Konta Google to istniejące konta zarządzane przez Google, które wymagają synchronizacji ze źródłami kont Google.
Tabela 1. Pola i metody interfejsu Users API
Konta zarządzanego Sklepu Google Play | Konta zarządzane przez Google | |
---|---|---|
Pole | ||
id | ||
rodzaj | ||
accountIdentifier | Unikalny identyfikator utworzony przez Ciebie i zmapowany na identyfikator (userId ) zwrócony przez Google Play. Nie używaj informacji umożliwiających identyfikację osoby. | Nie ustawiono. |
accountType | deviceAccount, userAccount | userAccount |
wyświetlanaNazwa | Nazwa wyświetlana w elementach interfejsu, np. w Google Play. Nie używaj informacji umożliwiających identyfikację osób. | Nie ustawiono. |
managementType | emmManaged | googleManaged, emmManaged |
primaryEmail | Nie ustawiono. | To pole jest kluczem podstawowym, za pomocą którego zarządzasz synchronizacją kont użytkowników w domenie zarządzanej przez Google z kontami użytkowników w Twoim systemie. |
Metody | ||
usuń | ||
generateAuthenticationToken | ||
generateToken | ||
get | ||
getAvailableProductSet | ||
Insert | ||
lista | ||
revokeToken | ||
setAvailableProductSet | ||
update |
Konta zarządzanego Sklepu Google Play
Istnieją 2 rodzaje zarządzanych kont Google Play:
- Konto użytkownika
- Zapewnia dostęp do zarządzanego Sklepu Google Play z jednego konta użytkownika na wszystkich jego urządzeniach. Musisz skonfigurować konta użytkowników, ponieważ nie mają oni danych logowania do dodawania zarządzanych kont Google Play.
- Aby utworzyć konto użytkownika, wywołaj funkcję
Users.insert
. Ustaw typ konta nauserType
i ustawaccountIdentifier
, który jednoznacznie identyfikuje użytkownika w ramach firmy. - Sprawdzona metoda: nie używaj tego samego konta na więcej niż 10 urządzeniach.
- Konto urządzenia
- Zapewnia dostęp do zarządzanego Sklepu Google Play z jednego urządzenia. Jeśli token uwierzytelniania został wydany dla konta urządzenia, nowe żądanie tokenu uwierzytelniania dla tego konta urządzenia spowoduje dezaktywację poprzedniego tokenu. Każde urządzenie z takim kontem musi mieć oddzielną licencję na aplikacje.
- Aby utworzyć konto urządzenia, wywołaj funkcję
Users.insert
i ustaw typ konta nadeviceType
.
Tworzysz i utrzymujesz mapowanie tożsamości użytkownika lub urządzenia na odpowiadające im konta zarządzanego Sklepu Google Play oraz zarządzasz tymi kontami przez cały ich cykl życia. Organizacja nie musi mieć bezpośredniej kontroli nad tymi zarządzanymi kontami Google Play, ponieważ służą one wyłącznie do zarządzania aplikacjami.
Wymagania dotyczące konsol i serwerów EMM
Zarządzane konta Google Play są tworzone na żądanie, programowo, za pomocą interfejsów EMM Google Play i interfejsów Android Framework w komponentach rozwiązania EMM (konsoli EMM, serwera EMM i DPC). Te komponenty współpracują ze sobą w czasie działania, aby utworzyć konto użytkownika i skonfigurować profil służbowy na urządzeniu docelowym.
Konsolę lub serwer EMM należy:
Udostępnij mechanizm tworzenia unikalnych anonimowych identyfikatorów kont (pole
accountIdentifier
), które będą używane w wywołaniu funkcjiUsers.insert
. Możesz na przykład użyć wewnętrznej wartości dla użytkownika („sanjeev237389”) lub zaszyfrowanego numeru tagu zasobu („asset#44448”). Unikaj używania informacji umożliwiających identyfikację osób w identyfikatorze konta.Zapisz mapowanie między parametrem
userId
(zwróconym z poziomu wywołaniainsert
) a wybranym parametremaccountIdentifier
.
Wymagania dotyczące kontrolera zasad dotyczących urządzeń znajdziesz w artykule Tworzenie kontrolera zasad dotyczących urządzeń.
Tworzenie konta użytkownika zarządzanego Sklepem Google Play
- Użytkownik loguje się na konto DPC, używając (zwykle) danych logowania firmowych.
- DPC prosi o szczegóły dotyczące użytkownika z serwera lub konsoli EMM.
Zakładając, że użytkownik jest nieznany Twojemu systemowi:
- Prześlij prośbę o nowe zarządzane konto Google Play, wywołując funkcję
Users.insert
z wartościami dla nowych parametrówaccountIdentifier
,displayName
iaccountType
.- Twój system musi utworzyć
accountIdentifier
. Identyfikator konta musi być unikalną wartością w Twoim systemie. Nie używaj danych osobowych w identyfikatorze konta. displayName
jest widoczny w przełączniku kont w Google Play i powinien mieć znaczenie dla użytkownika (ale nie może zawierać danych osobowych użytkownika). Nazwa może na przykład zawierać nazwę organizacji lub ogólną nazwę związaną z EMM.- Ustaw wartość
accountType
nauserAccount
lubdeviceAccount
.userAccount
może być używany na wielu urządzeniach, adeviceAccount
jest przypisany do jednego urządzenia. WartośćaccountType
może byćdeviceType
lubuserType
. - Ustaw wartość
managementType
naemmManaged
.
- Twój system musi utworzyć
- Google Play przetwarza żądanie, tworzy konto i zwraca
userId
. - Zapisz mapowanie między
accountIdentifier
auserId
w swojej bazie danych. - Zadzwoń do
Users.generateAuthenticationToken
z użyciemuserId
ienterpriseId
. Google Play zwraca token uwierzytelniający, który można użyć tylko raz. Należy go wykorzystać w ciągu kilku minut. - Przekaż bezpiecznie token uwierzytelniania do dostawcy usług danych osobowych.
- Prześlij prośbę o nowe zarządzane konto Google Play, wywołując funkcję
- DPC tworzy profil służbowy i dodaje konto do tego profilu lub urządzenia.
- Użytkownik może uzyskać dostęp do zarządzanego Google Play w profilu służbowym lub na urządzeniu.
Konta administratora
Gdy administrator tworzy grupę z kontami zarządzanego Sklepu Google Play, używane przez niego konto Google nie może być kontem G Suite. Konto, którego używają, staje się właścicielem organizacji, a właściciel może dodawać kolejnych właścicieli i administratorów w zarządzanej konsoli Google Play.
Zarówno Enterprises.get
, jak i Enterprises.completeSignup
zwracają listę adresów e-mail administratora powiązanych z grupą (tylko w przypadku grup z kontami zarządzanego Sklepu Google Play).
Zarządzanie cyklem życia konta
W przypadku wdrożenia kont zarządzanego Sklepu Google Play odpowiadasz za cykl życia kont użytkowników i urządzeń, co oznacza, że tworzysz, aktualizujesz i usuwasz te konta.
Konta są tworzone podczas obsługiwanej konfiguracji urządzenia, czyli procesu, który obejmuje aplikację DPC i konsolę EMM. Instrukcje znajdziesz w Metodzie dotyczącej grup kont zarządzanego Sklepu Google Play.
Aby zmienić informacje o koncie, wywołaj metodę Users.update.
Aby usunąć konto, wywołaj metodę Users.delete.
Administratorzy nie mogą usuwać poszczególnych kont, ale mogą usunąć grupę kont zarządzanego Sklepu Google Play. W efekcie urządzenia i konta użytkowników powiązane z firmą zostaną ostatecznie usunięte, zgodnie z opisem w artykule Wyrejestrowanie, ponowne zarejestrowanie i usuwanie.
Wygaśnięcie konta
Czasami konta lub ich tokeny wygasają. Może się tak zdarzyć z kilku powodów:
- Token uwierzytelniania, który został uzyskany w celu dodania konta do urządzenia, wygasł.
- konto lub organizację usunięto.
- W przypadku kont na urządzeniu konto zostało dodane do nowego urządzenia i w konsekwencji wyłączone na starym urządzeniu.
- uruchamiane są automatyczne kontrole nadużyć;
- Jeśli urządzenie jest offline przez ponad 270 dni, jego informacje mogą zostać usunięte w ramach procesu zbiorczego oczyszczania.
W większości przypadków (chyba że EMM celowo przenosi konto urządzenia na nowe urządzenie) zalecamy użycie interfejsu API EMM w Google Play, aby poprosić o nowy token od serwera EMM, sprawdzić stan konta i firmy oraz ewentualne błędy zwracane przez serwer, a następnie podjąć odpowiednie działania na urządzeniu. Możesz na przykład odnowić token lub, jeśli błędu nie da się naprawić, zresetować urządzenie lub anulować rejestrację.
Aby prawidłowo odnowić token, wykonaj te czynności:
- Zadzwoń pod numer
users.generateAuthenticationToken
, aby poprosić o nowy token uwierzytelniający dla konta. - Jeśli wywołanie się powiedzie, usuń dotychczasowe konto i dodaj nowe, korzystając z biblioteki obsługi DPC.
- Jeśli wywołanie nie powiedzie się, usuń konto z urządzenia i utwórz nowego użytkownika za pomocą
users.insert
, wygeneruj token uwierzytelniający i dodaj konto do urządzenia.
Usługi Google Play w wersji 9.0.00 powiadami DPC o wygaśnięciu konta za pomocą działania rozgłoszenia:
Gdy zarządzane konto Google Play zostanie unieważnione na urządzeniu, DPC otrzyma transmisję z taką akcją:
com.google.android.gms.auth.ACCOUNT_REAUTH_REQUIRED
Intencja transmisji zawiera dodatkowy element
Parcelable
o nazwieaccount
, który jest obiektem
nieważnego konta.Account
DPC sprawdza
Account#name
z serwerem EMM, aby zidentyfikować unieważnione konto.DPC prosi o nowe dane logowania lub nowe konto, korzystając z tego samego procesu, który został użyty do zainicjowania konfiguracji urządzenia.
Konta Google
W przypadku organizacji, które korzystają z kont Google, konta użytkowników w rozwiązaniu EMM odzwierciedlają istniejące konta użytkowników powiązane z innym usługą Google (np. G Suite). Te konta są googleManaged
(tabela 1), ponieważ usługi zaplecza Google są źródłem informacji o koncie i służą do jego tworzenia.
Jako administrator EMM możesz udostępnić w konsoli mechanizmy, które ułatwią tworzenie i bieżącą synchronizację kont użytkowników przechowywanych w Twoim systemie z kontami użytkowników w domenie Google. W tym celu możesz użyć narzędzi takich jak Google Cloud Directory Sync (GCDS) i interfejsu Directory API z pakietu Admin SDK Google. Model tożsamości w domenie zarządzanej przez Google wymaga, aby konto użytkownika istniało w kontekście rozwiązania (konsola EMM, serwer EMM, być może w danych) przed jego wdrożeniem na dowolnym urządzeniu użytkownika w kontekście profilu służbowego.
Podczas obsługi administracyjnej tożsamości domena zarządzana przez Google jest wypełniana kontami użytkowników. W niektórych przypadkach istniejące tożsamości użytkowników online (np. konta Microsoft Exchange) są synchronizowane z ich kontami Google.
Po początkowej synchronizacji, ale przed rozpowszechnieniem aplikacji na urządzenie użytkownika, użytkownik musi aktywować swoje konto Google zgodnie z instrukcjami w artykule Aktywowanie kont na urządzeniach. Ta aktywacja umożliwia urządzeniu dostęp do zarządzanego Sklepu Google Play.
Synchronizacja kont klientów
W przypadku wdrożenia kont Google organizacja może użyć narzędzia GCDS do synchronizowania danych w domenie G Suite z danymi w katalogu LDAP. Możesz też użyć GCDS, aby wykonać tę czynność w imieniu organizacji, jeśli ta przyzna Ci dostęp.
Narzędzie GCDS wywołuje interfejs Google Directory API i synchronizuje nazwy użytkowników, ale nie hasła.
Jeśli organizacja korzysta z Microsoft Active Directory i chce, aby hasła użytkowników G Suite były zsynchronizowane z hasłami w Active Directory, użytkownicy mogą używać narzędzia G Suite Password Sync (GSPS) z GCDS.
Instrukcje dla administratorów dotyczące GCDS znajdziesz w artykule Przygotowywanie domeny G Suite do synchronizacji.
Interfejs Google Directory API
W przypadku wdrożenia kont Google możesz użyć interfejsu Google Directory API do synchronizowania aktywnych katalogów lub haseł:
Korzystanie z interfejsu Directory API do synchronizacji tylko w obrębie katalogu Jeśli masz dostęp tylko do odczytu do zarządzanej domeny Google organizacji, możesz użyć interfejsu Google Directory API, aby uzyskać informacje o koncie Google, takie jak nazwy użytkowników (ale nie hasła) z Google. Ponieważ nie możesz zapisywać żadnych danych na kontach Google użytkowników, organizacja ponosi pełną odpowiedzialność za cykle życia kont.
Więcej informacji na ten temat znajdziesz w artykule Scenariusz 1 i Scenariusze uwierzytelniania SSO opartego na SAML.
Informacje o używaniu interfejsu Directory API w taki sposób znajdziesz w sekcji Pobieranie wszystkich użytkowników konta w dokumentacji interfejsu Directory API.
Korzystanie z Directory API do synchronizacji katalogu i opcjonalnie haseł. Jeśli masz uprawnienia do odczytu i edycji w zarządzanej domenie Google organizacji, możesz użyć interfejsu Google Directory API, aby uzyskać nazwy użytkowników, hasła i inne informacje o koncie Google. Możesz aktualizować te informacje i synchronizować je z własną bazą danych. Możesz też ponosić pełną lub częściową odpowiedzialność za cykl życia konta w zależności od rozwiązania, które oferujesz klientowi.
Scenariusz 2 opisuje tę sytuację bardziej szczegółowo.
Więcej informacji o używaniu interfejsu Directory API do zarządzania informacjami o kontach użytkowników znajdziesz w przewodniku dla deweloperów Directory API: User Accounts.
Scenariusze dotyczące kont Google
Poniżej opisaliśmy kilka typowych scenariuszy udostępniania tożsamości na koncie Google.
Scenariusz 1. Klient odpowiada za cykle życia konta
W tym scenariuszu klient tworzy i utrzymuje konta Google dla swoich użytkowników.
Uzyskaj informacje o koncie użytkownika z katalogu LDAP organizacji i powiązaj je z danymi konta Google, które otrzymasz od Google za pomocą interfejsu Directory API.
Organizacja ponosi pełną odpowiedzialność za cykle życia kont. Na przykład po utworzeniu nowego konta Google organizacja dodaje użytkownika do katalogu LDAP. Gdy następnym razem zsynchronizujesz bazę danych z katalogiem LDAP, baza danych otrzyma informacje o tym nowym użytkowniku.
W tym scenariuszu:
- Masz dostęp tylko do odczytu do kont Google.
- Twoja baza danych pobiera nazwy kont Google, ale nie pobiera nazw użytkowników ani haseł LDAP.
- Używasz interfejsu Google Directory API, aby uzyskać podstawowe informacje o kontach użytkowników klienta. (dostępne są tylko informacje, których nie można zapisać, zwracane przez prośbę
Users.get
). Używasz tych informacji do weryfikacji kont Google użytkowników, aby mogli uwierzytelniać się na swoich urządzeniach. - Klient używa narzędzia GCDS do synchronizacji jednokierunkowej w celu wypełniania kont Google użytkowników. (organizacja prawdopodobnie używa też GCDS do własnej synchronizacji po zakończeniu konfigurowania tożsamości). Opcjonalnie organizacja może też używać narzędzia GSPS do synchronizowania nie tylko nazw użytkowników, ale też haseł.
Scenariusz 2. EMM odpowiada za cykle życia konta
W tym scenariuszu proces tworzenia kont Google w imieniu klienta jest obsługiwany przez Ciebie, a Ty odpowiadasz za cykl życia kont użytkowników.
Jeśli na przykład informacje o użytkowniku w katalogu LDAP organizacji ulegną zmianie, to Ty odpowiadasz za zaktualizowanie jego konta Google. W tym scenariuszu nie jest używany GCDS.
W tym scenariuszu:
- Masz uprawnienia do odczytu i edycji kont Google.
- Twoja baza danych pobiera nazwy kont Google i nazwy użytkowników LDAP (oraz opcjonalnie hasze haseł).
- W imieniu klienta używasz interfejsu Google Directory API do odczytywania i zapisywania informacji o koncie użytkowników organizacji. (dostępne informacje to informacje, których nie można modyfikować, zwracane przez
Users.get
). Używasz tych informacji do weryfikacji kont Google użytkowników, aby mogli uwierzytelniać się na swoich urządzeniach. - Narzędzie GCDS nie jest używane.
Scenariusze uwierzytelniania SSO opartego na standardzie SAML
W przypadku wdrożenia Kont Google Ty lub Twój klient możecie używać języka Security Assertion Markup Language (SAML) z dostawcą tożsamości (IdP) do uwierzytelniania Kont Google powiązanych z każdym użytkownikiem. Używasz nazw kont Google jako potwierdzenia, że konta Google użytkowników istnieją. Jest to konieczne do uwierzytelnienia użytkowników podczas logowania się na urządzenia. Na przykład w sytuacji 2 można użyć protokołu SAML. Szczegółowe informacje o konfigurowaniu tej funkcji znajdziesz w artykule Konfigurowanie logowania jednokrotnego na kontach G Suite.
Aktywowanie kont na urządzeniach
Aby aplikacje mogły być rozpowszechniane na urządzeniu użytkownika za pomocą zarządzanego Sklepu Google Play, użytkownik musi zalogować się na urządzeniu podczas zarządzania urządzeniem:
- W konfiguracji urządzeń z zarządzanymi kontami Google usługa DPC instruuje użytkownika, aby zalogował się przy użyciu danych logowania zaakceptowanych przez konsolę EMM, zazwyczaj danych logowania do firmowego konta e-mail.
- W przypadku wdrożenia kont Google dostawca usług danych osobowych kieruje użytkownika do podania danych logowania do konta Google. Zwykle te dane logowania są takie same jak te, których użytkownicy używają do logowania się w domenie firmowej, gdy są zsynchronizowane z GCDS lub GSPS lub gdy organizacja używa dostawcy tożsamości do uwierzytelniania. Aktywuje to konto Google użytkownika, generuje unikalny identyfikator urządzenia i wiąże tożsamość konta Google użytkownika z identyfikatorem urządzenia.