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:

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:
  • emailAddress (atau dimulai dengan emailAddress seperti emailAddress1) IssuerAssignedId harus alamat email yang valid
  • userName (atau nilai lainnya), IssuerAssignedId harus merupakan bagian lokal alamat email yang valid
  • federated, IssuerAssignedId mewakili pengenal unik akun federasi

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: