Akun sosial mengklaim transformasi
Di Azure Active Directory B2C (Azure AD B2C), identitas akun sosial disimpan dalam atribut alternativeSecurityIds
jenis klaim alternativeSecurityIdCollection. Setiap item dalam alternativeSecurityIdCollection menentukan pengeluar sertifikat (nama IdP, seperti facebook.com) dan issuerUserId
, yang merupakan pengidentifikasi pengguna unik untuk pengeluar sertifikat.
"alternativeSecurityIds": [{
"issuer": "google.com",
"issuerUserId": "MTA4MTQ2MDgyOTI3MDUyNTYzMjcw"
},
{
"issuer": "facebook.com",
"issuerUserId": "MTIzNDU="
}]
Artikel ini memberikan contoh bagaimana menggunakan transformasi klaim akun sosial dari skema IEF di Azure AD B2C. Untuk informasi selengkapnya, lihat ClaimsTransformations.
AddItemToAlternativeSecurityIdCollection
Menambahkan AlternativeSecurityId
ke klaim alternativeSecurityIdCollection
. Lihat demo Langsung dari transformasi klaim ini.
Elemen | TransformationClaimType | Jenis Data | Catatan |
---|---|---|---|
InputClaim | Elemen | string | Klaim yang akan ditambahkan ke klaim output. |
InputClaim | collection | alternativeSecurityIdCollection | Klaim yang digunakan oleh transformasi klaim jika tersedia dalam kebijakan. Jika disediakan, transformasi klaim menambahkan item di akhir koleksi. |
OutputClaim | collection | alternativeSecurityIdCollection | Jenis klaim yang dihasilkan setelah transformasi klaim ini telah dipanggil. Koleksi baru yang berisi item baik dari input collection dan item . |
Contoh AddItemToAlternativeSecurityIdCollection
Contoh berikut menautkan identitas sosial baru dengan akun yang sudah ada. Untuk menautkan identitas sosial baru:
AAD-UserReadUsingAlternativeSecurityId
Di profil teknis danAAD-UserReadUsingObjectId
, keluarkan klaim penggunaalternativeSecurityIds
.- Minta pengguna untuk masuk dengan salah satu penyedia identitas yang tidak terkait dengan pengguna ini.
- Menggunakan transformasi klaim CreateAlternativeSecurityId buat jenis klaim alternativeSecurityId baru dengan nama
AlternativeSecurityId2
- Panggil transformasi klaim AddItemToAlternativeSecurityIdCollection untuk menambahkan klaim AlternativeSecurityId2 ke klaim AlternativeSecurityIds yang sudah ada.
- Pertahankan klaim alternativeSecurityIds ke akun pengguna
<ClaimsTransformation Id="AddAnotherAlternativeSecurityId" TransformationMethod="AddItemToAlternativeSecurityIdCollection">
<InputClaims>
<InputClaim ClaimTypeReferenceId="AlternativeSecurityId2" TransformationClaimType="item" />
<InputClaim ClaimTypeReferenceId="AlternativeSecurityIds" TransformationClaimType="collection" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="AlternativeSecurityIds" TransformationClaimType="collection" />
</OutputClaims>
</ClaimsTransformation>
Klaim input:
item:
{ "issuer": "facebook.com", "issuerUserId": "MTIzNDU=" }
kumpulan:
[ { "issuer": "live.com", "issuerUserId": "MTA4MTQ2MDgyOTI3MDUyNTYzMjcw" } ]
Klaim output:
kumpulan:
[ { "issuer": "live.com", "issuerUserId": "MTA4MTQ2MDgyOTI3MDUyNTYzMjcw" }, { "issuer": "facebook.com", "issuerUserId": "MTIzNDU=" } ]
CreateAlternativeSecurityId
Membuat representasi JSON dari properti alternativeSecurityId pengguna yang dapat digunakan dalam panggilan ke ID Microsoft Entra. Lihat demo Langsung dari transformasi klaim ini. Untuk informasi selengkapnya, lihat skema AlternativeSecurityId.
Elemen | TransformationClaimType | Jenis Data | Catatan |
---|---|---|---|
InputClaim | kunci | string | Klaim yang menentukan ID pengguna unik yang digunakan oleh IdP sosial. |
InputClaim | identityProvider | string | Klaim yang menentukan nama IdP akun sosial, seperti facebook.com. |
OutputClaim | alternativeSecurityId | string | Klaim yang dihasilkan setelah transformasi klaim ini telah dipanggil. Berisi informasi tentang identitas pengguna akun sosial. Pengeluar sertifikat adalah nilai identityProvider dari klaim. issuerUserId adalah nilai klaim key dalam format base64. |
Contoh CreateAlternativeSecurityId
Gunakan transformasi klaim ini untuk menghasilkan klaim alternativeSecurityId
. Ini digunakan oleh semua profil teknis IdP sosial, seperti Facebook-OAUTH
. Transformasi klaim berikut menerima ID akun sosial pengguna dan nama IdP. Output profil teknis ini adalah format string JSON yang dapat digunakan dalam layanan direktori Microsoft Entra.
<ClaimsTransformation Id="CreateAlternativeSecurityId" TransformationMethod="CreateAlternativeSecurityId">
<InputClaims>
<InputClaim ClaimTypeReferenceId="issuerUserId" TransformationClaimType="key" />
<InputClaim ClaimTypeReferenceId="identityProvider" TransformationClaimType="identityProvider" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="alternativeSecurityId" TransformationClaimType="alternativeSecurityId" />
</OutputClaims>
</ClaimsTransformation>
- Klaim input:
- kunci: 12334
- identityProvider: Facebook.com
- Klaim output:
- alternativeSecurityId: { "issuer": "facebook.com", "issuerUserId": "MTA4MTQ2MDgyOTI3MDUyNTYzMjcw"}
GetIdentityProvidersFromAlternativeSecurityIdCollectionTransformation
Mengembalikan pengeluar sertifikat dari klaim alternativeSecurityIdCollection ke dalam klaim stringCollection baru. Lihat demo Langsung dari transformasi klaim ini.
Elemen | TransformationClaimType | Jenis Data | Catatan |
---|---|---|---|
InputClaim | alternativeSecurityIdCollection | alternativeSecurityIdCollection | Klaim yang akan digunakan untuk mendapatkan daftar IdP (pengeluar sertifikat). |
OutputClaim | identityProvidersCollection | stringCollection | Jenis klaim yang dihasilkan setelah transformasi klaim ini telah dipanggil. Daftar IdP yang terkait dengan klaim input. |
Contoh GetIdentityProvidersFromAlternativeSecurityIdCollectionTransformation
Transformasi klaim berikut membaca klaim pengguna alternativeSecurityIds dan mengekstrak daftar nama IdP yang terkait dengan akun tersebut. Gunakan output identityProvidersCollection untuk menunjukkan kepada pengguna daftar IdP yang terkait dengan akun. Atau, pada halaman pilihan IdP, filter daftar IdP berdasarkan output klaim identityProvidersCollection. Jadi, pengguna dapat memilih untuk menautkan identitas sosial baru yang belum terkait dengan akun.
<ClaimsTransformation Id="ExtractIdentityProviders" TransformationMethod="GetIdentityProvidersFromAlternativeSecurityIdCollectionTransformation">
<InputClaims>
<InputClaim ClaimTypeReferenceId="alternativeSecurityIds" TransformationClaimType="alternativeSecurityIdCollection" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="identityProviders" TransformationClaimType="identityProvidersCollection" />
</OutputClaims>
</ClaimsTransformation>
Klaim input:
alternativeSecurityIdCollection:
[ { "issuer": "google.com", "issuerUserId": "MTA4MTQ2MDgyOTI3MDUyNTYzMjcw" }, { "issuer": "facebook.com", "issuerUserId": "MTIzNDU=" } ]
Klaim output:
- identityProvidersCollection: [ "facebook.com", "google.com" ]
RemoveAlternativeSecurityIdByIdentityProvider
Menghapus AlternativeSecurityId dari klaim alternativeSecurityIdCollection. Lihat demo Langsung dari transformasi klaim ini.
Elemen | TransformationClaimType | Jenis Data | Catatan |
---|---|---|---|
InputClaim | identityProvider | string | Klaim yang berisi nama IdP yang akan dihapus dari koleksi. |
InputClaim | collection | alternativeSecurityIdCollection | Klaim yang digunakan oleh transformasi klaim. Transformasi klaim menghapus identityProvider dari koleksi. |
OutputClaim | collection | alternativeSecurityIdCollection | Jenis klaim yang dihasilkan setelah transformasi klaim ini telah dipanggil. Koleksi baru, setelah identityProvider dihapus dari koleksi. |
Contoh RemoveAlternativeSecurityIdByIdentityProvider
Contoh berikut melakukan pembatalan tautan identitas sosial baru dengan akun yang sudah ada. Untuk membatalkan tautan identitas sosial:
AAD-UserReadUsingAlternativeSecurityId
Di profil teknis danAAD-UserReadUsingObjectId
, keluarkan klaim penggunaalternativeSecurityIds
.- Minta pengguna untuk memilih akun sosial mana yang akan dihapus dari IdP daftar yang terkait dengan pengguna ini.
- Panggil profil teknis transformasi klaim yang memanggil transformasi klaim RemoveAlternativeSecurityIdByIdentityProvider, yang menghapus identitas sosial yang dipilih, menggunakan nama IdP.
- Pertahankan klaim alternativeSecurityIds ke akun pengguna.
<ClaimsTransformation Id="RemoveAlternativeSecurityIdByIdentityProvider" TransformationMethod="RemoveAlternativeSecurityIdByIdentityProvider">
<InputClaims>
<InputClaim ClaimTypeReferenceId="secondIdentityProvider" TransformationClaimType="identityProvider" />
<InputClaim ClaimTypeReferenceId="AlternativeSecurityIds" TransformationClaimType="collection" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="AlternativeSecurityIds" TransformationClaimType="collection" />
</OutputClaims>
</ClaimsTransformation>
</ClaimsTransformations>
- Klaim input:
- identityProvider: facebook.com
- koleksi: [ { "issuer": "live.com", "issuerUserId": "MTA4MTQ2MDgyOTI3MDUyNTYzMjcw" }, { "pengeluar sertifikat": "facebook.com", "issuerUserId": "MTIzNDU=" } ]
- Klaim output:
- koleksi: [ { "issuer": "live.com", "issuerUserId": "MTA4MTQ2MDgyOTI3MDUyNTYzMjcw" } ]
Langkah berikutnya
- Temukan lebih banyak sampel transformasi klaim pada komunitas repositori GitHub Azure AD B2C