Sediakan akun pengguna

Penyediaan identitas (atau penyediaan akun) adalah proses penyiapan akun dan pembentukan koneksi di antara ketiga sistem, dan dalam beberapa kasus, penyiapan koneksi antara pengguna dan perangkat mereka.

Di lingkungan perusahaan Android, sebanyak tiga sistem berbeda menyimpan informasi akun:

  • Direktori pengguna organisasi adalah sumber informasi tentang pengguna yang definitif.
  • Anda (penyedia solusi EMM) harus mempertahankan setidaknya direktori minimal pengguna organisasi.
  • Google menyimpan beberapa informasi tentang Akun Google Play terkelola dan Akun Google untuk menyediakan pengelolaan aplikasi melalui Google Play.

Resource Users mewakili akun yang terkait dengan perusahaan. Akun dapat khusus untuk perangkat, atau dapat dikaitkan dengan individu yang memiliki beberapa perangkat (ponsel, tablet, dan sebagainya) dan menggunakan akun di semua perangkat tersebut. Akun tersebut dapat memberikan akses hanya ke Google Play terkelola, atau ke layanan Google lainnya, bergantung pada cara Anda menyiapkan perusahaan pelanggan:

  • Akun Google Play terkelola menyediakan cara yang transparan bagi perusahaan untuk membuat akun pengguna atau perangkat secara otomatis melalui penyedia solusi pengelolaan mobilitas perusahaan (EMM) mereka. Akun ini hanya memberikan akses ke Google Play terkelola.

  • Akun Google adalah akun yang sudah ada dan dikelola oleh Google, serta memerlukan sinkronisasi ke sumber Akun Google.

Tabel 1: Kolom dan metode Users API

 Akun Google Play TerkelolaAkun terkelola Google
Kolom
id
jenis
accountIdentifierID unik yang Anda buat dan petakan ke ID (userId) yang ditampilkan dari Google Play. Jangan gunakan informasi identitas pribadi (PII).Belum ditetapkan.
accountTypedeviceAccount, userAccountuserAccount
Nama TampilanNama yang Anda tampilkan di item UI, seperti dalam Google Play. Jangan gunakan informasi identitas pribadi.Belum ditetapkan.
managementTypeemmManagedgoogleManaged, emmManaged
primaryEmailBelum ditetapkan.Kolom ini adalah kunci utama yang digunakan untuk mengelola sinkronisasi dari akun domain yang dikelola Google ke akun pengguna di sistem Anda.
Metode
hapus
generateAuthenticationToken
generateToken
get
getAvailableProductSet
insert
list
revokeToken
setAvailableProductSet
update

Akun Google Play Terkelola

Ada dua jenis Akun Google Play terkelola:

Akun pengguna
Memberikan akses satu pengguna ke Google Play terkelola dari semua perangkatnya. Anda harus menyediakan akun pengguna untuk pengguna—mereka tidak memiliki kredensial untuk menambahkan Akun Google Play terkelola sendiri.
Untuk membuat akun pengguna, panggil Users.insert. Tetapkan jenis akun ke userType, dan tetapkan accountIdentifier, yang mereferensikan pengguna secara unik dalam perusahaan.
Praktik terbaik: Jangan gunakan akun yang sama di lebih dari 10 perangkat.
Akun perangkat
Memberikan akses ke Google Play terkelola dari satu perangkat. Jika token autentikasi telah diterbitkan untuk akun perangkat, permintaan baru untuk token autentikasi untuk akun perangkat tersebut akan menonaktifkan token sebelumnya. Setiap perangkat harus memiliki lisensi terpisahnya sendiri untuk aplikasi.
Untuk membuat akun perangkat, panggil Users.insert dan tetapkan jenis akun ke deviceType.

Anda membuat dan mengelola pemetaan antara identitas pengguna atau perangkat dan Akun Google Play terkelola yang sesuai, serta mengelola akun tersebut selama siklus prosesnya. Organisasi tidak memerlukan kontrol langsung atas Akun Google Play terkelola ini, karena akun tersebut hanya ada untuk pengelolaan aplikasi.

