Membuat binding perusahaan

Untuk mendaftarkan organisasi baru melalui konsol EMM, Anda perlu membuat binding perusahaan. Resource Enterprises mewakili binding antara EMM dan organisasi. Anda menggunakan instancenya untuk memanggil operasi atas nama organisasi.

Play EMM API menyediakan tiga cara untuk membuat instance binding perusahaan:

  • Pendaftaran domain Google terkelola—Metode ini dapat digunakan sebagai pengganti kedua metode lainnya. Organisasi dengan organisasi dan domain Google terkelola yang sudah ada dan baru bekerja sama dengan Google akan menggunakan UI pendaftaran yang sama. Perjalanan yang mereka lakukan melalui UI akan bervariasi sesuai dengan situasi dan kebutuhan mereka. Organisasi tidak perlu memperoleh token EMM terlebih dahulu.

  • Pendaftaran Akun Google Play Terkelola—Sebuah organisasi ingin menggunakan Akun Google Play terkelola. Anda dapat mengintegrasikan UI pendaftaran Android Google dengan konsol EMM dan memberi organisasi cara cepat untuk membuat instance binding perusahaan yang mengikatnya ke EMM. Tindakan ini akan mengaktifkan Akun Google Play terkelola untuk pengguna dan perangkat. Pendekatan ini terkadang disebut sebagai yang dimulai oleh EMM dalam dokumentasi API. Metode ini tidak digunakan lagi dan digantikan dengan metode pendaftaran domain Google terkelola sebelumnya.

  • Pendaftaran domain Google terkelola—Organisasi memiliki domain Google terkelola yang sudah ada. Admin IT menyelesaikan beberapa tugas manual, seperti memverifikasi kepemilikan domain dengan Google, mendapatkan token EMM, dan membuat akun layanan perusahaan. Pendekatan ini terkadang disebut sebagai yang dimulai oleh Google dalam dokumentasi API.

Anda dapat mendukung salah satu pendekatan tersebut di konsol EMM menggunakan resource Enterprises. Tabel 1 menunjukkan kolom dan operasi yang relevan dari resource ini untuk mengikat organisasi ke EMM.

Tabel 1: Enterprises API dan proses binding alternatif

 Akun Google Play perusahaan terkelolaDomain Google terkelola Deskripsi
Kolom
id ID unik untuk organisasi, yang ditampilkan dari panggilan registered dan completeSignup.
kind Mengidentifikasi jenis resource yang menggunakan nilai string tetap, androidenterprise#enterprisejsmith.
name Organisasi yang terkait dengan objek enterprise.
primaryDomainTidak ditetapkan Karena akun Google Play terkelola perusahaan tidak terikat dengan model domain Google, kolom ini hanya relevan untuk domain Google terkelola.
administrator[]Tidak ditetapkanAdmin IT yang mendaftar untuk Android menggunakan proses pendaftaran yang dimulai dengan EMM akan menjadi administrator (pemilik) binding perusahaan. Dengan konsol Google Play terkelola, admin IT dapat mengundang pengguna lain di organisasi untuk berpartisipasi dalam tugas administrasi. Lihat Pusat Bantuan Google Play Terkelola.
administrator[].email Tidak ditetapkan
Metode
completeSignup Dengan mempertimbangkan completionToken dan enterpriseToken, menampilkan resource Enterprise dalam isi respons.
generateSignupUrl Dengan mempertimbangkan callbackUrl, menampilkan URL dan completionToken.
daftar Mendaftarkan pemanggil dengan EMM yang tokennya dikirim dengan permintaan.
getServiceAccount Menampilkan akun layanan dan kredensial.
setAccount Menetapkan akun yang akan digunakan untuk mengautentikasi ke API sebagai perusahaan.
batalkan pendaftaran EMM dapat memutuskan binding ke salah satu jenis perusahaan menggunakan pembatalan pendaftaran. Harus dipanggil menggunakan kredensial EMM untuk MSA, bukan kredensial ESA.

Pendaftaran Akun Google Play Terkelola

Metode pendaftaran ini tidak digunakan lagi. Gunakan metode pendaftaran domain Google terkelola.

Pendaftaran domain Google terkelola

Anda dapat mengintegrasikan proses pendaftaran di konsol EMM:

Pendaftaran admin Akun Google Play Terkelola
Gambar 1. Alur kerja pendaftaran domain Google terkelola

Seorang admin IT memulai proses pembuatan perusahaan. Untuk melakukannya, admin IT:

  1. Login ke konsol EMM.
  2. Mengklik atau memilih Configure Android (misalnya) dan akan diarahkan ke UI pendaftaran yang dihosting oleh Google.
  3. Memberikan detail tentang perusahaan di UI pendaftaran.
  4. Dialihkan ke konsol EMM Anda.

Alamat email admin IT sekarang ditautkan ke Akun Google yang merupakan akun admin untuk domain Google terkelola.

Praktik terbaik: Ikuti panduan keamanan Google untuk membantu menjaga keamanan akun admin.

Prasyarat

Untuk admin IT

  • Akses ke konsol EMM dan izin yang diperlukan untuk membuat pilihan yang sesuai di konsol (Kelola Android misalnya, sebagai pilihan menu).

  • Alamat email kantor. Ini harus menjadi bagian dari domain yang dimiliki oleh organisasi, bukan domain bersama seperti Gmail.com

Untuk konsol EMM

Untuk menerapkan alur pendaftaran domain Google terkelola, konsol EMM harus dapat:

  • Gunakan kredensial MSA saat memanggil panggilan di API EMM Play. MSA Anda digunakan untuk menjalankan banyak operasi atas nama admin IT hingga akun layanan perusahaan (ESA) organisasi ditetapkan.

  • Tangani pengalihan melalui URL aman ke situs eksternal yang disediakan Google untuk memulai alur pendaftaran dan menyelesaikan proses pendaftaran.

  • Dapat dikonfigurasi dengan kredensial ESA setelah pendaftaran. Karena konsol EMM Anda dapat digunakan untuk membuat banyak perusahaan di situs organisasi tertentu, Anda memerlukan cara untuk mengaitkan setiap enterpriseId dengan akun dan kredensialnya sendiri. Pertimbangkan untuk membuat akun layanan untuk organisasi dengan memanggil Enterprises.getServiceAccount dan menangani pengelolaan kunci menggunakan Serviceaccountkeys API. Lihat Membuat akun layanan perusahaan secara terprogram untuk mengetahui detail selengkapnya.

Proses pendaftaran Android mengharuskan Anda menyediakan layanan (https) yang aman untuk penggunaan konsol pada runtime. URL ke layanan aman ini dapat berupa URL lokal dan dapat menyertakan informasi identifikasi unik atau sesi lainnya, asalkan URL tersebut diformat dengan baik sehingga sistem dapat mengurainya. Contoh:

https://localhost:8080/enrollmentcomplete?session=12345

Proses pendaftaran

Proses pendaftaran dirancang untuk memakan waktu kurang dari 5 menit. Langkah-langkah di bawah ini mengasumsikan bahwa server yang menghosting callbackUrl sudah aktif dan berjalan. Langkah-langkah ini juga mengasumsikan bahwa konsol Anda menyertakan komponen UI, seperti pemilihan menu dengan Manage Android sebagai opsi, yang memulai proses pendaftaran saat admin IT terautentikasi memilih opsi tersebut.

Proses 12 langkah untuk mendaftarkan perusahaan Akun Google Play
terkelola
Gambar 2. Proses 12 langkah untuk membuat binding ke domain Google terkelola
  1. Admin IT memulai permintaan pendaftaran di konsol EMM Anda.

  2. Panggil Enterprises.generateSignupUrl dengan callbackURL sebagai satu-satunya parameter. Contoh:

    https://localhost:8080/enrollcomplete?session=12345

  3. Respons akan berisi URL pendaftaran (berlaku selama 30 menit) dan token penyelesaian. Ekstrak dan simpan token penyelesaian.

    Praktik terbaik: Kaitkan token penyelesaian dengan admin IT yang memulai pendaftaran.

  4. Ekstrak url dari respons generateSignupURL.

  5. Alihkan ke URL yang diekstrak pada langkah 4.

  6. Admin IT mengikuti alur penyiapan di UI pendaftaran untuk membuat binding perusahaan:

    1. Admin IT memasukkan detail tentang diri mereka dan organisasinya, serta menetapkan sandi jika belum memiliki Akun Google.

    2. Admin IT akan melihat nama EMM, dan mengonfirmasi bahwa organisasi akan terikat dengan EMM ini.

    3. Admin IT menyetujui persyaratan layanan Google.

  7. UI pendaftaran menghasilkan URL callback berdasarkan URL yang ditetapkan di langkah 2.

  8. UI pendaftaran mengalihkan admin IT ke URL callback. Ekstrak dan simpan token perusahaan ke URL. Contoh:

    https://localhost:8080/enrollcomplete?session=12345&enterpriseToken=5h3jCC903lop1

  9. Panggil Enterprises.completeSignup, dengan meneruskan completionToken (langkah 3) dan enterpriseToken (langkah 8).

  10. Panggilan akan menampilkan instance Enterprises dalam isi respons. Simpan id, name, dan email administrator (jika ada) untuk digunakan di lain waktu.

  11. Buat akun layanan perusahaan (ESA). Kredensial ESA berbentuk alamat email dan kunci pribadi. Ada dua cara untuk membuat ESA:

    • Praktik terbaik: Buat ESA secara terprogram, menggunakan Play EMM API.
    • Menampilkan halaman yang menginstruksikan admin IT untuk membuat ESA di Konsol API Google. Lihat Membuat Akun Layanan untuk informasi selengkapnya (minta administrator untuk memilih project > Editor sebagai peran mereka dan centang kotak download kunci pribadi). Setelah admin IT membuat ESA, konfigurasikan konsol Anda dengan kredensial kunci pribadi ESA
  12. Dengan menggunakan kredensial MSA Anda, panggil setAccount untuk menetapkan ESA untuk organisasi ini.

