Atribut profil pengguna
Profil pengguna direktori Azure Active Directory B2C (Azure AD B2C) Anda dilengkapi dengan sekumpulan atribut bawaan, seperti nama belakang, nama keluarga, kota, kode pos, dan nomor telepon. Anda dapat memperluas profil pengguna dengan data aplikasi Anda sendiri tanpa perlu penyimpanan data eksternal.
Microsoft Graph API mendukung sebagian besar atribut yang dapat Anda gunakan dengan Azure Artikel ini menjelaskan atribut profil pengguna yang didukung Azure AD B2C. Ini juga mencatat atribut yang tidak didukung Microsoft Graph, dan atribut Microsoft Graph API yang tidak boleh digunakan Azure AD B2C.
Penting
Anda tidak boleh menggunakan atribut bawaan atau ekstensi untuk menyimpan data pribadi sensitif, seperti kredensial akun, nomor identifikasi pemerintah, data pemegang kartu, data akun keuangan, informasi layanan kesehatan, atau informasi latar belakang sensitif.
Anda juga dapat berintegrasi dengan sistem eksternal. Misalnya, Anda dapat menggunakan Azure AD B2C untuk autentikasi, tetapi mendelegasikan ke manajemen hubungan pelanggan eksternal (CRM) atau database loyalitas pelanggan sebagai sumber otoritatif data pelanggan. Untuk informasi selengkapnya, lihat solusi profil jarak jauh.
Jenis sumber daya pengguna Microsoft Entra
Profil pengguna direktori Azure AD B2C mendukung atribut jenis sumber daya pengguna yang tercantum dalam tabel di bawah ini. Ini memberikan informasi berikut tentang setiap atribut:
- Nama atribut yang digunakan oleh Azure AD B2C (diikuti dengan nama Microsoft Graph dalam tanda kurung, jika berbeda)
- Jenis data atribut
- Deskripsi atribut
- Apakah atribut tersedia di portal Azure
- Apakah atribut dapat digunakan dalam alur pengguna
- Apakah atribut dapat digunakan dalam profil teknis MICROSOFT Entra ID kebijakan kustom dan di bagian mana (<InputClaims>, <OutputClaims>, atau <PersistedClaims>)
Nama | Jenis Tanggal | Deskripsi | Tersedia di portal Azure | Digunakan dalam alur pengguna | Digunakan dalam kebijakan kustom |
---|---|---|---|---|---|
accountEnabled | Boolean | Apakah akun pengguna diaktifkan atau dinonaktifkan: benar jika akun diaktifkan, salah jika tidak diaktifkan. | Ya | Tidak | Persisted, Output |
ageGroup | String | Grup usia pengguna. Nilai yang mungkin: null, Undefined, Minor, Adult, NotAdult. | Ya | Tidak | Persisted, Output |
alternativeSecurityId (Identitas) | String | Satu identitas pengguna dari penyedia identitas eksternal. | Tidak | Tidak | Input, Persisted, Output |
alternativeSecurityIds (Identitas) | kumpulan securityId alternatif | Kumpulan identitas pengguna dari IdP eksternal. | Tidak | Tidak | Persisted, Output |
kota | String | Kota tempat tinggal pengguna.. Panjang maksimum 128. | Ya | Ya | Persisted, Output |
consentProvidedForMinor | String | Apakah persetujuan telah diberikan untuk anak di bawah umur. Nilai yang diizinkan: null, granted, denied, atau notRequired. | Ya | Tidak | Persisted, Output |
negara | String | Negara/wilayah tempat tinggal pengguna.. Misalnya: AS atau Inggris. Panjang maksimum 128. | Ya | Ya | Persisted, Output |
createdDateTime | WaktuTanggal | Tanggal objek pengguna dibuat. Baca saja. | Tidak | Tidak | Persisted, Output |
creationType | String | Jika akun pengguna dibuat sebagai akun lokal untuk penyewa Azure Active Directory B2C, nilainya adalah LocalAccount atau nameCoexistence. Baca saja. | Tidak | Tidak | Persisted, Output |
dateOfBirth | Date | Tanggal lahir. | Tidak | Tidak | Persisted, Output |
departemen | String | Nama departemen tempat pengguna bekerja. Panjang maksimum 64. | Ya | Tidak | Persisted, Output |
displayName | String | Nama tampilan untuk pengguna. Panjang maksimum 256. <> karakter tidak diperbolehkan. | Ya | Ya | Persisted, Output |
facsimileTelephoneNumber1 | String | Nomor telepon mesin faks bisnis pengguna. | Ya | Tidak | Persisted, Output |
givenName | String | Nama yang diberikan (nama depan) pengguna. Panjang maksimum 64. | Ya | Ya | Persisted, Output |
jobTitle | String | Jabatan pengguna. Panjang maksimum 128. | Ya | Ya | Persisted, Output |
immutableId | String | Pengidentifikasi yang biasanya digunakan untuk pengguna yang dimigrasikan dari Active Directory lokal. | Tidak | Tidak | Persisted, Output |
legalAgeGroupClassification | String | Klasifikasi kelompok usia dewasa. Baca-saja dan dihitung berdasarkan properti ageGroup dan consentProvidedForMinor. Nilai yang diizinkan: null, minorWithOutParentalConsent, minorWithParentalConsent, minorNoParentalConsentRequired, notAdult, dan adult. | Ya | Tidak | Persisted, Output |
legalCountry1 | String | Negara/Wilayah untuk tujuan hukum. | Tidak | Tidak | Persisted, Output |
mailNickName | String | Alias email untuk pengguna. Panjang maksimum 64. | Tidak | Tidak | Persisted, Output |
seluler (mobilePhone) | String | Nomor telepon seluler utama untuk pengguna. Panjang maksimum 64. | Ya | Tidak | Persisted, Output |
netId | String | ID Net. | Tidak | Tidak | Persisted, Output |
objectId | String | Pengidentifikasi unik global (GUID) yang merupakan pengidentifikasi unik bagi pengguna. Contoh: 12345678-9abc-def0-1234-56789abcde. Baca saja, Tak bisa diubah. | Baca saja | Ya | Input, Persisted, Output |
otherMails | Koleksi string | Daftar alamat email lain untuk pengguna. Contoh: ["bob@contoso.com", "Robert@fabrikam.com"]. CATATAN: Karakter aksen tidak diizinkan. | Ya (Email alternatif) | Tidak | Persisted, Output |
kata sandi | String | Kata sandi untuk akun lokal selama pembuatan pengguna. | Tidak | Tidak | Dipertahankan |
passwordPolicies | String | Kebijakan kata sandi. Ini adalah string yang terdiri dari nama kebijakan yang berbeda dipisahkan oleh koma. Misalnya, "DisablePasswordExpiration, DisableStrongPassword". | Tidak | Tidak | Persisted, Output |
physicalDeliveryOfficeName (officeLocation) | String | Lokasi kantor di tempat bisnis pengguna. Panjang maksimum 128. | Ya | Tidak | Persisted, Output |
Kode Pos | String | Kode pos untuk alamat pos pengguna. Kode pos khusus untuk negara/wilayah pengguna. Di Amerika Serikat, atribut ini berisi kode pos. Panjang maksimum 40. | Ya | Tidak | Persisted, Output |
preferredLanguage | String | Bahasa pilihan untuk pengguna. Format bahasa pilihan didasarkan pada RFC 4646. Namanya adalah kombinasi dari kode budaya huruf kecil dua huruf ISO 639 yang terkait dengan bahasa, dan kode subkultur huruf besar dua huruf ISO 3166 yang terkait dengan negara atau wilayah. Misalnya: en-US, atau es-ES. | Tidak | Tidak | Persisted, Output |
refreshTokensValidFromDateTime (signInSessionsValidFromDateTime) | WaktuTanggal | Setiap token refresh yang dikeluarkan sebelum waktu ini tidak valid, dan aplikasi mendapatkan kesalahan saat menggunakan token refresh yang tidak valid untuk memperoleh token akses baru. Dalam hal ini, aplikasi perlu memperoleh token refresh baru dengan membuat permintaan ke titik akhir otorisasi. Baca-saja. | Tidak | Tidak | Hasil |
signInNames (Identitas) | String | Nama masuk unik pengguna akun lokal dari semua jenis di direktori. Gunakan atribut ini untuk mendapatkan pengguna dengan nilai masuk tanpa menentukan jenis akun lokal. | Tidak | Tidak | Input |
signInNames.userName (Identitas) | String | Nama pengguna unik pengguna akun lokal di direktori. Gunakan atribut ini untuk membuat atau mendapatkan pengguna dengan nama pengguna masuk tertentu. Menentukan atribut ini di PersistedClaims saja selama operasi Patch menghapus jenis signInNames lainnya. Jika Anda ingin menambahkan jenis signInNames baru, Anda juga perlu mempertahankan signInNames yang sudah ada. CATATAN: Karakter aksen tidak diizinkan dalam nama pengguna. | Tidak | Tidak | Input, Persisted, Output |
signInNames.phoneNumber (Identitas) | String | Nama pengguna unik pengguna akun lokal di direktori. Gunakan atribut ini untuk membuat atau mendapatkan pengguna dengan nomor telepon rincian masuk tertentu. Menentukan atribut ini di PersistedClaims saja selama operasi Patch menghapus jenis signInNames lainnya. Jika Anda ingin menambahkan jenis signInNames baru, Anda juga perlu mempertahankan signInNames yang sudah ada. | Tidak | Tidak | Input, Persisted, Output |
signInNames.emailAddress (Identitas) | String | Alamat email unik pengguna akun lokal di direktori. Gunakan atribut ini untuk membuat atau mendapatkan pengguna dengan alamat email masuk tertentu. Menentukan atribut ini di PersistedClaims saja selama operasi Patch menghapus jenis signInNames lainnya. Jika Anda ingin menambahkan jenis signInNames baru, Anda juga perlu mempertahankan signInNames yang sudah ada. | Tidak | Tidak | Input, Persisted, Output |
state | String | Negara bagian atau provinsi di alamat pengguna. Panjang maksimum 128. | Ya | Ya | Persisted, Output |
streetAddress | String | Alamat jalan tempat bisnis pengguna. Panjang maksimum 1024. | Ya | Ya | Persisted, Output |
strongAuthentication AlternativePhoneNumber1 | String | Nomor telepon sekunder pengguna, digunakan untuk autentikasi multifaktor. | Ya | Tidak | Persisted, Output |
strongAuthenticationEmailAddress1 | String | Alamat SMTP untuk pengguna. Contoh: "bob@contoso.com" Atribut ini digunakan untuk masuk dengan kebijakan nama pengguna, untuk menyimpan alamat email pengguna. Alamat email lalu digunakan dalam alur reset kata sandi. Karakter aksen tidak diperbolehkan dalam atribut ini. | Ya | Tidak | Persisted, Output |
strongAuthenticationPhoneNumber2 | String | Nomor telepon utama pengguna, digunakan untuk autentikasi multifaktor. | Ya | Tidak | Persisted, Output |
surname | String | Nama depan pengguna (nama keluarga atau nama belakang). Panjang maksimum 64. | Ya | Ya | Persisted, Output |
telephoneNumber (entri pertama businessPhones) | String | Nomor telepon utama tempat bisnis pengguna. | Ya | Tidak | Persisted, Output |
userPrincipalName | String | Nama prinsipal pengguna (UPN) dari pengguna. UPN adalah nama untuk masuk berbasis Internet untuk pengguna berdasarkan standar Internet RFC 822. Domain harus ada di kumpulan penyewa dari domain terverifikasi. Properti ini diperlukan ketika akun dibuat. Tak bisa diubah. | Tidak | Tidak | Input, Persisted, Output |
usageLocation | String | Diperlukan untuk pengguna yang diberi lisensi karena persyaratan hukum untuk memeriksa ketersediaan layanan di negara/wilayah. Tidak dapat diubah ke null. Kode dua huruf negara/wilayah (standar ISO 3166). Misalnya, AS, JP, dan GB. | Ya | Tidak | Persisted, Output |
userType | String | Nilai string yang dapat digunakan untuk mengklasifikasikan jenis pengguna di direktori Anda. Nilai harus berupa Anggota. Baca-saja. | Baca saja | Tidak | Persisted, Output |
userState (externalUserState)3 | String | Hanya untuk akun Microsoft Entra B2B, dan menunjukkan apakah undangan tersebut TertundaAcceptance atau Diterima. | Tidak | Tidak | Persisted, Output |
userStateChangedOn (externalUserStateChangeDateTime)2 | WaktuTanggal | Menunjukkan tanda waktu untuk perubahan terbaru pada properti UserState. | Tidak | Tidak | Persisted, Output |
1 Tidak didukung oleh Microsoft Graph
2 Untuk informasi selengkapnya, lihat Atribut nomor telepon MFA
3 Tidak boleh digunakan dengan Azure AD B2C
Atribut yang diperlukan
Untuk membuat akun pengguna di direktori Azure AD B2C, berikan atribut yang diperlukan berikut ini:
Identitas - Dengan setidaknya satu entitas (akun lokal atau federasi).
Profil kata sandi - Jika Anda membuat akun lokal, berikan profil kata sandi.
Atribut nama tampilan
displayName
adalah nama yang akan ditampilkan dalam manajemen pengguna portal Azure untuk pengguna, dan dalam token akses yang dikembalikan Azure AD B2C ke aplikasi. Properti ini diperlukan.
Atribut identitas
Akun pelanggan, yang dapat berupa konsumen, mitra, atau warga negara, dapat dikaitkan dengan jenis identitas berikut:
- Identitas lokal - Nama pengguna dan kata sandi disimpan secara lokal di direktori Azure AD B2C. Kami sering menyebut identitas ini sebagai "akun lokal."
- Identitas gabungan - Juga dikenal sebagai akun sosial atau perusahaan, identitas pengguna dikelola oleh IdP gabungan seperti Facebook, Microsoft, ADFS, atau Salesforce.
Pengguna dengan akun pelanggan dapat masuk dengan beberapa identitas. Misalnya, nama pengguna, email, ID karyawan, ID pemerintah, dan lain-lain. Satu akun dapat memiliki beberapa identitas, baik lokal maupun sosial, dengan kata sandi yang sama.
Dalam Microsoft Graph API, identitas lokal dan federasi disimpan dalam atribut identities
pengguna, yang berdasarkan jenis objectIdentity. Kumpulan identities
mewakili set identitas yang digunakan untuk masuk ke akun pengguna. Kumpulan ini memungkinkan pengguna untuk masuk ke akun pengguna dengan identitas terkait. Atribut identitas dapat berisi hingga 10 objek objectIdentity . Setiap objek berisi properti berikut:
Nama | Tipe | Deskripsi |
---|---|---|
signInType | string | Menentukan jenis rincian masuk pengguna di direktori Anda. Untuk akun lokal: emailAddress , emailAddress1 , emailAddress2 , emailAddress3 , userName , atau jenis lainnya yang Anda inginkan. Akun sosial harus diatur ke federated . |
penerbit | string | Menentukan pengeluar sertifikat identitas. Untuk akun lokal (di mana signInType tidak federated ), properti ini adalah nama domain default penyewa B2C lokal, misalnya contoso.onmicrosoft.com . Untuk identitas sosial (dengan signInType adalah federated ) nilainya adalah nama pengeluar sertifikat, misalnya facebook.com |
issuerAssignedId | string | Menentukan pengidentifikasi unik yang ditetapkan untuk pengguna oleh pengeluar sertifikat. Kombinasi pengeluar sertifikat dan issuerAssignedId harus unik dalam penyewa Anda. Untuk akun lokal, ketika signInType diatur ke emailAddress atau userName , itu mewakili nama masuk untuk pengguna.Saat signInType diatur ke:
|
Cuplikan JSON berikut menunjukkan atribut Identitas , dengan identitas akun lokal dengan nama masuk, alamat email sebagai masuk, dan dengan identitas sosial.
"identities": [
{
"signInType": "userName",
"issuer": "contoso.onmicrosoft.com",
"issuerAssignedId": "johnsmith"
},
{
"signInType": "emailAddress",
"issuer": "contoso.onmicrosoft.com",
"issuerAssignedId": "jsmith@yahoo.com"
},
{
"signInType": "federated",
"issuer": "facebook.com",
"issuerAssignedId": "5eecb0cd"
}
]
Untuk identitas federasi, tergantung penyedia identitas, issuerAssignedId adalah nilai unik untuk pengguna tertentu per aplikasi atau akun pengembangan. Konfigurasikan kebijakan Azure AD B2C dengan ID aplikasi yang sama dengan yang ditetapkan penyedia sosial atau aplikasi lain dalam akun pengembangan yang sama.
Properti profil kata sandi
Untuk identitas lokal, atribut passwordProfile diperlukan, dan berisi kata sandi pengguna. Atribut forceChangePasswordNextSignIn
menunjukkan apakah pengguna harus mengatur ulang kata sandi saat masuk berikutnya. Untuk menangani pengaturan ulang kata sandi paksa, gunakan instruksi dalam menyiapkan alur reset kata sandi paksa.
Untuk identitas federasi (sosial), atribut passwordProfile tidak diperlukan.
"passwordProfile" : {
"password": "password-value",
"forceChangePasswordNextSignIn": false
}
Atribut kebijakan kata sandi
Kebijakan kata sandi Azure AD B2C (untuk akun lokal) didasarkan pada kebijakan kekuatan kata sandi kuat ID Microsoft Entra. Kebijakan pendaftaran atau masuk dan reset kata sandi Azure AD B2C memerlukan kekuatan kata sandi yang kuat ini, dan kata sandi yang tidak kedaluwarsa.
Dalam skenario migrasi pengguna, jika akun yang ingin Anda migrasikan memiliki kekuatan sandi yang lebih lemah daripada kekuatan kata sandi yang kuat yang diberlakukan oleh Azure AD B2C, Anda dapat menonaktifkan persyaratan kata sandi yang kuat. Untuk mengubah kebijakan kata sandi default, atur atribut passwordPolicies
ke DisableStrongPassword
. Misalnya, Anda dapat mengubah permintaan pengguna yang dibuat sebagai berikut:
"passwordPolicies": "DisablePasswordExpiration, DisableStrongPassword"
Atribut nomor telepon MFA
Saat menggunakan telepon untuk autentikasi multifaktor (MFA), ponsel digunakan untuk memverifikasi identitas pengguna. Untuk menambahkan nomor telepon baru secara terprogram, perbarui, dapatkan, atau hapus nomor telepon, menggunakan metode autentikasi telepon MS Graph API.
Di kebijakan kustom Azure AD B2C, nomor telepon tersedia melalui jenis klaim strongAuthenticationPhoneNumber
.
Atribut ekstensi
Setiap aplikasi yang berhadapan dengan pelanggan memiliki persyaratan unik untuk mengumpulkan informasi. Penyewa Azure AD B2C Anda dilengkapi dengan set informasi bawaan yang disimpan dalam properti, seperti Nama Depan, Nama Belakang, dan Kode Pos. Dengan Azure AD B2C, Anda dapat memperluas set properti yang disimpan di setiap akun pelanggan. Untuk informasi selengkapnya, lihat Menambahkan atribut pengguna dan mengkustomisasi input pengguna di Azure Active Directory B2C
Atribut ekstensi memperluas skema objek pengguna di direktori. Atribut ekstensi hanya dapat didaftarkan pada objek aplikasi, meskipun mungkin berisi data untuk pengguna. Atribut ekstensi dilampirkan ke aplikasi yang disebut b2c-extensions-app
. Jangan ubah aplikasi ini, karena digunakan oleh Azure AD B2C untuk menyimpan data pengguna. Anda dapat menemukan aplikasi ini di bawah Microsoft Entra Pendaftaran aplikasi. Pelajari selengkapnya tentang Azure AD B2Cb2c-extensions-app
.
Catatan
- Anda dapat menulis hingga 100 atribut ekstensi ke akun pengguna mana pun.
- Jika aplikasi b2c-extensions-app dihapus, atribut ekstensi tersebut dihapus dari semua pengguna bersama dengan data apa pun yang ada di dalamnya.
- Jika atribut ekstensi dihapus oleh aplikasi, itu akan dihapus dari semua akun pengguna dan nilainya dihapus.
Atribut ekstensi dalam Graph API diberi nama dengan menggunakan konvensi extension_ApplicationClientID_AttributeName
, di mana:
ApplicationClientID
adalah ID Aplikasi (klien) aplikasib2c-extensions-app
. Pelajari cara menemukan aplikasi ekstensi.AttributeName
adalah nama atribut ekstensi.
ID Aplikasi (klien) saat digunakan untuk membuat nama atribut ekstensi tidak menyertakan tanda hubung. Contohnya:
"extension_831374b3bd5041bfaa54263ec9e050fc_loyaltyNumber": "212342"
Jenis data berikut ini didukung saat menentukan atribut dalam ekstensi skema:
Jenis | Keterangan |
---|---|
Boolean | Nilai yang mungkin: benar atau salah. |
WaktuTanggal | Harus ditentukan dalam format ISO 8601. Nilai disimpan dalam UTC. |
Bilangan bulat | Nilai 32-bit. |
String | Maksimal 256 karakter. |
Langkah berikutnya
Pelajari selengkapnya tentang atribut ekstensi: