Penyediaan pengguna B2B dan single sign-on Microsoft Entra ID (sebelumnya Azure AD)

Last reviewed 2023-02-27 UTC

Dokumen ini menunjukkan cara memperluas penyediaan pengguna dan single sign-on Microsoft Entra ID (sebelumnya Azure AD) untuk mengaktifkan single sign-on (SSO) untuk Pengguna kolaborasi B2B Microsoft Entra ID.

Dokumen ini mengasumsikan bahwa Anda menggunakan Microsoft Office 365 atau Microsoft Entra ID di organisasi Anda dan bahwa Anda telah mengonfigurasi penyediaan pengguna dan single sign-on Microsoft Entra ID seperti dalam diagram berikut.

Mengonfigurasi penyediaan pengguna dan single sign-on Microsoft Entra ID.

Dalam diagram ini, pengguna dari penyedia identitas (IdP) eksternal dan dari tenant Microsoft Entra ID lainnya akan login ke tenant Microsoft Entra ID melalui login B2B.

Tujuan

  • Memperluas konfigurasi penyediaan pengguna Microsoft Entra ID untuk mencakup pengguna tamu B2B Microsoft Entra.
  • Memperluas konfigurasi SSO Microsoft Entra ID untuk mencakup pengguna tamu B2B Microsoft Entra.
  • Mengonfigurasi Cloud Identity untuk membatasi durasi sesi bagi pengguna tamu.

Sebelum memulai

Pastikan Anda telah menyiapkan penyediaan pengguna dan single sign-on Microsoft Entra ID.

Pengguna tamu B2B Microsoft Entra

Microsoft Entra ID memungkinkan Anda mengundang pengguna eksternal sebagai tamu ke tenant Microsoft Entra ID Anda. Saat Anda mengundang pengguna eksternal, Microsoft Entra ID akan membuat akun pengguna tamu di tenant Anda. Akun pengguna tamu ini berbeda dari akun pengguna Microsoft Entra ID reguler dalam beberapa cara:

  • Pengguna tamu tidak memiliki sandi. Untuk login, pengguna tamu akan otomatis dialihkan ke tenant rumah mereka atau ke penyedia identitas (IdP) eksternal tempat mereka diundang.
  • Nama utama pengguna (UPN) akun pengguna tamu menggunakan awalan yang berasal dari alamat email penerima undangan, yang digabungkan dengan domain awal tenant, misalnya: prefix#EXT#@tenant.onmicrosoft.com.
  • Jika Anda mengundang pengguna dari tenant Microsoft Entra ID lain dan pengguna tersebut kemudian dihapus di tenant rumahnya, akun pengguna tamu tersebut akan tetap aktif di tenant Microsoft Entra ID Anda.

Perbedaan ini memengaruhi cara Anda mengonfigurasi penyediaan pengguna dan single sign-on:

  • Karena onmicrosoft.com adalah domain DNS milik Microsoft, Anda tidak dapat menambahkan tenant.onmicrosoft.com sebagai domain sekunder ke akun Cloud Identity atau Google Workspace Anda. Peringatan ini berarti Anda tidak dapat menggunakan UPN pengguna tamu sebagai alamat email utama saat menyediakan pengguna ke Cloud Identity atau Google Workspace.

    Untuk menyediakan pengguna tamu ke Cloud Identity atau Google Workspace, Anda harus menyiapkan pemetaan yang mengubah UPN pengguna tamu ke domain yang digunakan oleh akun Cloud Identity atau Google Workspace Anda.

    Dalam dokumen ini, Anda akan menyiapkan pemetaan UPN seperti yang ditunjukkan pada tabel berikut.

    UPN asli di Microsoft Entra ID Alamat email utama di Cloud Identity atau Google Workspace
    Pengguna reguler alice@example.com alice@example.com
    Tamu Microsoft Entra ID charlie@altostrat.com charlie_altostrat.com@example.com
    Tamu eksternal user@hotmail.com user_hotmail.com@example.com
  • Jika pengguna dihapus di tenant rumahnya, Microsoft Entra ID tidak akan menangguhkan pengguna yang terkait di Cloud Identity atau Google Workspace. Hal ini menimbulkan risiko keamanan: Meskipun upaya apa pun untuk menggunakan single sign-on akan gagal untuk pengguna tersebut, sesi browser dan token refresh yang ada (termasuk yang digunakan oleh Google Cloud CLI) mungkin tetap aktif selama beberapa hari atau minggu, yang memungkinkan pengguna terus mengakses resource.

    Dengan menggunakan pendekatan yang dijelaskan dalam dokumen ini, Anda dapat mengurangi risiko ini dengan menyediakan pengguna tamu ke unit organisasi khusus di Cloud Identity atau Google Workspace, dan dengan menerapkan kebijakan yang membatasi durasi sesi hingga 8 jam. Kebijakan ini memastikan bahwa sesi browser dan token refresh yang ada menjadi tidak valid maksimal 8 jam setelah pengguna dihapus di tenant rumahnya, yang secara efektif mencabut semua akses. Namun, pengguna di Cloud Identity atau Google Workspace akan tetap aktif hingga Anda menghapus pengguna tamu dari akun Microsoft Entra ID Anda.

Menyiapkan akun Cloud Identity atau Google Workspace

Buat unit organisasi di akun Cloud Identity atau Google Workspace Anda tempat semua pengguna tamu akan disediakan.

  1. Buka Konsol Admin dan login menggunakan pengguna admin super yang dibuat saat Anda mendaftar ke Cloud Identity atau Google Workspace.
  2. Di menu, buka Directory > Organizational units.
  3. Klik Create organizational unit, lalu berikan nama dan deskripsi untuk OU:
    1. Nama unit organisasi: guests
    2. Deskripsi: Microsoft Entra B2B guest users
  4. Klik Create.

Terapkan kebijakan ke unit organisasi yang membatasi durasi sesi hingga 8 jam. Durasi sesi tidak hanya berlaku untuk sesi browser, tetapi juga membatasi masa pakai token refresh OAuth.

  1. Di Konsol Admin, buka Keamanan > Kontrol data dan akses > Kontrol sesi Google Cloud.
  2. Pilih guests unit organisasi dan terapkan setelan berikut:

    • Reauthentication policy: Require reauthentication
    • Reauthentication frequency: 8 hours.

      Durasi ini mencerminkan jumlah waktu maksimum pengguna tamu masih dapat mengakses resource Google Cloud setelah ditangguhkan di Microsoft Entra ID.

    • Reauthentication method: Password.

      Setelan ini memastikan bahwa pengguna harus melakukan autentikasi ulang dengan menggunakan Microsoft Entra ID setelah sesi berakhir.

  3. Klik Ganti.

Mengonfigurasi penyediaan Microsoft Entra ID

Anda kini siap untuk menyesuaikan konfigurasi Microsoft Entra ID yang ada untuk mendukung penyediaan pengguna tamu B2B.

  1. Di portal Azure, buka Microsoft Entra ID > Enterprise applications.
  2. Pilih aplikasi perusahaan Google Cloud (Provisioning), yang Anda gunakan untuk penyediaan pengguna.
  3. Klik Manage > Provisioning.
  4. Klik Edit provisioning.
  5. Di bagian Mappings, klik Provision Microsoft Entra ID Users.
  6. Pilih baris userPrincipalName.
  7. Di dialog Edit Attribute, terapkan perubahan berikut:

    1. Mapping type: Ubah dari Direct ke Expression.
    2. Ekspresi:

      Replace([originalUserPrincipalName], "#EXT#@TENANT_DOMAIN", , , "@PRIMARY_DOMAIN", , )

      Ganti kode berikut:

      • TENANT_DOMAIN: domain .onmicrosoft.com tenant Microsoft Entra ID Anda, seperti tenant.onmicrosoft.com.
      • PRIMARY_DOMAIN: nama domain primer yang digunakan oleh akun Cloud Identity atau Google Workspace Anda, seperti example.org.
  8. Klik Oke.

  9. Pilih Add new mapping.

  10. Di dialog Edit Attribute, konfigurasikan setelan berikut:

    1. Jenis pemetaan: Ekspresi.
    2. Ekspresi:

      IIF(Instr([originalUserPrincipalName], "#EXT#", , )="0", "/", "/guests")

    3. Atribut target: OrgUnitPath

  11. Klik OK.

  12. Klik Simpan.

  13. Klik Yes untuk mengonfirmasi bahwa menyimpan perubahan akan menyebabkan pengguna dan grup disinkronkan ulang.

  14. Tutup dialog Pemetaan Atribut.

Mengonfigurasi Microsoft Entra ID untuk single sign-on

