Mengonfigurasi Workforce Identity Federation dengan Microsoft Entra ID

Anda dapat mengonfigurasi workforce identity federation dengan penyedia identitas (IdP) Microsoft Entra ID dan memetakan hingga 400 grup dari Microsoft Entra ID ke Google Cloud menggunakan Microsoft Graph. Kemudian, Anda dapat memberikan peran IAM kepada grup tersebut, yang memungkinkan pengguna Microsoft Entra ID yang merupakan anggota grup untuk login ke Google Cloud. Pengguna kemudian dapat mengakses produk yang telah diberikan akses IAM kepada mereka dan yang juga mendukung Workforce Identity Federation. Google Cloud

Untuk memetakan kurang dari 150 grup dari Microsoft Entra ID ke Google Cloud, lihat Mengonfigurasi workforce identity federation dengan Microsoft Entra ID dan login pengguna.

Konsep utama

Bagian ini menjelaskan konsep yang digunakan untuk mengonfigurasi Workforce Identity Federation, yang akan dibahas nanti dalam dokumen ini.

Atribut tambahan

Untuk memetakan hingga 400 grup, Anda menggunakan atribut tambahan dengan menentukan tanda extra-attributes saat membuat penyedia workload identity pool. Anda dapat menggunakan atribut tambahan dengan protokol berikut:

  • OIDC dengan alur implisit
  • OIDC dengan alur kode
  • Protokol SAML 2.0

Jumlah alamat email grup yang dapat dikeluarkan aplikasi Microsoft Entra ID dalam token dibatasi hingga 150 untuk SAML dan 200 untuk JWT. Untuk mempelajari batas ini lebih lanjut, lihat Mengonfigurasi klaim grup untuk aplikasi menggunakan Microsoft Entra ID. Untuk mengambil lebih banyak grup, Workforce Identity Federation menggunakan alur kredensial klien OAuth 2.0 Microsoft Identity untuk mendapatkan kredensial yang memungkinkan Workforce Identity Federation mengirim kueri ke Microsoft Graph API dan mengambil grup pengguna.

Untuk menggunakan atribut tambahan, pada intinya, Anda perlu melakukan tindakan berikut:

  • Buat aplikasi Microsoft Entra ID baru atau perbarui aplikasi yang ada untuk mendapatkan keanggotaan grup pengguna dari Microsoft Graph API. Untuk mempelajari lebih lanjut cara Microsoft Graph mengambil sejumlah besar grup dari Microsoft Entra ID, lihat Kelebihan grup.

  • Saat membuat penyedia workforce identity pool, Anda menggunakan flag extra-attributes untuk mengonfigurasi Workforce Identity Federation agar mengambil alamat email atau nama tampilan grup pengguna dari Microsoft Graph API.

Workforce Identity Federation dapat mengambil maksimum 999 grup dari Microsoft Graph API. Jika Microsoft Graph API menampilkan lebih dari 999 grup, login akan gagal.

Untuk mengurangi jumlah grup yang ditampilkan oleh Microsoft Graph API, Anda dapat memperbaiki kueri Workforce Identity Federation dengan menggunakan flag --extra-attributes-filter, saat Anda membuat penyedia workforce identity pool.

Setelah Workforce Identity Federation mengambil grup dari Microsoft Graph API, Workforce Identity Federation akan membuat token akses. Workforce Identity Federation dapat menambahkan maksimal 400 grup ke token akses. Jadi, untuk memfilter lebih lanjut jumlah grup menjadi 400 atau kurang, Anda dapat menentukan pemetaan atribut yang berisi ekspresi common expression language (CEL), saat Anda membuat penyedia workforce identity pool.

Sebelum memulai

  1. Pastikan Anda telah menyiapkan organisasi Google Cloud .
  2. Instal Google Cloud CLI. Setelah penginstalan, inisialisasi Google Cloud CLI dengan menjalankan perintah berikut:

    gcloud init

    Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.

  3. Di Microsoft Entra ID, pastikan token ID diaktifkan untuk alur implisit. Untuk mengetahui informasi selengkapnya, lihat Mengaktifkan pemberian implisit token ID.
  4. Untuk login, IdP Anda harus memberikan informasi autentikasi yang ditandatangani: IdP OIDC harus memberikan JWT, dan respons IdP SAML harus ditandatangani.
  5. Untuk menerima informasi penting tentang perubahan pada organisasi atau produkGoogle Cloud Anda, Anda harus memberikan Kontak Penting. Untuk mengetahui informasi selengkapnya, lihat Ringkasan Workforce Identity Federation.
  6. Semua grup yang ingin Anda petakan harus ditandai sebagai grup keamanan di Microsoft Entra ID.

Biaya

Workforce Identity Federation tersedia sebagai fitur tanpa biaya. Namun, audit logging mendetail Workforce Identity Federation menggunakan Cloud Logging. Untuk mempelajari harga Logging, lihat Harga Google Cloud Observability.

Peran yang diperlukan

Untuk mendapatkan izin yang diperlukan guna mengonfigurasi Workforce Identity Federation, minta administrator untuk memberi Anda peran IAM IAM Workforce Pool Admin (roles/iam.workforcePoolAdmin) di organisasi. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.

Jika Anda mengonfigurasi izin di lingkungan pengembangan atau pengujian—tetapi bukan di lingkungan produksi—Anda dapat memberikan peran dasar Pemilik IAM (roles/owner), yang juga mencakup izin untuk Workforce Identity Federation.

Membuat aplikasi Microsoft Entra ID

Bagian ini menunjukkan cara membuat aplikasi Microsoft Entra ID menggunakan portal admin Microsoft Entra. Atau, Anda dapat mengupdate aplikasi yang ada. Untuk mengetahui detail tambahan, lihat Membangun aplikasi di ekosistem Microsoft Entra ID.

Workforce identity pool mendukung federasi menggunakan protokol OIDC dan SAML.

OIDC

Untuk membuat pendaftaran aplikasi Microsoft Entra ID yang menggunakan protokol OIDC, lakukan hal berikut:

  1. Login ke pusat administrator Microsoft Entra.

  2. Buka halaman Overview pendaftaran aplikasi Microsoft Entra ID Anda.

  3. Buka Entra ID > App registrations.

  4. Untuk mulai mengonfigurasi pendaftaran aplikasi, lakukan hal berikut:

    1. Klik New registration.

    2. Masukkan nama untuk aplikasi Anda.

    3. Di Jenis akun yang didukung, pilih salah satu opsi.

    4. Di bagian URI Pengalihan, pada menu drop-down Pilih platform, pilih Web.

    5. Di kolom teks, masukkan URL pengalihan. Pengguna Anda akan dialihkan ke URL ini setelah berhasil login. Jika Anda mengonfigurasi akses ke konsol (gabungan), gunakan format URL berikut:

      https://auth.cloud.google/signin-callback/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
      

      Ganti kode berikut:

      • WORKFORCE_POOL_ID: ID workforce identity pool yang akan Anda gunakan saat membuat workforce identity pool nanti dalam dokumen ini—misalnya: entra-id-oidc-pool

      • WORKFORCE_PROVIDER_ID: ID penyedia workforce identity pool yang akan Anda gunakan saat membuat penyedia workforce identity pool nanti dalam dokumen ini—misalnya: entra-id-oidc-pool-provider

        Untuk mengetahui informasi tentang cara memformat ID, lihat bagian Parameter kueri dalam dokumentasi API.

    6. Untuk membuat pendaftaran aplikasi, klik Daftar.

    7. Untuk menggunakan contoh pemetaan atribut yang disediakan nanti dalam dokumen ini, Anda harus membuat atribut department kustom.

SAML

Untuk membuat pendaftaran aplikasi Microsoft Entra ID yang menggunakan protokol SAML, lakukan hal berikut:

  1. Login ke portal administrator Microsoft Entra.

  2. Di menu navigasi sebelah kiri, buka Entra ID > Enterprise Apps.

  3. Untuk mulai mengonfigurasi aplikasi perusahaan, lakukan hal berikut:

    1. Klik Aplikasi baru > Buat aplikasi Anda sendiri.

    2. Di panel Create your own application yang muncul, masukkan nama untuk aplikasi Anda.

    3. Klik Create.

    4. Buka Single sign-on > SAML.

    5. Update Konfigurasi Basic SAML sebagai berikut:

      1. Di kolom Identifier (ID Entitas), masukkan nilai berikut:

        https://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
        

        Ganti kode berikut:

        • WORKFORCE_POOL_ID: ID workforce identity pool yang akan Anda gunakan saat membuat workforce identity pool nanti dalam dokumen ini—misalnya: entra-id-saml-pool
        • WORKFORCE_PROVIDER_ID: ID penyedia workforce identity pool yang akan Anda gunakan saat membuat penyedia workforce identity pool nanti dalam dokumen ini—misalnya: entra-id-saml-pool-provider

          Untuk mengetahui informasi tentang cara memformat ID, lihat bagian Parameter kueri dalam dokumentasi API.

      2. Di kolom Reply URL (Assertion Consumer Service URL), masukkan URL alihan. Pengguna Anda akan dialihkan ke URL ini setelah berhasil login. Jika Anda mengonfigurasi akses ke konsol (gabungan), gunakan format URL berikut:

        https://auth.cloud.google/signin-callback/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
        

        Ganti kode berikut:

        • WORKFORCE_POOL_ID: ID workforce identity pool
        • WORKFORCE_PROVIDER_ID: ID penyedia identitas tenaga kerja
      3. Untuk mengaktifkan login yang dimulai dengan IdP, tetapkan kolom Status Relai ke nilai berikut:

        https://console.cloud.google/
        
      4. Untuk menyimpan konfigurasi aplikasi SAML, klik Simpan.

    6. Untuk menggunakan contoh pemetaan atribut yang disediakan nanti dalam dokumen ini, Anda harus membuat atribut department kustom.

Mengonfigurasi sejumlah besar grup dengan Microsoft Entra ID

Bagian ini menjelaskan cara memetakan hingga 400 grup dari Microsoft Entra ID ke Workforce Identity Federation menggunakan protokol OIDC dan SAML.

Mengonfigurasi sejumlah besar grup dengan Microsoft Entra ID menggunakan alur implisit OIDC

Bagian ini menjelaskan cara memetakan hingga 400 grup dari Microsoft Entra ID ke Workforce Identity Federation menggunakan protokol OpenID Connect (OIDC) dengan alur implisit.

Mengonfigurasi aplikasi Microsoft Entra ID Anda

Anda dapat mengonfigurasi aplikasi Microsoft Entra ID yang ada atau membuat aplikasi baru. Untuk mengonfigurasi aplikasi Anda, lakukan hal berikut:

  1. Di portal Microsoft Entra ID, lakukan hal berikut:
    • Untuk mendaftarkan aplikasi baru, ikuti petunjuk di Mendaftarkan aplikasi baru.
    • Untuk mengupdate aplikasi yang ada, lakukan langkah-langkah berikut:
      • Buka halaman Overview pendaftaran aplikasi Microsoft Entra ID Anda.
      • Buka Entra ID > App registrations.

      • Pilih aplikasi yang ingin Anda update.
  2. Buat rahasia klien baru di aplikasi dengan mengikuti petunjuk di Certificates & secrets. Pastikan Anda mencatat nilai rahasia klien karena hanya ditampilkan satu kali.

    Catat nilai berikut dari aplikasi yang Anda buat atau perbarui. Anda akan memberikan nilai saat mengonfigurasi penyedia kumpulan identitas tenaga kerja nanti dalam dokumen ini.

    • Client ID
    • Issuer URI
    • Client Secret
    • Tenant ID
  3. Untuk mengambil grup Microsoft Entra ID, tambahkan izin API agar Workforce Identity Federation dapat mengakses informasi pengguna dari Microsoft Entra ID menggunakan Microsoft Graph API dan berikan izin admin. Di Microsoft Entra ID, lakukan hal berikut:

    1. Buka API permissions.
    2. Klik Tambahkan Izin.
    3. Pilih Microsoft API.
    4. Pilih Izin aplikasi.
    5. Di kolom penelusuran, masukkan User.ReadBasic.All.
    6. Klik Add permissions.

    Anda dapat mengambil grup Microsoft Entra ID menggunakan ID objek grup, alamat email grup untuk grup yang diaktifkan untuk email, atau nama tampilan grup.

    Jika Anda memilih untuk mengambil grup sebagai alamat email grup atau nama tampilan, langkah berikutnya diperlukan.

  4. Untuk mengambil grup Microsoft Entra ID sebagai alamat email grup atau nama tampilan, lakukan hal berikut. Jika Anda mengambil grup sebagai ID objek grup, lewati langkah ini.
    1. Buka API permissions.
    2. Klik Tambahkan Izin.
    3. Pilih Microsoft API.
    4. Pilih Izin aplikasi.
    5. Di kolom penelusuran, masukkan GroupMember.Read.All.
    6. Klik Add permissions.

    Buka halaman Ringkasan aplikasi Microsoft Entra ID yang Anda buat atau perbarui sebelumnya. Klik Endpoints. URI penerbit adalah URI dokumen metadata OIDC, tanpa menyertakan jalur /.well-known/openid-configuration.

    Misalnya, jika dokumen metadata OIDC adalah https://login.microsoftonline.com/d41ad248-019e-49e5-b3de-4bdfe1fapple/v2.0/.well-known/openid-configuration, URI penerbitnya adalah https://login.microsoftonline.com/d41ad248-019e-49e5-b3de-4bdfe1fapple/v2.0/.

Membuat workforce identity pool

gcloud

Untuk membuat workforce identity pool, jalankan perintah berikut:

gcloud iam workforce-pools create WORKFORCE_POOL_ID \
    --organization=ORGANIZATION_ID \
    --display-name="DISPLAY_NAME" \
    --description="DESCRIPTION" \
    --session-duration=SESSION_DURATION \
    --location=global

Ganti kode berikut:

  • WORKFORCE_POOL_ID: ID yang Anda pilih untuk mewakili Google Cloud workforce pool Anda. ID pool harus unik secara global di semua workforce identity pool di Google Cloud. Untuk mengetahui informasi tentang cara memformat ID, lihat bagian Parameter kueri dalam dokumentasi API.
  • ORGANIZATION_ID: ID organisasi numerik organisasi Google Cloud Anda untuk workforce identity pool. Workforce identity pool tersedia di semua project dan folder dalam organisasi.
  • DISPLAY_NAME: Opsional. Nama tampilan untuk kumpulan identitas tenaga kerja Anda.
  • DESCRIPTION: Opsional. Deskripsi workforce identity pool.
  • SESSION_DURATION: Opsional. Durasi sesi, dinyatakan sebagai angka yang ditambahkan dengan s—misalnya, 3600s. Durasi sesi menentukan durasi validnya token akses Google Cloud , sesi login konsol (federasi), dan sesi login gcloud CLI dari workforce pool ini. Durasi sesi default adalah satu jam (3600 detik). Nilai durasi sesi harus antara 15 menit (900 detik) dan 12 jam (43200 detik).

Konsol

Untuk membuat workforce identity pool, lakukan hal berikut:

  1. Di konsol Google Cloud , buka halaman Workforce Identity Pools:

    Buka Workforce Identity Pools

  2. Pilih organisasi untuk workforce identity pool Anda. Kumpulan identitas tenaga kerja tersedia di semua project dan folder dalam organisasi.

  3. Klik Buat pool dan lakukan tindakan berikut:

    1. Di kolom Name, masukkan nama tampilan pool. ID pool diambil secara otomatis dari nama saat Anda mengetik, dan ID tersebut ditampilkan di bawah kolom Nama. Anda dapat memperbarui ID pool dengan mengklik Edit di samping ID pool.

    2. Opsional: Di Deskripsi, masukkan deskripsi pool.

    3. Untuk membuat workforce identity pool, klik Berikutnya.

Durasi sesi workforce identity pool secara default adalah satu jam (3600 detik). Durasi sesi menentukan durasi validnya token akses Google Cloud , konsol (federasi), dan sesi login gcloud CLI dari workforce pool ini. Setelah membuat kumpulan, Anda dapat memperbarui kumpulan untuk menetapkan durasi sesi kustom. Durasi sesi harus dari 15 menit (900 detik) hingga 12 jam (43200 detik).

Mengonfigurasi penyedia workforce identity pool alur implisit OIDC

gcloud

Untuk membuat penyedia workforce identity pool OIDC, jalankan perintah berikut:

gcloud iam workforce-pools providers create-oidc PROVIDER_ID \
    --workforce-pool=WORKFORCE_POOL_ID \
    --location=global \
    --display-name=DISPLAY_NAME \
    --issuer-uri=ISSUER_URI \
    --client-id=CLIENT_ID \
    --attribute-mapping=ATTRIBUTE_MAPPING \
    --web-sso-response-type=id-token \
    --web-sso-assertion-claims-behavior=only-id-token-claims \
    --extra-attributes-issuer-uri=EXTRA_ATTRIBUTES_ISSUER_URI \
    --extra-attributes-client-id=EXTRA_ATTRIBUTES_CLIENT_ID \
    --extra-attributes-client-secret-value=EXTRA_ATTRIBUTES_CLIENT_SECRET \
    --extra-attributes-type=EXTRA_ATTRIBUTES_TYPE  \
    --extra-attributes-filter=EXTRA_ATTRIBUTES_FILTER \
    --detailed-audit-logging
    

Ganti kode berikut:

  • PROVIDER_ID: ID penyedia unik. Awalan gcp- dicadangkan dan tidak dapat digunakan dalam ID pool atau penyedia.
  • WORKFORCE_POOL_ID: ID kumpulan tenaga kerja.
  • DISPLAY_NAME: nama tampilan untuk penyedia.
  • ISSUER_URI: URI penerbit dari aplikasi Microsoft Entra ID yang Anda buat sebelumnya dalam dokumen ini.
  • CLIENT_ID: ID klien dari aplikasi Microsoft Entra ID Anda.
  • ATTRIBUTE_MAPPING: pemetaan atribut dari Microsoft Entra ID ke Google Cloud. Jika Anda menggunakan flag --extra-attributes untuk mengkueri grup dari Microsoft Entra ID, pemetaan google.groups yang menggunakan klaim SAML atau OIDC standar akan diabaikan. Misalnya, untuk memetakan atribut groups dan subject dari Microsoft Entra ID, gunakan pemetaan atribut berikut:
    --attribute-mapping="google.groups=assertion.groups, google.subject=assertion.oid"

    Untuk mengetahui informasi selengkapnya, lihat Pemetaan atribut.

  • EXTRA_ATTRIBUTES_ISSUER_URI: URI penerbit dari aplikasi Microsoft Entra ID Anda.
  • EXTRA_ATTRIBUTES_CLIENT_ID: ID klien dari aplikasi Microsoft Entra ID Anda.
  • EXTRA_ATTRIBUTES_CLIENT_SECRET: rahasia klien tambahan dari aplikasi Microsoft Entra ID Anda.
  • EXTRA_ATTRIBUTES_TYPE: gunakan azure-ad-groups-mail untuk mengambil alamat email grup. Gunakan azure-ad-groups-id untuk mengambil ID grup. Gunakan azure-ad-groups-display-name untuk mengambil nama tampilan grup.
  • EXTRA_ATTRIBUTES_FILTER: Opsional. Ekspresi filter yang digunakan saat membuat kueri Microsoft Graph API untuk grup. Anda dapat menggunakan parameter ini untuk memastikan bahwa jumlah grup yang diambil dari IdP tetap di bawah batas 400 grup.

    Contoh berikut mengambil grup yang memiliki awalan sales di ID emailnya:

    --extra-attributes-filter='"mail:sales"'

    Ekspresi berikut mengambil grup dengan nama tampilan yang berisi string sales.

    --extra-attributes-filter='"displayName:sales"'
  • Pencatatan log audit mendetail Workforce Identity Federation mencatat informasi yang diterima dari IdP Anda ke Logging. Logging audit mendetail dapat membantu Anda memecahkan masalah konfigurasi penyedia pool identitas tenaga kerja. Untuk mempelajari cara memecahkan masalah error pemetaan atribut dengan logging audit mendetail, lihat Error pemetaan atribut umum. Untuk mempelajari harga Logging, lihat Harga Google Cloud Observability.

    Untuk menonaktifkan logging audit mendetail untuk penyedia workforce identity pool, hapus tanda --detailed-audit-logging saat Anda menjalankan gcloud iam workforce-pools providers create. Untuk menonaktifkan logging audit mendetail, Anda juga dapat memperbarui penyedia.

Konsol

  1. Di konsol Google Cloud , buka halaman Workforce Identity Pools:
  2. Buka Workforce Identity Pools

  3. Di tabel Workforce Identity Pool, pilih pool tempat Anda ingin membuat penyedia.
  4. Di bagian Penyedia, klik Tambahkan Penyedia.
  5. Di daftar Pilih vendor Penyedia, pilih penyedia identitas (IdP) Anda.

    Jika IdP Anda tidak tercantum, pilih Generic Identity Provider.

  6. Di bagian Pilih protokol autentikasi, pilih OpenID Connect (OIDC).
  7. Di bagian Buat penyedia, lakukan hal berikut:
    1. Di bagian Nama, masukkan nama penyedia.
    2. Di bagian Deskripsi, masukkan deskripsi penyedia.
    3. Di bagian Penerbit (URL), masukkan URI penerbit. URI penerbit OIDC harus dalam format URI yang valid dan diawali dengan https; misalnya, https://example.com/oidc.
    4. Di bagian Client ID, masukkan client ID OIDC yang terdaftar dengan IdP OIDC Anda; ID harus cocok dengan klaim aud JWT yang dikeluarkan oleh IdP Anda.
    5. Untuk membuat penyedia yang diaktifkan, pastikan Aktifkan penyedia aktif.

    6. Klik Lanjutkan.
  8. Di bagian Share your provider information with IdP, salin URL-nya. Di IdP Anda, konfigurasi URL ini sebagai URI pengalihan, yang memberi tahu IdP Anda tempat untuk mengirim token pernyataan setelah login.
  9. Klik Lanjutkan.
  10. Di bagian Configure OIDC Web Sign-in, lakukan langkah-langkah berikut:
    1. Di daftar Flow type, pilih ID Token.
    2. Dalam daftar Perilaku klaim pernyataan, Token ID dipilih.
  11. Klik Lanjutkan.
  12. Di bagian Konfigurasi penyedia, Anda dapat mengonfigurasi pemetaan atribut dan kondisi atribut. Untuk membuat pemetaan atribut, lakukan hal berikut. Anda dapat memberikan nama kolom IdP atau ekspresi berformat CEL yang menampilkan string.
    1. Wajib: Pada OIDC 1, masukkan subjek dari IdP—misalnya, assertion.sub.
    2. Opsional: Untuk menambahkan pemetaan atribut tambahan, lakukan hal berikut:
      1. Klik Tambahkan pemetaan.
      2. Pada Google n, dengan n adalah angka, masukkan salah satu kunci yang didukungGoogle Cloud.
      3. Di kolom OIDC n yang sesuai, masukkan nama kolom khusus IdP yang akan dipetakan, dalam format CEL.
    3. Untuk menambah jumlah grup, lakukan hal berikut:
      1. Pilih Gunakan Atribut Tambahan.
      2. Di kolom Extra Attributes Issuer URI, masukkan URL penerbit.
      3. Di kolom ID Klien Atribut Tambahan, masukkan ID klien.
      4. Di kolom Extra Attributes Client Secret, masukkan rahasia klien.
      5. Di daftar Jenis Atribut Tambahan, pilih jenis atribut untuk atribut tambahan.
      6. Di kolom Extra Attributes Filter, masukkan ekspresi filter yang digunakan saat membuat kueri Microsoft Graph API untuk grup.
    4. Untuk membuat kondisi atribut, lakukan hal berikut:
      1. Klik Add condition.
      2. Di kolom Kondisi Atribut, masukkan kondisi dalam format CEL— misalnya, assertion.role == 'gcp-users'. Contoh kondisi ini memastikan bahwa hanya pengguna dengan peran gcp-users yang dapat login menggunakan penyedia ini.
      3. Untuk mengaktifkan logging audit mendetail, di Logging mendetail, klik tombol Aktifkan logging audit nilai atribut.

        Pencatatan log audit mendetail Workforce Identity Federation mencatat informasi yang diterima dari IdP Anda ke Logging. Logging audit mendetail dapat membantu Anda memecahkan masalah konfigurasi penyedia pool identitas tenaga kerja. Untuk mempelajari cara memecahkan masalah error pemetaan atribut dengan logging audit mendetail, lihat Error pemetaan atribut umum. Untuk mempelajari harga Logging, lihat Harga Google Cloud Observability.

        Untuk menonaktifkan logging audit mendetail untuk penyedia workforce identity pool, hapus tanda --detailed-audit-logging saat Anda menjalankan gcloud iam workforce-pools providers create. Untuk menonaktifkan logging audit mendetail, Anda juga dapat memperbarui penyedia.

  13. Untuk membuat penyedia, klik Kirim.

Mengonfigurasi sejumlah besar grup di Microsoft Entra ID dengan alur kode OIDC

Bagian ini menjelaskan cara memetakan hingga 400 grup dari Microsoft Entra ID ke Workforce Identity Federation menggunakan protokol OIDC dengan alur kode.

Mengonfigurasi aplikasi Microsoft Entra ID Anda

Anda dapat mengonfigurasi aplikasi Microsoft Entra ID yang ada atau membuat aplikasi baru. Untuk mengonfigurasi aplikasi Anda, lakukan hal berikut:

  1. Di portal Microsoft Entra ID, lakukan hal berikut:
    • Untuk mendaftarkan aplikasi baru, ikuti petunjuk di Mendaftarkan aplikasi baru.
    • Untuk mengupdate aplikasi yang ada, lakukan langkah-langkah berikut:
      • Buka halaman Overview pendaftaran aplikasi Microsoft Entra ID Anda.
      • Buka Entra ID > App registrations.

      • Pilih aplikasi yang ingin Anda update.
  2. Buat rahasia klien baru di aplikasi dengan mengikuti petunjuk di Certificates & secrets. Pastikan Anda mencatat nilai rahasia klien karena hanya ditampilkan satu kali.

    Catat nilai berikut dari aplikasi yang Anda buat atau perbarui. Anda akan memberikan nilai saat mengonfigurasi penyedia kumpulan identitas tenaga kerja nanti dalam dokumen ini.

    • Client ID
    • Issuer URI
    • Client Secret
    • Tenant ID
  3. Untuk mengambil grup Microsoft Entra ID, tambahkan izin API agar Workforce Identity Federation dapat mengakses informasi pengguna dari Microsoft Entra ID menggunakan Microsoft Graph API dan berikan izin admin. Di Microsoft Entra ID, lakukan hal berikut:

    1. Buka API permissions.
    2. Klik Tambahkan Izin.
    3. Pilih Microsoft API.
    4. Pilih Izin yang didelegasikan.
    5. Di kolom penelusuran, masukkan User.Read.
    6. Klik Add permissions.

    Anda dapat mengambil grup Microsoft Entra ID menggunakan ID objek grup, alamat email grup untuk grup yang diaktifkan untuk email, atau nama tampilan grup.

    Jika Anda memilih untuk mengambil grup sebagai alamat email grup atau nama tampilan, langkah berikutnya diperlukan.

  4. Untuk mengambil grup Microsoft Entra ID sebagai alamat email grup atau nama tampilan, lakukan hal berikut. Jika Anda mengambil grup sebagai ID objek grup, lewati langkah ini.
    1. Buka API permissions.
    2. Klik Tambahkan Izin.
    3. Pilih Microsoft API.
    4. Pilih Izin yang didelegasikan.
    5. Di kolom penelusuran, masukkan GroupMember.Read.All.
    6. Klik Add permissions.

    Buka halaman Ringkasan aplikasi Microsoft Entra ID yang Anda buat atau perbarui sebelumnya. Klik Endpoints. URI penerbit adalah URI dokumen metadata OIDC, tanpa menyertakan jalur /.well-known/openid-configuration.

    Misalnya, jika dokumen metadata OIDC adalah https://login.microsoftonline.com/d41ad248-019e-49e5-b3de-4bdfe1fapple/v2.0/.well-known/openid-configuration, URI penerbitnya adalah https://login.microsoftonline.com/d41ad248-019e-49e5-b3de-4bdfe1fapple/v2.0/.

Membuat workforce identity pool

gcloud

Untuk membuat workforce identity pool, jalankan perintah berikut:

gcloud iam workforce-pools create WORKFORCE_POOL_ID \
    --organization=ORGANIZATION_ID \
    --display-name="DISPLAY_NAME" \
    --description="DESCRIPTION" \
    --session-duration=SESSION_DURATION \
    --location=global

Ganti kode berikut:

  • WORKFORCE_POOL_ID: ID yang Anda pilih untuk mewakili Google Cloud workforce pool Anda. ID pool harus unik secara global di semua workforce identity pool di Google Cloud. Untuk mengetahui informasi tentang cara memformat ID, lihat bagian Parameter kueri dalam dokumentasi API.
  • ORGANIZATION_ID: ID organisasi numerik organisasi Google Cloud Anda untuk workforce identity pool. Workforce identity pool tersedia di semua project dan folder dalam organisasi.
  • DISPLAY_NAME: Opsional. Nama tampilan untuk kumpulan identitas tenaga kerja Anda.
  • DESCRIPTION: Opsional. Deskripsi workforce identity pool.
  • SESSION_DURATION: Opsional. Durasi sesi, dinyatakan sebagai angka yang ditambahkan dengan s—misalnya, 3600s. Durasi sesi menentukan durasi validnya token akses Google Cloud , sesi login konsol (federasi), dan sesi login gcloud CLI dari workforce pool ini. Durasi sesi default adalah satu jam (3600 detik). Nilai durasi sesi harus antara 15 menit (900 detik) dan 12 jam (43200 detik).

Konsol

Untuk membuat workforce identity pool, lakukan hal berikut:

  1. Di konsol Google Cloud , buka halaman Workforce Identity Pools:

    Buka Workforce Identity Pools

  2. Pilih organisasi untuk workforce identity pool Anda. Kumpulan identitas tenaga kerja tersedia di semua project dan folder dalam organisasi.

  3. Klik Buat pool dan lakukan tindakan berikut:

    1. Di kolom Name, masukkan nama tampilan pool. ID pool diambil secara otomatis dari nama saat Anda mengetik, dan ID tersebut ditampilkan di bawah kolom Nama. Anda dapat memperbarui ID pool dengan mengklik Edit di samping ID pool.

    2. Opsional: Di Deskripsi, masukkan deskripsi pool.

    3. Untuk membuat workforce identity pool, klik Berikutnya.

Durasi sesi workforce identity pool secara default adalah satu jam (3600 detik). Durasi sesi menentukan durasi validnya token akses Google Cloud , konsol (federasi), dan sesi login gcloud CLI dari workforce pool ini. Setelah membuat kumpulan, Anda dapat memperbarui kumpulan untuk menetapkan durasi sesi kustom. Durasi sesi harus dari 15 menit (900 detik) hingga 12 jam (43200 detik).

Mengonfigurasi penyedia workforce identity pool alur kode OIDC

gcloud

Untuk membuat penyedia workforce identity pool OIDC, jalankan perintah berikut:

gcloud iam workforce-pools providers create-oidc PROVIDER_ID \
    --workforce-pool=WORKFORCE_POOL_ID \
    --location=global \
    --display-name=DISPLAY_NAME \
    --issuer-uri=ISSUER_URI \
    --client-id=CLIENT_ID \
--client-secret-value="OIDC_CLIENT_SECRET" \ --attribute-mapping=ATTRIBUTE_MAPPING \ --web-sso-response-type=code \ --web-sso-assertion-claims-behavior=merge-user-info-over-id-token-claims \ --extra-attributes-issuer-uri=EXTRA_ATTRIBUTES_ISSUER_URI \ --extra-attributes-client-id=EXTRA_ATTRIBUTES_CLIENT_ID \ --extra-attributes-client-secret-value=EXTRA_ATTRIBUTES_CLIENT_SECRET \ --extra-attributes-type=EXTRA_ATTRIBUTES_TYPE \ --extra-attributes-filter=EXTRA_ATTRIBUTES_FILTER \ --detailed-audit-logging

Ganti kode berikut:

  • PROVIDER_ID: ID penyedia unik. Awalan gcp- dicadangkan dan tidak dapat digunakan dalam ID pool atau penyedia.
  • WORKFORCE_POOL_ID: ID kumpulan tenaga kerja.
  • DISPLAY_NAME: nama tampilan untuk penyedia.
  • ISSUER_URI: URI penerbit dari aplikasi Microsoft Entra ID yang Anda buat sebelumnya dalam dokumen ini.
  • CLIENT_ID: ID klien dari aplikasi Microsoft Entra ID Anda.
  • ATTRIBUTE_MAPPING: pemetaan atribut dari Microsoft Entra ID ke Google Cloud. Jika Anda menggunakan flag --extra-attributes untuk mengkueri grup dari Microsoft Entra ID, pemetaan google.groups yang menggunakan klaim SAML atau OIDC standar akan diabaikan. Misalnya, untuk memetakan atribut groups dan subject dari Microsoft Entra ID, gunakan pemetaan atribut berikut:
    --attribute-mapping="google.groups=assertion.groups, google.subject=assertion.oid"

    Untuk mengetahui informasi selengkapnya, lihat Pemetaan atribut.

  • EXTRA_ATTRIBUTES_ISSUER_URI: URI penerbit dari aplikasi Microsoft Entra ID Anda.
  • EXTRA_ATTRIBUTES_CLIENT_ID: ID klien dari aplikasi Microsoft Entra ID Anda.
  • EXTRA_ATTRIBUTES_CLIENT_SECRET: rahasia klien tambahan dari aplikasi Microsoft Entra ID Anda.
  • EXTRA_ATTRIBUTES_TYPE: gunakan azure-ad-groups-mail untuk mengambil alamat email grup. Gunakan azure-ad-groups-id untuk mengambil ID grup. Gunakan azure-ad-groups-display-name untuk mengambil nama tampilan grup.
  • EXTRA_ATTRIBUTES_FILTER: Opsional. Ekspresi filter yang digunakan saat membuat kueri Microsoft Graph API untuk grup. Anda dapat menggunakan parameter ini untuk memastikan bahwa jumlah grup yang diambil dari IdP tetap di bawah batas 400 grup.

    Contoh berikut mengambil grup yang memiliki awalan sales di ID emailnya:

    --extra-attributes-filter='"mail:sales"'

    Ekspresi berikut mengambil grup dengan nama tampilan yang berisi string sales.

    --extra-attributes-filter='"displayName:sales"'
  • Pencatatan log audit mendetail Workforce Identity Federation mencatat informasi yang diterima dari IdP Anda ke Logging. Logging audit mendetail dapat membantu Anda memecahkan masalah konfigurasi penyedia pool identitas tenaga kerja. Untuk mempelajari cara memecahkan masalah error pemetaan atribut dengan logging audit mendetail, lihat Error pemetaan atribut umum. Untuk mempelajari harga Logging, lihat Harga Google Cloud Observability.

    Untuk menonaktifkan logging audit mendetail untuk penyedia workforce identity pool, hapus tanda --detailed-audit-logging saat Anda menjalankan gcloud iam workforce-pools providers create. Untuk menonaktifkan logging audit mendetail, Anda juga dapat memperbarui penyedia.

Konsol

  1. Di konsol Google Cloud , buka halaman Workforce Identity Pools:
  2. Buka Workforce Identity Pools

  3. Di tabel Workforce Identity Pool, pilih pool tempat Anda ingin membuat penyedia.
  4. Di bagian Penyedia, klik Tambahkan Penyedia.
  5. Di daftar Pilih vendor Penyedia, pilih penyedia identitas (IdP) Anda.

    Jika IdP Anda tidak tercantum, pilih Generic Identity Provider.

  6. Di bagian Pilih protokol autentikasi, pilih OpenID Connect (OIDC).
  7. Di bagian Buat penyedia, lakukan hal berikut:
    1. Di bagian Nama, masukkan nama penyedia.
    2. Di bagian Deskripsi, masukkan deskripsi penyedia.
    3. Di bagian Penerbit (URL), masukkan URI penerbit. URI penerbit OIDC harus dalam format URI yang valid dan diawali dengan https; misalnya, https://example.com/oidc.
    4. Di bagian Client ID, masukkan client ID OIDC yang terdaftar dengan IdP OIDC Anda; ID harus cocok dengan klaim aud JWT yang dikeluarkan oleh IdP Anda.
    5. Untuk membuat penyedia yang diaktifkan, pastikan Aktifkan penyedia aktif.

    6. Klik Lanjutkan.
  8. Di bagian Share your provider information with IdP, salin URL-nya. Di IdP Anda, konfigurasi URL ini sebagai URI pengalihan, yang memberi tahu IdP Anda tempat untuk mengirim token pernyataan setelah login.
  9. Klik Lanjutkan.
  10. Di bagian Configure OIDC Web Sign-in, lakukan langkah-langkah berikut:
    1. Di daftar Flow type, pilih Code.
    2. Di daftar Perilaku klaim pernyataan, pilih salah satu opsi berikut:
      • Info pengguna dan token ID
      • Hanya token ID
    3. Di kolom Rahasia klien, masukkan rahasia klien dari IdP Anda.
  11. Klik Lanjutkan.
  12. Di bagian Konfigurasi penyedia, Anda dapat mengonfigurasi pemetaan atribut dan kondisi atribut. Untuk membuat pemetaan atribut, lakukan hal berikut. Anda dapat memberikan nama kolom IdP atau ekspresi berformat CEL yang menampilkan string.
    1. Wajib: Pada OIDC 1, masukkan subjek dari IdP—misalnya, assertion.sub.
    2. Opsional: Untuk menambahkan pemetaan atribut tambahan, lakukan hal berikut:
      1. Klik Tambahkan pemetaan.
      2. Pada Google n, dengan n adalah angka, masukkan salah satu kunci yang didukungGoogle Cloud.
      3. Di kolom OIDC n yang sesuai, masukkan nama kolom khusus IdP yang akan dipetakan, dalam format CEL.
    3. Untuk menambah jumlah grup, lakukan hal berikut:
      1. Pilih Gunakan Atribut Tambahan.
      2. Di kolom Extra Attributes Issuer URI, masukkan URL penerbit.
      3. Di kolom ID Klien Atribut Tambahan, masukkan ID klien.
      4. Di kolom Extra Attributes Client Secret, masukkan rahasia klien.
      5. Di daftar Jenis Atribut Tambahan, pilih jenis atribut untuk atribut tambahan.
      6. Di kolom Extra Attributes Filter, masukkan ekspresi filter yang digunakan saat membuat kueri Microsoft Graph API untuk grup.
    4. Untuk membuat kondisi atribut, lakukan hal berikut:
      1. Klik Add condition.
      2. Di kolom Kondisi Atribut, masukkan kondisi dalam format CEL— misalnya, assertion.role == 'gcp-users'. Contoh kondisi ini memastikan bahwa hanya pengguna dengan peran gcp-users yang dapat login menggunakan penyedia ini.
      3. Untuk mengaktifkan logging audit mendetail, di Logging mendetail, klik tombol Aktifkan logging audit nilai atribut.

        Pencatatan log audit mendetail Workforce Identity Federation mencatat informasi yang diterima dari IdP Anda ke Logging. Logging audit mendetail dapat membantu Anda memecahkan masalah konfigurasi penyedia pool identitas tenaga kerja. Untuk mempelajari cara memecahkan masalah error pemetaan atribut dengan logging audit mendetail, lihat Error pemetaan atribut umum. Untuk mempelajari harga Logging, lihat Harga Google Cloud Observability.

        Untuk menonaktifkan logging audit mendetail untuk penyedia workforce identity pool, hapus tanda --detailed-audit-logging saat Anda menjalankan gcloud iam workforce-pools providers create. Untuk menonaktifkan logging audit mendetail, Anda juga dapat memperbarui penyedia.

  13. Untuk membuat penyedia, klik Kirim.

Mengonfigurasi sejumlah besar grup di Microsoft Entra ID dengan SAML 2.0

Bagian ini menjelaskan cara memetakan hingga 400 grup dari Microsoft Entra ID ke Workforce Identity Federation menggunakan protokol SAML 2.0.

Mengonfigurasi aplikasi Microsoft Entra ID Anda

Untuk mengonfigurasi aplikasi Anda, lakukan hal berikut:

  1. Di portal Microsoft Entra ID, lakukan hal berikut:
    • Untuk mendaftarkan aplikasi baru, ikuti petunjuk di Mendaftarkan aplikasi baru.
    • Untuk mengupdate aplikasi yang ada, lakukan langkah-langkah berikut:
      • Buka halaman Overview pendaftaran aplikasi Microsoft Entra ID Anda.
      • Buka Entra ID > App registrations.

      • Pilih aplikasi yang ingin Anda update.
  2. Buat rahasia klien baru di aplikasi dengan mengikuti petunjuk di Certificates & secrets. Pastikan Anda mencatat nilai rahasia klien karena hanya ditampilkan satu kali.

    Catat nilai berikut dari aplikasi yang Anda buat atau perbarui. Anda akan memberikan nilai saat mengonfigurasi penyedia kumpulan identitas tenaga kerja nanti dalam dokumen ini.

    • Client ID
    • Issuer URI
    • Client Secret
    • Tenant ID
  3. Untuk mengambil grup Microsoft Entra ID, tambahkan izin API agar Workforce Identity Federation dapat mengakses informasi pengguna dari Microsoft Entra ID menggunakan Microsoft Graph API dan berikan izin admin. Di Microsoft Entra ID, lakukan hal berikut:

    1. Buka API permissions.
    2. Klik Tambahkan Izin.
    3. Pilih Microsoft API.
    4. Pilih Izin aplikasi.
    5. Di kolom penelusuran, masukkan User.ReadBasic.All.
    6. Klik Add permissions.

    Anda dapat mengambil grup Microsoft Entra ID menggunakan ID objek grup, alamat email grup untuk grup yang diaktifkan untuk email, atau nama tampilan grup.

    Jika Anda memilih untuk mengambil grup sebagai alamat email grup atau nama tampilan, langkah berikutnya diperlukan.

  4. Untuk mengambil grup Microsoft Entra ID sebagai alamat email grup atau nama tampilan, lakukan hal berikut. Jika Anda mengambil grup sebagai ID objek grup, lewati langkah ini.
    1. Buka API permissions.
    2. Klik Tambahkan Izin.
    3. Pilih Microsoft API.
    4. Pilih Izin aplikasi.
    5. Di kolom penelusuran, masukkan GroupMember.Read.All.
    6. Klik Add permissions.

    Buka halaman Ringkasan aplikasi Microsoft Entra ID yang Anda buat atau perbarui sebelumnya. Klik Endpoints. URI penerbit adalah URI dokumen metadata OIDC, tanpa menyertakan jalur /.well-known/openid-configuration.

    Misalnya, jika dokumen metadata OIDC adalah https://login.microsoftonline.com/d41ad248-019e-49e5-b3de-4bdfe1fapple/v2.0/.well-known/openid-configuration, URI penerbitnya adalah https://login.microsoftonline.com/d41ad248-019e-49e5-b3de-4bdfe1fapple/v2.0/.

Membuat workforce identity pool

gcloud

Untuk membuat workforce identity pool, jalankan perintah berikut:

gcloud iam workforce-pools create WORKFORCE_POOL_ID \
    --organization=ORGANIZATION_ID \
    --display-name="DISPLAY_NAME" \
    --description="DESCRIPTION" \
    --session-duration=SESSION_DURATION \
    --location=global

Ganti kode berikut:

  • WORKFORCE_POOL_ID: ID yang Anda pilih untuk mewakili Google Cloud workforce pool Anda. ID pool harus unik secara global di semua workforce identity pool di Google Cloud. Untuk mengetahui informasi tentang cara memformat ID, lihat bagian Parameter kueri dalam dokumentasi API.
  • ORGANIZATION_ID: ID organisasi numerik organisasi Google Cloud Anda untuk workforce identity pool. Workforce identity pool tersedia di semua project dan folder dalam organisasi.
  • DISPLAY_NAME: Opsional. Nama tampilan untuk kumpulan identitas tenaga kerja Anda.
  • DESCRIPTION: Opsional. Deskripsi workforce identity pool.
  • SESSION_DURATION: Opsional. Durasi sesi, dinyatakan sebagai angka yang ditambahkan dengan s—misalnya, 3600s. Durasi sesi menentukan durasi validnya token akses Google Cloud , sesi login konsol (federasi), dan sesi login gcloud CLI dari workforce pool ini. Durasi sesi default adalah satu jam (3600 detik). Nilai durasi sesi harus antara 15 menit (900 detik) dan 12 jam (43200 detik).

Konsol

Untuk membuat workforce identity pool, lakukan hal berikut:

  1. Di konsol Google Cloud , buka halaman Workforce Identity Pools:

    Buka Workforce Identity Pools

  2. Pilih organisasi untuk workforce identity pool Anda. Kumpulan identitas tenaga kerja tersedia di semua project dan folder dalam organisasi.

  3. Klik Buat pool dan lakukan tindakan berikut:

    1. Di kolom Name, masukkan nama tampilan pool. ID pool diambil secara otomatis dari nama saat Anda mengetik, dan ID tersebut ditampilkan di bawah kolom Nama. Anda dapat memperbarui ID pool dengan mengklik Edit di samping ID pool.

    2. Opsional: Di Deskripsi, masukkan deskripsi pool.

    3. Untuk membuat workforce identity pool, klik Berikutnya.

Durasi sesi workforce identity pool secara default adalah satu jam (3600 detik). Durasi sesi menentukan durasi validnya token akses Google Cloud , konsol (federasi), dan sesi login gcloud CLI dari workforce pool ini. Setelah membuat kumpulan, Anda dapat memperbarui kumpulan untuk menetapkan durasi sesi kustom. Durasi sesi harus dari 15 menit (900 detik) hingga 12 jam (43200 detik).

Mengonfigurasi penyedia workforce identity pool SAML 2.0

gcloud

Untuk membuat penyedia workforce identity pool SAML, jalankan perintah berikut:

gcloud iam workforce-pools providers create-saml PROVIDER_ID \
    --workforce-pool=WORKFORCE_POOL_ID \
    --location=global \
    --display-name=DISPLAY_NAME \
    --idp-metadata-path=XML_METADATA_PATH \
    --attribute-mapping=ATTRIBUTE_MAPPING \
    --extra-attributes-issuer-uri=EXTRA_ATTRIBUTES_ISSUER_URI \
    --extra-attributes-client-id=EXTRA_ATTRIBUTES_CLIENT_ID \
    --extra-attributes-client-secret-value=EXTRA_ATTRIBUTES_CLIENT_SECRET \
    --extra-attributes-type=EXTRA_ATTRIBUTES_TYPE  \
    --extra-attributes-filter=EXTRA_ATTRIBUTES_FILTER \
    --detailed-audit-logging
    

Ganti kode berikut:

  • PROVIDER_ID: ID penyedia unik. Awalan gcp- dicadangkan dan tidak dapat digunakan dalam ID pool atau penyedia.
  • WORKFORCE_POOL_ID: ID kumpulan tenaga kerja.
  • DISPLAY_NAME: nama tampilan untuk penyedia.
  • XML_METADATA_PATH: jalur ke file metadata XML SAML 2.0.
  • ATTRIBUTE_MAPPING: pemetaan atribut dari Microsoft Entra ID ke Google Cloud. Jika Anda menggunakan flag --extra-attributes untuk mengkueri grup dari Microsoft Entra ID, pemetaan google.groups yang menggunakan klaim SAML atau OIDC standar akan diabaikan. Misalnya, untuk memetakan atribut groups dan subject dari Microsoft Entra ID, gunakan pemetaan atribut berikut:
    --attribute-mapping="google.groups=assertion.groups, google.subject=assertion.oid"

    Untuk mengetahui informasi selengkapnya, lihat Pemetaan atribut.

  • EXTRA_ATTRIBUTES_ISSUER_URI: URI penerbit dari aplikasi Microsoft Entra ID Anda.
  • EXTRA_ATTRIBUTES_CLIENT_ID: ID klien dari aplikasi Microsoft Entra ID Anda.
  • EXTRA_ATTRIBUTES_CLIENT_SECRET: rahasia klien tambahan dari aplikasi Microsoft Entra ID Anda.
  • EXTRA_ATTRIBUTES_TYPE: gunakan azure-ad-groups-mail untuk mengambil alamat email grup. Gunakan azure-ad-groups-id untuk mengambil ID grup. Gunakan azure-ad-groups-display-name untuk mengambil nama tampilan grup.
  • EXTRA_ATTRIBUTES_FILTER: Opsional. Ekspresi filter yang digunakan saat membuat kueri Microsoft Graph API untuk grup. Anda dapat menggunakan parameter ini untuk memastikan bahwa jumlah grup yang diambil dari IdP tetap di bawah batas 400 grup.

    Contoh berikut mengambil grup yang memiliki awalan sales di ID emailnya:

    --extra-attributes-filter='"mail:sales"'

    Ekspresi berikut mengambil grup dengan nama tampilan yang berisi string sales.

    --extra-attributes-filter='"displayName:sales"'
  • Pencatatan log audit mendetail Workforce Identity Federation mencatat informasi yang diterima dari IdP Anda ke Logging. Logging audit mendetail dapat membantu Anda memecahkan masalah konfigurasi penyedia pool identitas tenaga kerja. Untuk mempelajari cara memecahkan masalah error pemetaan atribut dengan logging audit mendetail, lihat Error pemetaan atribut umum. Untuk mempelajari harga Logging, lihat Harga Google Cloud Observability.

    Untuk menonaktifkan logging audit mendetail untuk penyedia workforce identity pool, hapus tanda --detailed-audit-logging saat Anda menjalankan gcloud iam workforce-pools providers create. Untuk menonaktifkan logging audit mendetail, Anda juga dapat memperbarui penyedia.

Konsol

  1. Di konsol Google Cloud , buka halaman Workforce Identity Pools:
  2. Buka Workforce Identity Pools

  3. Di tabel Workforce Identity Pool, pilih pool tempat Anda ingin membuat penyedia.
  4. Di bagian Penyedia, klik Tambahkan Penyedia.
  5. Di daftar Pilih vendor Penyedia, pilih penyedia identitas (IdP) Anda.

    Jika IdP Anda tidak tercantum, pilih Generic Identity Provider.

  6. Di bagian Pilih protokol autentikasi, pilih SAML.
  7. Di bagian Buat penyedia, lakukan hal berikut:
    1. Di bagian Nama, masukkan nama penyedia.
    2. Opsional: Di bagian Deskripsi, masukkan deskripsi untuk penyedia.
    3. Di file metadata IDP (XML), pilih file XML metadata yang Anda buat sebelumnya dalam panduan ini.
    4. Untuk membuat penyedia yang diaktifkan, pastikan Aktifkan penyedia aktif.
    5. Klik Lanjutkan.
  8. Di bagian Bagikan informasi penyedia Anda, salin URL. Di IdP Anda, konfigurasi URL pertama sebagai ID entitas, yang mengidentifikasi aplikasi Anda ke IdP. Konfigurasi URL lain sebagai URI pengalihan, yang memberi tahu IdP Anda ke mana harus mengirim token pernyataan setelah login.
  9. Klik Lanjutkan.
  10. Di bagian Konfigurasi penyedia, lakukan hal berikut:
    1. Di Pemetaan atribut, masukkan ekspresi CEL untuk google.subject.
    2. Opsional: Untuk memasukkan pemetaan lain, klik Tambahkan pemetaan, lalu masukkan pemetaan lain, misalnya:
    3. google.subject=assertion.oid
      attribute.costcenter=assertion.attributes.costcenter[0]
      Contoh ini memetakan atribut IdP assertion.oid dan assertion.attributes.costcenter[0] ke atribut Google Cloud google.subject dan attribute.costcenter.
    4. Jika Anda memilih Microsoft Entra ID sebagai IdP, Anda dapat menambah jumlah grup.
      1. Pilih Gunakan Atribut Tambahan.
      2. Di kolom Extra Attributes Issuer URI, masukkan URL penerbit.
      3. Di kolom Extra Attributes Client ID, masukkan ID klien.
      4. Di kolom Extra Attributes Client Secret, masukkan rahasia klien.
      5. Di daftar Jenis Atribut Tambahan, pilih jenis atribut untuk atribut tambahan.
      6. Di kolom Filter Atribut Tambahan, masukkan ekspresi filter yang digunakan saat membuat kueri Microsoft Graph API untuk grup.
    5. Opsional: Untuk menambahkan kondisi atribut, klik Tambahkan kondisi, lalu masukkan ekspresi CEL yang mewakili kondisi atribut. Misalnya, untuk membatasi atribut ipaddr ke rentang IP tertentu, Anda dapat mengatur kondisi menjadi assertion.attributes.ipaddr.startsWith('98.11.12.'). Contoh kondisi ini memastikan bahwa hanya pengguna dengan alamat IP yang diawali dengan 98.11.12. yang dapat login menggunakan penyedia workforce ini.
    6. Klik Lanjutkan.
    7. Untuk mengaktifkan logging audit mendetail, di Logging mendetail, klik tombol Aktifkan logging audit nilai atribut.

      Pencatatan log audit mendetail Workforce Identity Federation mencatat informasi yang diterima dari IdP Anda ke Logging. Logging audit mendetail dapat membantu Anda memecahkan masalah konfigurasi penyedia pool identitas tenaga kerja. Untuk mempelajari cara memecahkan masalah error pemetaan atribut dengan logging audit mendetail, lihat Error pemetaan atribut umum. Untuk mempelajari harga Logging, lihat Harga Google Cloud Observability.

      Untuk menonaktifkan logging audit mendetail untuk penyedia workforce identity pool, hapus tanda --detailed-audit-logging saat Anda menjalankan gcloud iam workforce-pools providers create. Untuk menonaktifkan logging audit mendetail, Anda juga dapat memperbarui penyedia.

  11. Untuk membuat penyedia, klik Kirim.

Memverifikasi konfigurasi penyedia Anda

Sebelum menguji alur login pengguna akhir, Anda dapat memverifikasi bahwa konfigurasi penyedia Anda sudah benar dan Google Cloud dapat menukar token dengan IdP Anda.

Halaman Validasi atribut penyedia Anda di konsol Google Cloud menyertakan penampil atribut yang memungkinkan Anda menguji konfigurasi secara interaktif dan men-debug ekspresi Common Expression Language (CEL). Anda dapat menggunakan penampil atribut untuk melakukan hal berikut:

  • Melihat atribut mentah yang dikirim dalam pernyataan IdP.
  • Pastikan pemetaan dan kondisi atribut Anda mengubah atribut tersebut dengan benar.
  • Men-debug ekspresi CEL yang kompleks secara real time.

Untuk memverifikasi konfigurasi penyedia Anda, lakukan hal berikut:

  1. Untuk mengaktifkan alur login berbasis browser untuk Workforce Identity Federation, tambahkan https://auth.cloud.google/signin-callback/locations/global/workforcePools/POOL_ID/providers/PROVIDER_ID ke daftar URI pengalihan yang diizinkan IdP Anda.
  2. Di konsol Google Cloud , buka Workforce Identity Pools.

    Buka Workforce Identity Pools
  3. Dari daftar pool, klik nama pool yang ingin Anda verifikasi.
  4. Di halaman Workforce pool details, klik nama IdP yang ingin Anda verifikasi.
  5. Di halaman Provider Details, klik Debug IdP token.
  6. Dalam dialog Login, login ke IdP Anda sebagai pengguna uji coba.

Halaman Validasi atribut penyedia Anda menampilkan atribut yang dipetakan dan hasil kondisi atribut Anda.

Bagian Atribut yang dipetakan dari token IdP Anda menampilkan cara pengisian atribut Google, seperti google.subject, dari token IdP Anda berdasarkan konfigurasi pemetaan Anda. Ikon error akan muncul jika pemetaan salah.

Bagian Kondisi atribut menampilkan hasil boolean dari kondisi Anda. Jika kondisi bernilai false, login akan diblokir.

Untuk melihat token pernyataan lengkap, klik Lihat token lengkap. Bagian ini menampilkan objek JSON mentah dari IdP Anda. Merujuk properti tingkat teratas dalam pemetaan menggunakan format assertion.PROPERTY_NAME.

Mengedit konfigurasi penyedia Anda

Untuk memperbaiki error, Anda dapat mengedit konfigurasi:

  1. Di halaman Validasi atribut penyedia Anda, klik Edit.
  2. Lakukan perubahan yang diperlukan.
  3. Untuk memulai pengujian baru dan melihat hasil yang diperbarui, klik Simpan dan ambil ulang token.

Memberikan peran IAM ke grup

Di bagian ini, Anda akan memberikan peran kepada grup pada resource Google Cloud . Untuk mempelajari lebih lanjut ID principal workforce identity federation, lihat Merepresentasikan pengguna workforce pool dalam kebijakan IAM.

Contoh berikut memberikan peran Storage Admin (roles/storage.admin) kepada pengguna dalam grup Microsoft Entra ID.

gcloud projects add-iam-policy-binding PROJECT_ID \
    --role="roles/storage.admin" \
    --member="principalSet://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/group/GROUP_ID"

Ganti kode berikut:

  • PROJECT_ID: the project ID
  • WORKFORCE_POOL_ID: ID workforce identity pool
  • GROUP_ID: ID grup, yang bergantung pada nilai --extra-attributes-type yang digunakan untuk membuat penyedia workforce identity pool, sebagai berikut:
    • azure-ad-groups-mail: ID grup adalah alamat email—misalnya: admin-group@altostrat.com
    • azure-ad-groups-id: ID grup adalah UUID untuk grup—misalnya: abcdefgh-0123-0123-abcdef

Login dan uji akses

Di bagian ini, Anda akan login sebagai pengguna workforce identity pool dan menguji bahwa Anda memiliki akses ke resource Google Cloud .

Login

Bagian ini menunjukkan cara login sebagai pengguna gabungan dan mengakses resourceGoogle Cloud .

Login konsol (gabungan)

Untuk login ke konsol Google Cloud Workforce Identity Federation, yang juga dikenal sebagai konsol (gabungan), lakukan tindakan berikut:

  1. Buka halaman login konsol (gabungan).

    Buka konsol (gabungan)

  2. Masukkan nama penyedia, dengan format berikut:
    locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
  3. Jika diminta, masukkan kredensial pengguna di Microsoft Entra ID.

    Jika Anda memulai login dengan IdP, gunakan URL berikut untuk URL relai: https://console.cloud.google/.

Login berbasis browser gcloud CLI

Untuk login ke gcloud CLI menggunakan alur login berbasis browser, lakukan langkah berikut:

Membuat file konfigurasi

Jalankan perintah berikut untuk membuat file konfigurasi login:

Linux and macOS

gcloud iam workforce-pools create-login-config \
    locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID \
    --output-file=LOGIN_CONFIG_PATH

Windows (PowerShell)

gcloud iam workforce-pools create-login-config `
    locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID `
    --output-file=LOGIN_CONFIG_PATH

Ganti kode berikut:

  • WORKFORCE_POOL_ID: ID pool Workforce Identity Federation.
  • WORKFORCE_PROVIDER_ID: ID penyedia Workforce Identity Federation.
  • LOGIN_CONFIG_PATH: Jalur untuk menulis file konfigurasi login ke. Contoh, login-config.json.

File konfigurasi login berisi endpoint yang digunakan oleh gcloud CLI untuk mengaktifkan alur autentikasi berbasis browser dan menetapkan audience ke IdP yang dikonfigurasi di penyedia workforce identity pool. File tidak berisi informasi rahasia.

Konten file konfigurasi login akan terlihat seperti berikut:

{
  "universe_domain": "googleapis.com",
  "universe_cloud_web_domain": "cloud.google",
  "type": "external_account_authorized_user_login_config",
  "audience": "//iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID",
  "auth_url": "https://auth.cloud.google/authorize",
  "token_url": "https://sts.googleapis.com/v1/oauthtoken",
  "token_info_url": "https://sts.googleapis.com/v1/introspect"
}

Login menggunakan autentikasi berbasis browser

Arahkan ke file konfigurasi login dengan variabel lingkungan, properti dalam konfigurasi gcloud CLI aktif, atau gunakan secara langsung dengan perintah gcloud auth login:

Variabel lingkungan

Untuk menggunakan file konfigurasi login dengan variabel lingkungan, selesaikan petunjuk berikut:

  1. Tetapkan variabel lingkungan CLOUDSDK_AUTH_LOGIN_CONFIG_FILE ke jalur file konfigurasi login.
  2. Jalankan perintah berikut:

    gcloud auth login
  3. gcloud CLI mereferensikan variabel lingkungan untuk menemukan file konfigurasi login, lalu memulai proses autentikasi. Ikuti alur berbasis browser untuk mengautentikasi dan mengizinkan gcloud CLI mengakses resource atas nama Anda untuk perintah mendatang.

