Jika penyedia identitas (IdP) Anda mendukung System for Cross-domain Identity Management (SCIM), Anda dapat mengonfigurasi IdP untuk menyediakan dan mengelola grup di Google Cloud.
Kemampuan
Dukungan SCIM Workforce Identity Federation menyediakan kemampuan berikut:
Sinkronisasi identitas: Sinkronkan salinan data pengguna hanya baca dari IdP Anda untuk mendapatkan gambaran menyeluruh tentang properti dan keanggotaan pengguna di Google Cloud.
Perataan grup: SCIM memproses grup dari IdP Anda sehingga semua keanggotaan langsung dan tidak langsung (bertingkat) untuk pengguna diratakan dan disinkronkan ke Google Cloud Layanan Keanggotaan Grup (GMS). Kemudian, IAM menggunakan grup yang diratakan ini untuk pemeriksaan kebijakan, sehingga mengatasi batasan ukuran yang sering ditemukan dalam token IdP.
Integrasi Gemini Enterprise: Tenant SCIM mendukung berbagi di Gemini Enterprise. Pengguna dapat membagikan notebook NotebookLM kepada grup menggunakan nama grup, bukan ID objek (UUID) grup. Untuk mempelajari lebih lanjut, lihat Membagikan notebook dengan grup.
Pertimbangan
Saat Anda menggunakan dukungan SCIM Workforce Identity Federation, pertimbangan berikut berlaku:
- Anda harus menyiapkan workforce identity pool dan penyedia sebelum mengonfigurasi tenant SCIM.
- Setiap workforce identity pool hanya mendukung satu tenant SCIM. Untuk mengonfigurasi tenant SCIM baru di workforce identity pool yang sama, Anda harus menghapus tenant yang ada terlebih dahulu. Saat menghapus tenant SCIM, Anda memiliki dua opsi:
- Penghapusan sementara (Default): Menghapus tenant SCIM akan memulai periode penghapusan sementara selama 30 hari. Selama waktu ini, tenant disembunyikan dan tidak dapat digunakan, dan Anda tidak dapat membuat tenant SCIM baru di workforce identity pool yang sama.
- Penghapusan permanen: Untuk menghapus tenant SCIM secara permanen dan langsung,
gunakan flag
--hard-deletedengan perintah penghapusan. Tindakan ini tidak dapat diurungkan dan memungkinkan Anda membuat tenant SCIM baru di kumpulan identitas tenaga kerja yang sama segera setelah penghapusan selesai. Atau, Anda dapat membuat workforce identity pool baru dan tenant SCIM baru atau menggunakan workforce identity pool yang sebelumnya belum dikonfigurasi dengan tenant SCIM.
- Saat menggunakan SCIM, Anda memetakan atribut di penyedia workload identity pool dan tenant SCIM. Atribut
google.subjectharus merujuk secara unik ke identitas yang sama. Anda menentukangoogle.subjectdi penyedia kumpulan identitas tenaga kerja menggunakan flag--attribute-mappingdan di tenant SCIM menggunakan flag--claim-mapping. Memetakan nilai identitas yang tidak unik dapat menyebabkan Google Cloud memperlakukan identitas IdP yang berbeda sebagai identitas yang sama. Akibatnya, akses yang diberikan ke satu identitas pengguna atau grup dapat diperluas ke identitas lain, tetapi mencabut akses dari satu identitas mungkin tidak menghapusnya dari semua identitas. - Untuk menggunakan SCIM dalam memetakan grup, tetapkan
--scim-usage=enabled-for-groups. Saat Anda memetakan grup menggunakan SCIM, pemetaan grup apa pun yang ditentukan di penyedia pool identitas tenaga kerja akan diabaikan. Saat merujuk ke grup yang dikelola SCIM, atribut yang dipetakan adalahgoogle.group, bukangoogle.groups.google.groupshanya merujuk pada grup yang dipetakan token. - Saat menggunakan SCIM, atribut berbasis token yang dipetakan dengan
--attribute-mappingmasih dapat digunakan untuk autentikasi dan dalam ID pokok. - Untuk konfigurasi Microsoft Entra ID, Anda tidak boleh menggunakan
flag
--extended-attributessaat membuat penyedia workforce identity pool.
Memetakan penyedia OIDC dan SAML ke konfigurasi SCIM
Harus ada konsistensi antara pemetaan atribut dalam konfigurasi penyedia kumpulan identitas tenaga kerja (--attribute-mapping) dan pemetaan klaim di tenant SCIM (--claim-mapping). Atribut IdP pokok yang digunakan untuk mengisi google.subject (untuk pengguna) harus sama, baik dibaca dari klaim token maupun atribut SCIM.
Jika pemetaan ini tidak konsisten, pengguna mungkin dapat login, tetapi tidak akan dikenali sebagai anggota grup yang disediakan SCIM. Misalnya, jika
penyedia menggunakan assertion.email untuk google.subject, tenant
SCIM juga harus menggunakan atribut SCIM yang setara
(misalnya, user.emails[0].value) untuk google.subject.
Tabel berikut memberikan contoh referensi untuk memetakan klaim token IdP umum ke atribut SCIM:
| Atribut Google | Pemetaan penyedia workforce identity pool (Token) | Pemetaan tenant SCIM (SCIM) |
|---|---|---|
google.subject |
assertion.oid |
user.externalId |
google.subject |
assertion.email |
user.emails[0].value |
google.subject |
assertion.email.lowerAscii() |
user.emails[0].value.lowerAscii() |
google.subject |
assertion.preferred_username |
user.userName |
google.subject |
assertion.sub |
Tidak kompatibel |
google.group |
T/A (Dipetakan menggunakan SCIM) | group.externalId |
Endpoint yang didukung dan tidak didukung
Endpoint protokol SCIM standar berikut didukung:
/Users: mengelola resource pengguna. Operasi yang didukung:Create,Get,Update,Delete,Patch, danPut./Groups: mengelola resource grup. Operasi yang didukung:Create,Get,Update,Delete, danPatch. MetodePUTtidak didukung untuk grup./Schemas: mengambil informasi skema./ServiceProviderConfig: mengambil konfigurasi penyedia layanan.
Endpoint protokol SCIM berikut tidak didukung:
/Me/Bulk/Search/ResourceTypes
Batasan
Bagian berikut menjelaskan batasan dan penyimpangan penerapan SCIM Federasi Identitas Tenaga Kerja dari spesifikasi SCIM (RFC 7643 dan 7644).
Batasan fitur protokol
Dukungan filter: Saat Anda mencantumkan pengguna atau grup menggunakan endpoint
/Usersatau/Groups, ekspresi filter hanya mendukung operatoreq(sama dengan). Anda dapat menggabungkan beberapa filtereqdenganand. Operator filter SCIM lainnya, sepertico(berisi) atausw(diawali dengan), tidak didukung.Penomoran halaman: IAM SCIM API tidak mendukung penomoran halaman standar untuk mencantumkan pengguna atau grup.
startIndex: parameter ini selalu1. API menampilkan hingga 100 hasil terlepas dari nilai yang Anda berikan untukstartIndex.itemsPerPage: jumlah maksimum resource yang ditampilkan dalam satu respons adalah 100.totalResults: API tidak menampilkan jumlah total sebenarnya dari resource yang cocok. KolomtotalResultsdalam respons selalu sama dengan jumlah item yang ditampilkan dalam respons tersebut, dengan maksimum 100.
Batasan perilaku SCIM
ID yang tidak dapat diubah: Nilai atribut SCIM yang dipetakan ke
google.subjectataugoogle.groupdiperlakukan sebagai ID yang tidak dapat diubah dalam Google Cloud. Jika perlu mengubah nilai ini, Anda harus menghapus pengguna atau grup secara permanen dari IdP, lalu membuatnya kembali dengan nilai baru.Persyaratan email tunggal: Agar sinkronisasi SCIM berhasil, setiap pengguna harus memiliki tepat satu alamat email berjenis
work. Penyediaan atau update akan gagal jika IdP Anda mengirim beberapa email atau jika satu email yang diberikan tidak diketik sebagaiwork.Transformasi yang tidak peka huruf besar/kecil: Transformasi Common Expression Language (CEL) terbatas didukung untuk pemetaan klaim SCIM. Hanya
.lowerAscii()yang didukung untuk perbandingan yang tidak peka huruf besar/kecil untukuser.userNamedanuser.emails[0].value.
Batasan atribut
Bagian berikut menjelaskan dukungan atribut untuk pengguna, grup, dan ekstensi skema pengguna perusahaan.
Atribut pengguna
Tabel berikut menjelaskan dukungan untuk atribut pengguna:
| Atribut | Sub-atribut | Didukung | Batasan |
|---|---|---|---|
userName |
T/A | Ya | T/A |
name |
formatted, familyName, givenName, middleName, honorificPrefix, honorificSuffix |
Ya | T/A |
displayName |
T/A | Ya | T/A |
nickName |
T/A | Ya | T/A |
profileUrl |
T/A | Ya | T/A |
title |
T/A | Ya | T/A |
userType |
T/A | Ya | T/A |
preferredLanguage |
T/A | Ya | T/A |
locale |
T/A | Ya | T/A |
timezone |
T/A | Ya | T/A |
active |
T/A | Ya | T/A |
password |
T/A | Tidak | T/A |
emails |
display, type, value, primary |
Ya | Hanya jenis email work yang didukung. |
phoneNumbers |
display, type, value, primary |
Ya | T/A |
ims |
display, type, value |
Ya | T/A |
photos |
display, type, value |
Ya | T/A |
addresses |
formatted, streetAddress, locality, region, postalCode, country |
Ya | T/A |
groups |
T/A | Tidak | T/A |
entitlements |
display, type, value |
Ya | T/A |
roles |
type, value |
Ya | display tidak didukung. |
x509Certificates |
type, value |
Ya | display tidak didukung. |
Atribut grup
Tabel berikut menjelaskan dukungan untuk atribut kelompok:
| Atribut | Sub-atribut yang didukung |
|---|---|
displayName |
T/A |
externalId |
T/A |
members |
value, type, $ref, display |
Atribut ekstensi skema pengguna perusahaan
Tabel berikut menjelaskan dukungan untuk ekstensi skema pengguna perusahaan:
| Atribut | Sub-atribut yang didukung |
|---|---|
employeeNumber |
T/A |
costCenter |
T/A |
organization |
T/A |
division |
T/A |
department |
T/A |
manager |
value, $ref, displayName |