Proses pendaftaran selesai

  • Domain Google terkelola yang baru terikat dengan EMM Anda.
  • Akun Google admin IT dikonfigurasi sebagai admin domain dan dapat mengakses https://play.google.com/work untuk mengelola aplikasi organisasi.
  • Konsol EMM dapat menggunakan ESA untuk mengelola data organisasi melalui Google Play EMM API.

Membuat ESA secara terprogram

Guna menyederhanakan pengelolaan kunci untuk ESA, gunakan EMM API Google Play untuk membuat akun layanan untuk organisasi, bukan Konsol Google Cloud. Akun layanan yang dibuat melalui Play EMM API:

  • Tidak terlihat di project Konsol Cloud milik Anda atau organisasi. Project tersebut harus dikelola secara terprogram.
  • Akan dihapus jika Anda membatalkan pendaftaran organisasi.

Untuk membuat akun layanan secara terprogram:

  1. Panggil Enterprises.getServiceAccount dengan enterpriseId (lihat langkah 10 dalam Proses pendaftaran) dan tentukan jenis kunci (keyType) yang Anda inginkan (googleCredentials, pkcs12). Sistem menampilkan nama akun layanan dan kunci pribadi untuk akun layanan (dalam format yang sama yang ditampilkan oleh Konsol API Google).

  2. Panggil Enterprises.setAccount, lalu tetapkan akun layanan untuk organisasi.

Praktik terbaik: Mendukung admin IT untuk mengubah kredensial ESA. Untuk melakukannya di konsol EMM, gunakan ESA yang ada untuk memanggil setAccount.

Kelola kunci akun layanan

Akun layanan yang ditampilkan dari Enterprises.getServiceAccount dibuat secara transparan oleh Google. Sebagai EMM, Anda tidak memiliki akses ke akun ini. Namun, Anda dapat mengintegrasikan Serviceaccountkeys API ke dalam konsol agar organisasi dapat mengelola kunci dan ESA yang dibuat secara terprogram.

Serviceaccountkeys API memungkinkan organisasi menyisipkan, menghapus, dan mencantumkan kredensial aktif untuk akun layanannya. API ini harus dipanggil saat diizinkan sebagai ESA yang telah ditetapkan untuk organisasi, dan ESA harus dibuat dari getServiceAccount. Dengan kata lain, setelah organisasi memanggil Enterprises.setAccount (menggunakan akun layanan yang dibuat oleh Enterprises.getServiceAccount), hanya organisasi tersebut yang diizinkan memanggil panggilan di Serviceaccountkeys API untuk mengelola akun.

Tabel 2. API Serviceaccountkeys

Kolom
idID string unik buram untuk ServiceAccountKey yang ditetapkan oleh server.
kindMengidentifikasi resource menggunakan string tetap androidenterprise#serviceAccountKey.
tipeFormat file dari data kunci yang dihasilkan. Nilai yang dapat diterima:
  • googleCredentials
  • pkcs12
dataString yang terdiri dari isi file kredensial pribadi. Diisi saat pembuatan. Tidak disimpan oleh Google.
Metode
hapusMenghapus dan membatalkan kredensial yang ditetapkan untuk akun layanan (yang ditetapkan dengan enterpriseId dan keyId).
insertBuat kredensial baru untuk akun layanan yang terkait dengan perusahaan.
listMencantumkan semua kredensial aktif untuk akun layanan yang terkait dengan perusahaan. Hanya menampilkan ID dan jenis kunci.

Notifikasi

Anda dapat memperoleh notifikasi dari ESA yang dibuat secara terprogram dengan memanggil Enterprises.pullNotificationSet. Lihat Menyiapkan notifikasi EMM untuk informasi selengkapnya.

Pendaftaran domain Google terkelola

Untuk mengelola perangkat milik domain Google terkelola, Anda harus membuat koneksi (dikenal sebagai binding) antara konsol EMM, organisasi, dan Google.

Prasyarat

Organisasi harus memiliki domain Google terkelola, token pendaftaran EMM, dan akun layanan perusahaan (ESA). Petunjuk untuk admin IT tentang cara mendapatkan detail ini tersedia di Pusat Bantuan Android Enterprise.

Domain Google terkelola

Jika admin IT organisasi mengklaim domain terkelola saat mendaftar ke Google Workspace, mereka dapat mengaktifkan pengelolaan Android dari konsol Google Admin. Jika organisasi tidak memiliki domain Google terkelola, admin IT harus melalui proses pendaftaran web satu kali dengan Google.

Token EMM

Admin IT dapat memperoleh token EMM dari konsol Google Admin (di bagian Perangkat > Seluler & Endpoint > Setelan > Integrasi pihak ketiga).

ESA

Admin IT organisasi Anda dapat membuat ESA, biasanya melalui Konsol Google Cloud pada project yang terkait dengan konsol EMM. ESA memiliki nama, ID, dan kunci yang mengautentikasi akun untuk tindakan yang diambil atas nama mereka. ID diformat mirip dengan alamat email, dengan nama akun layanan sebelum simbol @ dan nama project berikut, beserta informasi layanan Google (misalnya, some-orgs-esa@myemmconsole313302.iam.gserviceaccount.com).

Proses pendaftaran

  1. Admin IT mendapatkan token EMM dari konsol Google Admin.
  2. Admin IT membagikan token EMM kepada Anda, yang memberi Anda otorisasi untuk mengelola Android di domain mereka.
  3. Melalui konsol EMM, gunakan token EMM untuk memanggil Enterprises.enroll. Hal ini mengikat solusi Android organisasi ke domain Google mereka.
    • Metode enroll menampilkan enterpriseId unik, yang dapat Anda ambil nanti (hanya untuk domain Google terkelola) menggunakan metode list.
    • Secara opsional, Anda dapat menyimpan informasi tentang binding (enterpriseId, primaryDomain) di datastore agar tidak melakukan panggilan API untuk mendapatkan detail ini. Dalam skenario Akun Google, primaryDomain organisasi adalah kunci unik yang mengidentifikasi organisasi ke EMM dan Google.
  4. Untuk melakukan panggilan khusus organisasi ke Google Play EMM API:
    • Anda dapat membuat ESA atas nama organisasi atau admin yang membuat ESA, lalu membagikannya kepada Anda.
    • Melalui konsol EMM, panggil setAccount menggunakan enterpriseId dan alamat email ESA. Hal ini memungkinkan ESA mengautentikasi ke API sebagai perusahaan.

Contoh

Berikut adalah contoh pendaftaran organisasi, dengan mempertimbangkan primaryDomainName, serviceAccountEmail, dan authenticationToken:

    public void bind(String primaryDomainName, String serviceAccountEmail,
        String authenticationToken) throws IOException {

      Enterprise enterprise = new Enterprise();
      enterprise.setPrimaryDomain(primaryDomainName);

      Enterprise result = androidEnterprise.enterprises()
          .enroll(authenticationToken, enterprise)
          .execute();

      EnterpriseAccount enterpriseAccount = new EnterpriseAccount();
      enterpriseAccount.setAccountEmail(serviceAccountEmail);
      androidEnterprise.enterprises()
          .setAccount(result.getId(), enterpriseAccount)
          .execute();
    }

Contoh ini menggunakan library klien untuk Java dan class layanan AndroidEnterprise dari paket com.google.api.services.androidenterprise.model. Prosedur yang ditunjukkan dalam contoh tersebut dapat diringkas dalam langkah-langkah berikut:

  1. Buat objek AndroidEnterprise baru dengan parameter yang disediakan oleh bind, class model yang berisi nama domain primer, alamat email akun layanan, dan token pendaftaran EMM.
  2. Tentukan nama domain primer objek perusahaan yang baru dibuat.
  3. Panggil metode pendaftaran, yang menyediakan objek perusahaan dan token pendaftaran.
  4. Buat objek EnterpriseAccount baru dengan ID ESA pelanggan (serviceAccountEmail).
  5. Tetapkan akun dengan menyediakan kolom enterpriseId (yang ditampilkan di langkah 3) dan enterpriseAccount.

Secara opsional, Anda dapat menyimpan informasi tentang binding (enterpriseId, primaryDomain) di datastore agar tidak melakukan panggilan API untuk mendapatkan detail ini. Dalam skenario Akun Google, primaryDomain organisasi adalah kunci unik yang mengidentifikasi organisasi untuk EMM dan Google.