Persyaratan untuk konsol dan server EMM

Akun Google Play terkelola dibuat secara on-demand, secara terprogram, menggunakan Google Play EMM API dan Android framework API di seluruh komponen solusi EMM Anda (konsol EMM, server EMM, dan DPC). Komponen ini berinteraksi saat runtime untuk membuat akun pengguna dan menyediakan profil kerja di perangkat target .

Server atau konsol EMM Anda harus:

  • Berikan mekanisme untuk membuat ID akun anonim unik (kolom accountIdentifier) yang akan digunakan dalam panggilan ke Users.insert. Misalnya, Anda dapat menggunakan beberapa nilai internal untuk pengguna ("sanjeev237389"), atau nomor tag aset yang tidak jelas ("asset#44448"). Hindari penggunaan informasi identitas pribadi (PII) untuk ID akun.

  • Simpan pemetaan antara userId (ditampilkan dari panggilan insert) dan accountIdentifier yang Anda pilih.

Untuk mengetahui persyaratan DPC, lihat Mem-build pengontrol kebijakan perangkat.

Membuat akun pengguna Google Play terkelola

  1. Pengguna login ke DPC Anda menggunakan (biasanya) kredensial perusahaan.
  2. DPC meminta detail tentang pengguna dari server atau konsol EMM. Dengan asumsi pengguna tidak dikenal oleh sistem Anda:
    1. Kirim permintaan untuk Akun Google Play terkelola baru dengan memanggil Users.insert dengan nilai untuk accountIdentifier, displayName, dan accountType baru.
      • Sistem Anda harus membuat accountIdentifier. ID akun harus berupa nilai unik di seluruh sistem Anda. Jangan gunakan PII untuk ID akun.
      • displayName ditampilkan di pengalih akun Google Play Store dan harus memiliki arti bagi pengguna (tetapi bukan PII tentang pengguna). Misalnya, nama dapat mencakup nama organisasi atau nama generik yang terkait dengan EMM.
      • Tetapkan accountType ke userAccount atau deviceAccount. userAccount dapat digunakan di beberapa perangkat, sedangkan deviceAccount khusus untuk satu perangkat. accountType yang ditentukan dapat berupa deviceType atau userType.
      • Tetapkan managementType ke emmManaged.
    2. Google Play memproses permintaan, membuat akun, dan menampilkan userId.
    3. Simpan pemetaan antara accountIdentifier dan userId di datastore Anda.
    4. Panggil Users.generateAuthenticationToken dengan userId dan enterpriseId. Google Play menampilkan token autentikasi yang dapat digunakan sekali, dan harus digunakan dalam beberapa menit.
    5. Teruskan token autentikasi dengan aman ke DPC Anda.
  3. DPC menyediakan profil kerja dan menambahkan akun ke profil kerja atau perangkat.
  4. Pengguna dapat mengakses Google Play terkelola dalam profil kerja atau perangkat.

Akun admin

Saat admin membuat perusahaan dengan Akun Google Play terkelola, Akun Google yang mereka gunakan tidak boleh berupa akun G Suite. Akun yang mereka gunakan menjadi pemilik untuk perusahaan, dan pemilik dapat menambahkan lebih banyak pemilik dan admin di konsol Google Play terkelola.

Enterprises.get dan Enterprises.completeSignup menampilkan daftar alamat email admin yang dikaitkan dengan perusahaan (khusus perusahaan dengan Akun Google Play terkelola).

Mengelola siklus proses akun

Dalam deployment Akun Google Play terkelola, Anda bertanggung jawab atas siklus proses akun pengguna dan perangkat, yang berarti Anda membuat, memperbarui, dan menghapus akun ini.

Anda membuat akun selama penyediaan perangkat, proses yang melibatkan aplikasi DPC dan konsol EMM Anda. Untuk mengetahui petunjuknya, lihat metode Akun Google Play terkelola.

Untuk mengubah informasi akun, panggil Users.update.

Untuk menghapus akun, panggil Users.delete.

Admin tidak dapat menghapus akun perorangan, tetapi mereka dapat menghapus perusahaan dengan Akun Google Play terkelola. Jika mereka melakukannya, akun perangkat dan pengguna yang terkait dengan perusahaan pada akhirnya akan dihapus, seperti yang dijelaskan dalam Membatalkan pendaftaran, mendaftarkan ulang, menghapus.

Masa berlaku akun

Terkadang akun atau tokennya akan berakhir masa berlakunya, yang dapat terjadi karena sejumlah alasan:

  • Token autentikasi yang diperoleh untuk menambahkan akun ke perangkat telah berakhir masa berlakunya.
  • Akun atau perusahaan telah dihapus.
  • Untuk akun perangkat, akun telah ditambahkan ke perangkat baru sehingga dinonaktifkan di perangkat lama.
  • Pemeriksaan penyalahgunaan otomatis dipicu.
  • Jika perangkat offline selama lebih dari 270 hari, informasinya dapat dihapus karena proses pembersihan batch.

Dalam sebagian besar kasus (kecuali jika EMM sengaja memindahkan akun perangkat ke perangkat baru), praktik terbaiknya adalah menggunakan Play EMM API untuk meminta token baru dari server EMM, catat status akun dan perusahaan serta error yang ditampilkan, lalu lakukan tindakan yang sesuai di perangkat. Misalnya, perbarui token, atau jika error tidak dapat dipulihkan, reset atau batalkan pendaftaran perangkat.

Untuk memperpanjang token dengan benar, Anda harus:

  1. Panggilusers.generateAuthenticationToken untuk meminta token autentikasi baru untuk akun.
  2. Jika panggilan berhasil, hapus akun yang ada dan tambahkan akun baru menggunakan library dukungan DPC.
  3. Jika panggilan tidak berhasil, hapus akun dari perangkat dan buat pengguna baru menggunakan users.insert, buat token autentikasi, lalu tambahkan akun ke perangkat.

Layanan Google Play versi 9.0.00 akan memberi tahu DPC bahwa masa berlaku akun telah berakhir menggunakan tindakan siaran:

  1. Saat Akun Google Play terkelola tidak valid di perangkat, DPC akan menerima siaran dengan tindakan berikut:

    com.google.android.gms.auth.ACCOUNT_REAUTH_REQUIRED

    Intent siaran berisi tambahan Parcelable dengan nama account, yang adalah objek Account dari akun yang tidak valid.

  2. DPC memeriksa Account#name dengan server EMM untuk mengidentifikasi akun yang tidak valid.

  3. DPC meminta kredensial baru atau akun baru, dengan mengikuti alur yang sama dengan yang digunakan untuk menyediakan perangkat pada awalnya.


Akun Google

Untuk organisasi yang menggunakan Akun Google, akun pengguna dalam solusi EMM mencerminkan akun pengguna yang ada dan terkait dengan layanan Google lainnya (misalnya, G Suite). Akun ini adalah googleManaged (Tabel 1) karena layanan backend Google adalah sumber pembuatan dan informasi tentang akun.

Sebagai EMM, Anda dapat menyediakan mekanisme di konsol untuk memfasilitasi pembuatan dan sinkronisasi berkelanjutan akun pengguna yang disimpan di sistem Anda dengan sumber akun domain Google mereka menggunakan alat seperti Google Cloud Directory Sync (GCDS) dan Google Admin SDK Directory API. untuk mengetahui ringkasan berbagai pendekatan. Model identitas domain yang dikelola Google memerlukan akun pengguna yang ada dalam konteks solusi Anda (konsol EMM, server EMM, mungkin di datastore) sebelum dapat disediakan di perangkat pengguna dalam konteks profil kerja.