Untuk memastikan pengguna tamu dapat melakukan autentikasi dengan menggunakan Single Sign-On, kini Anda memperluas konfigurasi Microsoft Entra ID yang ada untuk mengaktifkan single sign-on bagi tamu:

  1. Di portal Azure, buka Microsoft Entra ID > Enterprise applications.
  2. Pilih aplikasi Enterprise Google Cloud, yang Anda gunakan untuk single sign-on.
  3. Klik Manage > Single sign-on.
  4. Di layar balot klik kartu SAML.
  5. Di kartu User Attributes & Claims, klik Edit.
  6. Pilih baris berlabel Unique User Identifier (Name ID).
  7. Pilih Claim conditions.
  8. Tambahkan klaim kondisional untuk tamu eksternal:
    • Jenis pengguna: Tamu eksternal
    • Sumber: Transformation
    • Transformasi: RegexReplace()
    • Parameter 1: Atribut
    • Atribut: user.userprincipalname
    • Pola ekspresi reguler: (?'username'^.*?)#EXT#@(?i).*\.onmicrosoft\.com$
    • Pola penggantian: {username}@PRIMARY_DOMAIN, menggantikan PRIMARY_DOMAIN dengan nama domain primer yang digunakan oleh akun Cloud Identity atau Google Workspace Anda.
  9. Klik Tambahkan.
  10. Tambahkan klaim kondisional untuk tamu Microsoft Entra ID dari tenant yang berbeda:

    • Jenis pengguna: Tamu Microsoft Entra
    • Sumber: Transformation
    • Transformasi: RegexReplace()
    • Parameter 1: Atribut
    • Atribut: user.localuserprincipalname

    • Pola ekspresi reguler: (?'username'^.*?)#EXT#@(?i).*\.onmicrosoft\.com$

    • Pola penggantian: {username}@PRIMARY_DOMAIN, menggantikan PRIMARY_DOMAIN dengan nama domain primer yang digunakan oleh akun Cloud Identity atau Google Workspace Anda.

  11. Klik Tambahkan.

  12. Tambahkan klaim kondisional untuk pengguna Microsoft Entra ID reguler:

    • Jenis pengguna: Anggota
    • Sumber: Atribut
    • Nilai: user.userprincipalname
  13. Klik Simpan.

Menguji single sign-on

Untuk memverifikasi bahwa konfigurasi berfungsi dengan benar, Anda memerlukan tiga pengguna uji coba di tenant Microsoft Entra ID:

  • Pengguna Microsoft Entra ID reguler.
  • Pengguna tamu Microsoft Entra ID. Ini adalah pengguna yang diundang dari tenant Microsoft Entra ID yang berbeda.
  • Pengguna tamu eksternal. Ini adalah pengguna yang diundang menggunakan alamat email non-Microsoft Entra ID seperti alamat @hotmail.com.

Lakukan pengujian berikut untuk setiap pengguna:

  1. Buka jendela browser samaran baru, lalu buka https://console.cloud.google.com/.
  2. Di halaman Login dengan Google yang muncul, masukkan alamat email pengguna seperti yang muncul di kolom Alamat email utama di Cloud Identity atau Google Workspace dari tabel sebelumnya. Lihat tabel tersebut untuk mengetahui bagaimana alamat email di Cloud Identity atau Google Workspace berasal dari nama utama pengguna.

    Anda akan dialihkan ke Microsoft Entra ID tempat Anda akan melihat perintah login lainnya.

  3. Pada perintah login, masukkan UPN pengguna dan ikuti petunjuk untuk melakukan autentikasi.

    Setelah autentikasi berhasil, Microsoft Entra ID akan mengalihkan Anda kembali ke Login dengan Google. Karena ini pertama kalinya Anda login menggunakan pengguna ini, Anda diminta untuk menyetujui Persyaratan Layanan dan kebijakan privasi Google.

  4. Jika Anda menyetujui persyaratannya, klik Accept.

    Anda dialihkan ke konsol Google Cloud, yang meminta Anda untuk mengonfirmasi preferensi dan menyetujui Persyaratan Layanan Google Cloud.

  5. Jika Anda menyetujui persyaratannya, pilih Yes, lalu klik Agree and continue.

  6. Klik ikon avatar, lalu klik Logout.

    Anda akan dialihkan ke halaman Microsoft Entra ID yang mengonfirmasi bahwa Anda berhasil logout.

Langkah selanjutnya