Menyiapkan deployment lokal

Jika sebuah organisasi mengharuskan datanya tetap berada di lokasi dan tidak dapat diakses oleh Anda, pastikan server Anda tidak melihat kumpulan kredensial aktif untuk ESA. Untuk melakukannya, buat dan simpan kumpulan kredensial ESA di lokasi:

  1. Selesaikan alur pendaftaran:
    1. Seperti yang ditunjukkan pada langkah 11, gunakan MSA Anda untuk memanggil getServiceAccount. Tindakan ini akan menghasilkan kredensial ESA.
    2. Seperti yang ditunjukkan pada langkah 12, gunakan setAccount di ESA untuk menetapkannya sebagai ESA untuk organisasi ini.
  2. Teruskan ESA ke server lokal organisasi.
  3. Lakukan langkah-langkah berikut di server lokal:
    1. Panggil Serviceaccountkeys.insert untuk membuat kunci baru untuk ESA. Kunci pribadi ini tidak disimpan di server Google dan hanya ditampilkan satu kali, saat akun dibuat. Data tersebut tidak dapat diakses dengan cara lain.
    2. Gunakan kredensial ESA baru untuk memanggil Serviceaccountkeys.list. Tindakan ini akan menampilkan kredensial akun layanan yang aktif.
    3. Panggil Serviceaccountkeys.delete untuk menghapus semua kredensial kecuali kredensial ESA yang baru saja dibuat secara lokal.
    4. (Opsional) Panggil Serviceaccountkeys.list untuk memverifikasi bahwa kredensial yang saat ini digunakan secara lokal adalah satu-satunya kredensial yang valid untuk akun layanan.

Server lokal kini menjadi satu-satunya server dengan kredensial ESA. Hanya ESA yang dihasilkan melalui getServiceAccount yang dapat mengakses ServiceAccountKeys—MSA Anda tidak diizinkan untuk memanggilnya.

Praktik terbaik: Jangan simpan kredensial akun layanan utama (MSA) Anda secara lokal. Gunakan ESA terpisah untuk setiap deployment lokal.

Membatalkan pendaftaran, mendaftarkan ulang, atau menghapus binding perusahaan

Batalkan pendaftaran

Untuk melepaskan organisasi dari solusi EMM, gunakan unenroll. Binding perusahaan tidak dihapus jika dibatalkan pendaftarannya, tetapi pengguna yang dikelola EMM dan semua data pengguna yang terkait akan dihapus setelah 30 hari. Berikut ini contoh implementasi:

    public void unbind(String enterpriseId) throws IOException {
      androidEnterprise.enterprises().unenroll(enterpriseId).execute();
    }

Praktik terbaik: Jika Anda memiliki datastore untuk nama organisasi dan pemetaan ID binding perusahaan, hapus informasi dari datastore setelah memanggil unenroll.

Daftar ulang

Admin IT dapat mendaftarkan ulang perusahaan menggunakan enterpriseId yang sudah ada. Untuk melakukannya, login dengan akun tingkat pemilik dan mengikuti proses pendaftaran.

Alur pendaftaran ulang bersifat transparan dari perspektif Anda: tidak ada cara untuk menentukan apakah token perusahaan yang ditampilkan di URL alihan (langkah 8) berasal dari organisasi baru atau organisasi yang sebelumnya terdaftar dengan EMM lain.

Jika organisasi sebelumnya terdaftar dengan solusi EMM, Anda mungkin dapat mengenali ID binding perusahaan. Anda dapat memulihkan pengguna terkelola EMM dan data pengguna terkait jika admin IT mendaftarkan ulang organisasi tidak lebih dari 30 hari setelah organisasi dibatalkan pendaftarannya dari Anda. Jika organisasi sebelumnya terdaftar dengan EMM yang berbeda, ID pengguna pengguna terkelola EMM yang dibuat oleh EMM lainnya tidak akan dapat Anda akses. Hal ini dikarenakan ID pengguna ini khusus EMM.

Hapus

Admin IT dapat menghapus organisasinya dari Google Play terkelola. Dalam waktu 24 jam, data organisasi, akun, penetapan lisensi, dan resource lainnya menjadi tidak dapat diakses oleh admin, pengguna akhir, dan Anda. Akibatnya, panggilan API Anda akan menampilkan kode status respons 404 Not Found HTTP untuk parameter enterpriseId. Untuk menangani error ini di konsol EMM, minta admin IT untuk mengonfirmasi sebelum menghapus pengaitan apa pun dengan organisasi.