Selama penyediaan identitas, domain yang dikelola Google milik organisasi akan diisi dengan akun pengguna. Dalam beberapa kasus, identitas online pengguna yang sudah ada (misalnya, akun Microsoft Exchange) disinkronkan dengan Akun Google mereka.

Setelah sinkronisasi awal, tetapi sebelum aplikasi didistribusikan ke perangkat pengguna, pengguna harus mengaktifkan Akun Google mereka, seperti yang dijelaskan dalam Mengaktifkan akun di perangkat. Aktivasi ini memungkinkan perangkat mengakses Google Play terkelola.

Menyinkronkan akun pelanggan

Dalam deployment Akun Google, organisasi dapat menggunakan alat GCDS untuk menyinkronkan data di domain G Suite dengan data di direktori LDAP. Atau, Anda dapat menggunakan GCDS untuk melakukannya atas nama organisasi, jika organisasi memberi Anda akses.

Alat GCDS memanggil Google Directory API dan menyinkronkan nama pengguna, tetapi tidak sandi.

Jika organisasi menggunakan Microsoft Active Directory dan ingin terus menyinkronkan sandi G Suite pengguna dengan sandi Active Directory mereka, maka organisasi—atau Anda—dapat menggunakan alat G Suite Password Sync (GSPS) dengan GCDS.

Untuk petunjuk GCDS bagi admin, lihat Menyiapkan domain G Suite Anda untuk sinkronisasi.

Google Directory API

Dalam deployment Akun Google, Anda dapat menggunakan Google Directory API untuk menyinkronkan direktori aktif, sandi, atau keduanya:

  • Menggunakan Directory API untuk sinkronisasi khusus direktori. Jika memiliki akses hanya baca ke Managed Google Domains organisasi, Anda dapat menggunakan Google Directory API untuk mendapatkan informasi Akun Google, seperti nama pengguna (tetapi bukan sandi) dari Google. Karena Anda tidak dapat menulis data apa pun ke Akun Google pengguna, organisasi sepenuhnya bertanggung jawab atas siklus proses akun.

    Skenario 1 dan skenario autentikasi SSO berbasis SAML menjelaskan situasi ini secara lebih lengkap.

    Untuk informasi tentang cara menggunakan Directory API dengan cara ini, lihat Mengambil semua pengguna akun dalam dokumentasi Directory API.

  • Menggunakan Directory API untuk direktori dan sinkronisasi sandi opsional. Jika Anda memiliki akses baca-tulis ke Managed Google Domains organisasi, Anda dapat menggunakan Google Directory API untuk mendapatkan nama pengguna, sandi, dan informasi Akun Google lainnya. Anda dapat memperbarui informasi ini dan menyinkronkannya dengan database Anda sendiri, dan Anda mungkin memiliki tanggung jawab penuh atau sebagian atas siklus proses akun, bergantung pada solusi yang Anda tawarkan kepada pelanggan.

    Skenario 2 menjelaskan situasi ini secara lebih lengkap.

    Untuk mengetahui informasi selengkapnya tentang cara menggunakan Directory API untuk mengelola informasi akun pengguna, lihat panduan developer Directory API: User Accounts.

Skenario Akun Google

Beberapa skenario penyediaan identitas Akun Google standar dijelaskan di bawah.

Skenario 1: Pelanggan bertanggung jawab atas siklus proses akun

Menggunakan Directory API (dengan akses hanya baca) dan GCDS

Dalam skenario ini, pelanggan Anda membuat dan mengelola Akun Google untuk penggunanya.

Anda mendapatkan informasi akun pengguna dari direktori LDAP organisasi, dan Anda mengaitkan informasi ini dengan data Akun Google yang Anda dapatkan dari Google melalui Directory API Google.

Organisasi bertanggung jawab penuh atas siklus proses akun. Misalnya, saat Akun Google baru dibuat, organisasi akan menambahkan pengguna ke direktori LDAP mereka. Saat Anda menyinkronkan database ke direktori LDAP lagi, database Anda akan menerima informasi tentang pengguna baru ini.

Dalam skenario ini:

  • Anda hanya memiliki akses hanya baca ke Akun Google.
  • Database Anda memperoleh nama Akun Google, tetapi tidak memiliki nama pengguna atau sandi LDAP.
  • Anda menggunakan Google Directory API untuk mendapatkan informasi akun dasar bagi pengguna pelanggan Anda. (Informasi yang tersedia untuk Anda adalah informasi yang tidak dapat ditulis yang ditampilkan oleh permintaan Users.get). Anda menggunakan informasi ini untuk memverifikasi bahwa Akun Google pengguna ada sehingga pengguna dapat melakukan autentikasi ke perangkat mereka.
  • Pelanggan Anda menggunakan alat GCDS untuk melakukan sinkronisasi satu arah guna mengisi Akun Google pengguna. (Organisasi mungkin juga menggunakan GCDS untuk sinkronisasi berkelanjutannya sendiri setelah penyediaan identitas selesai.) Secara opsional, organisasi juga dapat menggunakan alat GSPS untuk menyinkronkan tidak hanya nama pengguna, tetapi juga sandi.

Skenario 2: EMM bertanggung jawab atas siklus proses akun

Menggunakan Directory API dengan akses baca-tulis

Dalam skenario ini, Anda menangani proses pembuatan Akun Google atas nama pelanggan, dan Anda bertanggung jawab atas siklus proses akun pengguna.

Misalnya, saat informasi pengguna berubah di direktori LDAP organisasi, Anda bertanggung jawab untuk memperbarui Akun Google pengguna. GCDS tidak digunakan dalam skenario ini.

Dalam skenario ini:

  • Anda memiliki akses baca-tulis ke Akun Google.
  • Database Anda memperoleh nama Akun Google dan nama pengguna LDAP (dan secara opsional, hash sandi).
  • Anda menggunakan Google Directory API atas nama pelanggan untuk membaca dan menulis informasi akun bagi pengguna organisasi. (Informasi yang tersedia untuk Anda adalah informasi yang tidak dapat ditulis yang ditampilkan oleh permintaan Users.get). Anda menggunakan informasi ini untuk memverifikasi bahwa Akun Google pengguna ada sehingga pengguna dapat melakukan autentikasi ke perangkat mereka.
  • Alat GCDS tidak digunakan.

Skenario autentikasi SSO berbasis SAML

Dalam deployment Akun Google, Anda atau pelanggan dapat menggunakan Security Assertion Markup Language (SAML) dengan penyedia identitas (IdP) untuk mengautentikasi Akun Google yang terkait dengan setiap pengguna. Anda menggunakan nama Akun Google sebagai verifikasi bahwa Akun Google pengguna ada, yang diperlukan untuk autentikasi pengguna saat pengguna login ke perangkat mereka. Misalnya, SAML dapat digunakan dalam Skenario 2. Untuk mengetahui detail tentang cara menyiapkannya, lihat Menyiapkan Single Sign-On (SSO) untuk akun G Suite.

Mengaktifkan akun di perangkat

Agar aplikasi didistribusikan ke perangkat pengguna melalui Google Play terkelola, pengguna harus login ke perangkat selama penyediaan perangkat:

  • Dalam penyediaan perangkat Akun Google Play terkelola, DPC Anda akan memandu pengguna untuk login menggunakan kredensial yang diterima oleh konsol EMM Anda, biasanya kredensial email perusahaan.
  • Dalam deployment Akun Google, DPC Anda akan memandu pengguna untuk memasukkan kredensial login Akun Google mereka. Biasanya, kredensial ini cocok dengan kredensial yang digunakan pengguna untuk login ke domain perusahaan mereka saat disinkronkan dengan GCDS atau GSPS, atau saat organisasi menggunakan IdP untuk autentikasi. Tindakan ini akan mengaktifkan Akun Google pengguna, membuat ID perangkat unik, dan mengikat identitas Akun Google pengguna dan ID perangkat perangkat mereka.