Untuk berhenti menggunakan file konfigurasi login untuk perintah gcloud auth login, hapus variabel lingkungan CLOUDSDK_AUTH_LOGIN_CONFIG_FILE.

Konfigurasi gcloud CLI

Untuk menggunakan file konfigurasi login dengan properti konfigurasi gcloud CLI, selesaikan petunjuk berikut:

  1. Tetapkan properti auth/login_config_file konfigurasi gcloud CLI aktif ke jalur file konfigurasi login dengan perintah berikut:

    gcloud config set auth/login_config_file LOGIN_CONFIG_PATH
  2. Jalankan perintah berikut:

    gcloud auth login
  3. gcloud CLI mereferensikan properti konfigurasi untuk menemukan file konfigurasi login, lalu memulai proses autentikasi. Ikuti alur berbasis browser untuk mengautentikasi dan mengizinkan gcloud CLI mengakses resource atas nama Anda untuk perintah mendatang.

Untuk berhenti menggunakan file konfigurasi login untuk perintah gcloud auth login, hapus setelan properti dengan perintah berikut:

gcloud config unset auth/login_config_file

gcloud auth login

Untuk menggunakan file konfigurasi login secara langsung dengan perintah gcloud auth login, selesaikan petunjuk berikut:

  • Jika Anda menggunakan flag --activate saat membuat file konfigurasi login, jalankan perintah berikut:

    gcloud auth login
  • Jika Anda tidak menggunakan flag --activate saat membuat file konfigurasi login, jalankan perintah berikut:

    Linux and macOS

    gcloud auth login \
        --login-config=LOGIN_CONFIG_PATH

    Windows (PowerShell)

    gcloud auth login `
        --login-config=LOGIN_CONFIG_PATH

    Ganti LOGIN_CONFIG_PATH dengan jalur file konfigurasi login Anda.

Perintah gcloud auth login menyimpan kredensial akses di direktori beranda Anda. Principal yang diautentikasi menjadi principal aktif dalam konfigurasi gcloud CLI aktif Anda. Kecuali diganti, gcloud CLI menggunakan kredensial tersimpan ini untuk mengakses Google Cloud.

Login headless gcloud CLI

Untuk login ke Microsoft Entra ID dengan gcloud CLI, lakukan langkah berikut:

OIDC

  1. Ikuti langkah-langkah di Mengirim permintaan login. Login akun pengguna ke aplikasi Anda dengan Microsoft Entra ID menggunakan OIDC.

  2. Salin token ID dari parameter id_token URL alihan dan simpan ke file di lokasi yang aman di komputer lokal Anda. Pada langkah berikutnya, tetapkan PATH_TO_OIDC_ID_TOKEN ke jalur pada file ini.

  3. Buat file konfigurasi yang mirip dengan contoh di langkah ini dengan menjalankan perintah berikut:

    gcloud iam workforce-pools create-cred-config \
        locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID \
        --subject-token-type=urn:ietf:params:oauth:token-type:id_token \
        --credential-source-file=PATH_TO_OIDC_ID_TOKEN \
        --workforce-pool-user-project=WORKFORCE_POOL_USER_PROJECT \
        --output-file=config.json
    

    Ganti kode berikut:

    • WORKFORCE_POOL_ID: ID workforce identity pool.
    • WORKFORCE_PROVIDER_ID: ID penyedia workforce identity pool.
    • PATH_TO_OIDC_ID_TOKEN: jalur ke lokasi file tempat token IdP disimpan.
    • WORKFORCE_POOL_USER_PROJECT: nomor atau ID project yang digunakan untuk kuota dan penagihan. Akun utama harus memiliki izin serviceusage.services.use di project ini.

    Setelah perintah selesai, file konfigurasi berikut akan dibuat oleh Microsoft Entra ID:

    {
      "type": "external_account",
      "audience": "//iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID",
      "subject_token_type": "urn:ietf:params:oauth:token-type:id_token",
      "token_url": "https://sts.googleapis.com/v1/token",
      "workforce_pool_user_project": "WORKFORCE_POOL_USER_PROJECT",
      "credential_source": {
        "file": "PATH_TO_OIDC_CREDENTIALS"
      }
    }
    
  4. Buka gcloud CLI dan jalankan perintah berikut:

    gcloud auth login --cred-file=PATH_TO_OIDC_CREDENTIALS
    

    Ganti PATH_TO_OIDC_CREDENTIALS dengan jalur ke file output dari langkah sebelumnya.

    Gcloud CLI secara transparan memposting kredensial Anda ke endpoint Layanan Token Keamanan. Di endpoint, token tersebut ditukar dengan token akses Google Cloud sementara.

    Kini Anda dapat menjalankan perintah gcloud CLI ke Google Cloud.

SAML

  1. Buat pengguna login ke aplikasi Microsoft Entra ID Anda dan dapatkan respons SAML.

  2. Simpan respons SAML yang ditampilkan oleh Microsoft Entra ID di lokasi yang aman di komputer lokal Anda, lalu simpan jalurnya sebagai berikut:

    SAML_ASSERTION_PATH=SAML_ASSERTION_PATH
    
  3. Untuk membuat file konfigurasi kredensial, jalankan perintah berikut:

    gcloud iam workforce-pools create-cred-config \
        locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID \
        --subject-token-type=urn:ietf:params:oauth:token-type:saml2 \
        --credential-source-file=SAML_ASSERTION_PATH  \
        --workforce-pool-user-project=PROJECT_ID  \
        --output-file=config.json
    

    Ganti kode berikut:

    • WORKFORCE_PROVIDER_ID: ID penyedia workforce identity pool yang Anda buat sebelumnya dalam panduan ini
    • WORKFORCE_POOL_ID: ID workforce identity pool yang Anda buat sebelumnya dalam panduan ini
    • SAML_ASSERTION_PATH: jalur file pernyataan SAML
    • PROJECT_ID: the project ID

    File konfigurasi yang dihasilkan terlihat mirip dengan berikut:

    {
       "type": "external_account",
       "audience": "//iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID",
       "subject_token_type": "urn:ietf:params:oauth:token-type:saml2",
       "token_url": "https://sts.googleapis.com/v1/token",
       "credential_source": {
         "file": "SAML_ASSERTION_PATH"
       },
       "workforce_pool_user_project": "PROJECT_ID"
    }
    
  4. Untuk login ke gcloud CLI menggunakan pertukaran token Workforce Identity Federation, jalankan perintah berikut:

    gcloud auth login --cred-file=config.json
    

    Kemudian, gcloud CLI secara transparan menukar kredensial Microsoft Entra ID Anda dengan token akses Google Cloud sementara. Token akses memungkinkan Anda mengakses Google Cloud.

    Anda akan melihat output yang mirip dengan berikut ini:

    Authenticated with external account user credentials for:
    [principal://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/subject/USER_ID].
  5. Untuk mencantumkan akun berkredensial dan akun aktif Anda, jalankan perintah berikut:

    gcloud auth list
    

Pengujian Akses

Sekarang Anda memiliki akses ke produk Google Cloud yang mendukung Workforce Identity Federation dan yang aksesnya diberikan kepada Anda. Sebelumnya dalam dokumen ini, Anda memberikan peran Storage Admin (roles/storage.admin) ke semua identitas dalam ID grup yang Anda tentukan di gcloud projects add-iam-policy-binding untuk project TEST_PROJECT_ID.

Kini Anda dapat menguji apakah Anda memiliki akses dengan mencantumkan bucket Cloud Storage.

Konsol (gabungan)

Untuk menguji bahwa Anda memiliki akses menggunakan konsol (gabungan), lakukan langkah berikut:

  • Membuka halaman Cloud Storage

    Buka Cloud Storage

  • Pastikan Anda dapat melihat daftar bucket yang ada untuk TEST_PROJECT_ID.

gcloud CLI

Untuk menguji bahwa Anda memiliki akses menggunakan gcloud CLI, Anda dapat membuat daftar bucket dan objek Cloud Storage untuk project yang memiliki akses ke bucket dan objek tersebut. Untuk melakukannya, jalankan perintah berikut. Akun utama harus memiliki izin serviceusage.services.use pada project yang ditentukan.

gcloud storage ls --project="TEST_PROJECT_ID"

Menghapus pengguna

Workforce Identity Federation membuat metadata dan resource pengguna untuk identitas pengguna gabungan. Jika Anda memilih untuk menghapus pengguna di IdP, Anda juga harus menghapus resource ini secara eksplisit di Google Cloud. Untuk melakukannya, lihat Menghapus pengguna Workforce Identity Federation dan datanya.

Anda mungkin melihat resource terus dikaitkan dengan pengguna yang dihapus. Hal ini karena penghapusan metadata dan resource pengguna memerlukan operasi yang berjalan lama. Setelah Anda memulai penghapusan identitas pengguna, proses yang dimulai pengguna sebelum penghapusan dapat terus berjalan hingga proses selesai atau dibatalkan.

Langkah berikutnya