Megosztás a következőn keresztül:


Microsoft Entra technikai profil definiálása egyéni Azure Active Directory B2C szabályzatban

Fontos

2025. május 1-jére az Azure AD B2C már nem lesz elérhető az új ügyfelek számára. További információ a GYIK-ben.

Megjegyzés:

Az Azure Active Directory B2C-ben az egyéni szabályzatok elsősorban összetett helyzetek kezelésére szolgálnak. A legtöbb forgatókönyv esetében javasoljuk, hogy beépített felhasználói folyamatokat használjon. Ha még nem tette meg, ismerkedjen meg az egyéni szabályzatok kezdőcsomagjával az Egyéni szabályzatok használatának első lépései az Active Directory B2C-ben.

Azure Active Directory B2C (Azure AD B2C) támogatja a Microsoft Entra felhasználókezelést. Ez a cikk a szabványosított protokollt támogató jogcímszolgáltatóval való kapcsolattartás technikai profiljának sajátosságait ismerteti.

Protokoll

A Protokoll elem névattribútumát a következőre kell állítani Proprietary: . A handler attribútumnak tartalmaznia kell a protokollkezelő szerelvény Web.TPEngine.Providers.AzureActiveDirectoryProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=nullteljes nevét.

Az egyéni szabályzat kezdőcsomagját követő Microsoft Entra technikai profilok tartalmazzák az AAD-Common technikai profilt. A Microsoft Entra technikai profilok nem határozzák meg a protokollt, mert a protokoll az AAD-Common technikai profilban van konfigurálva:

  • AAD-UserReadUsingAlternativeSecurityId és AAD-UserReadUsingAlternativeSecurityId-NoError – Keressen egy közösségi fiókot a címtárban.
  • AAD-UserWriteUsingAlternativeSecurityId – Új közösségi fiók létrehozása.
  • AAD-UserReadUsingEmailAddress – Keressen egy helyi fiókot a címtárban.
  • AAD-UserWriteUsingLogonEmail – Új helyi fiók létrehozása.
  • AAD-UserWritePasswordUsingObjectId – Helyi fiók jelszavának frissítése.
  • AAD-UserWriteProfileUsingObjectId – Helyi vagy közösségi fiók felhasználói profiljának frissítése.
  • AAD-UserReadUsingObjectId – Helyi vagy közösségi fiók felhasználói profiljának olvasása.
  • AAD-UserWritePhoneNumberUsingObjectId – Helyi vagy közösségi fiók MFA-telefonszámának írása

Az alábbi példa az AAD-Common technikai profilt mutatja be:

<TechnicalProfile Id="AAD-Common">
  <DisplayName>Azure Active Directory</DisplayName>
  <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.AzureActiveDirectoryProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />

  <CryptographicKeys>
    <Key Id="issuer_secret" StorageReferenceId="B2C_1A_TokenSigningKeyContainer" />
  </CryptographicKeys>

  <!-- We need this here to suppress the SelfAsserted provider from invoking SSO on validation profiles. -->
  <IncludeInSso>false</IncludeInSso>
  <UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
</TechnicalProfile>

Bemeneti jogcímek

Az InputClaims elem tartalmaz egy jogcímet, amely egy fiók keresésére vagy egy új létrehozására szolgál. Az összes Microsoft Entra technikai profil bemeneti jogcímgyűjteményében pontosan egy InputClaim elemnek kell lennie. Előfordulhat, hogy a szabályzatban definiált jogcím nevét le kell képeznie a Microsoft Entra ID-ban meghatározott névre.

Meglévő felhasználói fiók olvasásához, frissítéséhez vagy törléséhez a bemeneti jogcím egy olyan kulcs, amely egyedileg azonosítja a fiókot a Microsoft Entra címtárban. Például: objectId, userPrincipalName, signInNames.emailAddress, signInNames.userName vagy alternativeSecurityId.

Új felhasználói fiók létrehozásához a bemeneti jogcím egy kulcs, amely egyedileg azonosítja a helyi vagy összevont fiókot. Például: helyi fiók: signInNames.emailAddress vagy signInNames.userName. Összevont fiók esetén: az alternativeSecurityId.

Az InputClaimsTransformations elem tartalmazhat bemeneti jogcím-átalakítási elemek gyűjteményét, amelyek a bemeneti jogcím módosítására vagy új létrehozására szolgálnak.

OutputClaims

Az OutputClaims elem a Microsoft Entra technikai profil által visszaadott jogcímek listáját tartalmazza. Előfordulhat, hogy a szabályzatban definiált jogcím nevét le kell képeznie a Microsoft Entra ID-ban meghatározott névre. Olyan jogcímeket is felvehet, amelyeket a Microsoft Entra azonosító nem ad vissza, ha beállítja az attribútumot DefaultValue .

A OutputClaimsTransformations elem olyan OutputClaimsTransformation elemek gyűjteményét tartalmazhatja, amelyek a kimeneti jogcímek módosítására vagy újak létrehozására szolgálnak.

Az AAD-UserWriteUsingLogonEmail technikai profil például létrehoz egy helyi fiókot, és a következő jogcímeket adja vissza:

  • objectId, amely az új fiók azonosítója
  • newUser, amely azt jelzi, hogy a felhasználó új
  • authenticationSource, amely a hitelesítést a következőre állítja be: localAccountAuthentication
  • userPrincipalName, amely az új fiók egyszerű felhasználóneve
  • signInNames.emailAddress, amely a fiók bejelentkezési neve, hasonlóan az e-mail bemeneti jogcímhez
<OutputClaims>
  <OutputClaim ClaimTypeReferenceId="objectId" />
  <OutputClaim ClaimTypeReferenceId="newUser" PartnerClaimType="newClaimsPrincipalCreated" />
  <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="localAccountAuthentication" />
  <OutputClaim ClaimTypeReferenceId="userPrincipalName" />
  <OutputClaim ClaimTypeReferenceId="signInNames.emailAddress" />
</OutputClaims>

PersistedClaims

A PersistedClaims elem tartalmazza az összes olyan értéket, amelyet a Microsoft Entra azonosítónak meg kell őriznie a szabályzat ClaimsSchema szakaszában már definiált jogcímtípusok és a Microsoft Entra attribútum neve közötti lehetséges leképezési információkkal.

Az új helyi fiókot létrehozó AAD-UserWriteUsingLogonEmail technikai profil a következő jogcímeket őrzi meg:

  <PersistedClaims>
    <!-- Required claims -->
    <PersistedClaim ClaimTypeReferenceId="email" PartnerClaimType="signInNames.emailAddress" />
    <PersistedClaim ClaimTypeReferenceId="newPassword" PartnerClaimType="password"/>
    <PersistedClaim ClaimTypeReferenceId="displayName" DefaultValue="unknown" />
    <PersistedClaim ClaimTypeReferenceId="passwordPolicies" DefaultValue="DisablePasswordExpiration" />

    <!-- Optional claims. -->
    <PersistedClaim ClaimTypeReferenceId="givenName" />
    <PersistedClaim ClaimTypeReferenceId="surname" />
  </PersistedClaims>

A jogcím neve a Microsoft Entra attribútum neve, kivéve, ha a PartnerClaimType attribútum meg van adva, amely tartalmazza a Microsoft Entra attribútum nevét.

A művelet követelményei

  • Az összes Microsoft Entra technikai profilhoz pontosan egy InputClaim elemnek kell lennie a jogcímcsomagban.
  • A felhasználói profil attribútumait ismertető cikk a bemeneti jogcímekben, a kimeneti jogcímekben és a megőrzött jogcímekben használható támogatott Azure AD B2C felhasználói profilattribútumokat ismerteti.
  • Ha a művelet vagy Write , DeleteClaimsakkor egy PersistedClaims elemben is meg kell jelennie.
  • A userPrincipalName jogcím értékének formátumának kell lennie: user@tenant.onmicrosoft.com.
  • A displayName jogcím kötelező, és nem lehet üres sztring.

Microsoft Entra technikai profil műveletei

Olvasás

Az olvasási művelet egyetlen felhasználói fiók adatait olvassa be. A következő technikai profil a felhasználói fiók adatait olvassa be a felhasználó objectId használatával:

<TechnicalProfile Id="AAD-UserReadUsingObjectId">
  <Metadata>
    <Item Key="Operation">Read</Item>
    <Item Key="RaiseErrorIfClaimsPrincipalDoesNotExist">true</Item>
  </Metadata>
  <IncludeInSso>false</IncludeInSso>
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="objectId" Required="true" />
  </InputClaims>
  <OutputClaims>

    <!-- Required claims -->
    <OutputClaim ClaimTypeReferenceId="strongAuthenticationPhoneNumber" />

    <!-- Optional claims -->
    <OutputClaim ClaimTypeReferenceId="signInNames.emailAddress" />
    <OutputClaim ClaimTypeReferenceId="displayName" />
    <OutputClaim ClaimTypeReferenceId="otherMails" />
    <OutputClaim ClaimTypeReferenceId="givenName" />
    <OutputClaim ClaimTypeReferenceId="surname" />
  </OutputClaims>
  <IncludeTechnicalProfile ReferenceId="AAD-Common" />
</TechnicalProfile>

Írj!

Az írási művelet egyetlen felhasználói fiókot hoz létre vagy frissít. A következő technikai profil új közösségi fiókot hoz létre:

<TechnicalProfile Id="AAD-UserWriteUsingAlternativeSecurityId">
  <Metadata>
    <Item Key="Operation">Write</Item>
    <Item Key="RaiseErrorIfClaimsPrincipalAlreadyExists">true</Item>
    <Item Key="UserMessageIfClaimsPrincipalAlreadyExists">You are already registered, please press the back button and sign in instead.</Item>
  </Metadata>
  <IncludeInSso>false</IncludeInSso>
  <InputClaimsTransformations>
    <InputClaimsTransformation ReferenceId="CreateOtherMailsFromEmail" />
  </InputClaimsTransformations>
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="AlternativeSecurityId" PartnerClaimType="alternativeSecurityId" Required="true" />
  </InputClaims>
  <PersistedClaims>
    <!-- Required claims -->
    <PersistedClaim ClaimTypeReferenceId="alternativeSecurityId" />
    <PersistedClaim ClaimTypeReferenceId="userPrincipalName" />
    <PersistedClaim ClaimTypeReferenceId="mailNickName" DefaultValue="unknown" />
    <PersistedClaim ClaimTypeReferenceId="displayName" DefaultValue="unknown" />

    <!-- Optional claims -->
    <PersistedClaim ClaimTypeReferenceId="otherMails" />
    <PersistedClaim ClaimTypeReferenceId="givenName" />
    <PersistedClaim ClaimTypeReferenceId="surname" />
  </PersistedClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="objectId" />
    <OutputClaim ClaimTypeReferenceId="newUser" PartnerClaimType="newClaimsPrincipalCreated" />
    <OutputClaim ClaimTypeReferenceId="otherMails" />
  </OutputClaims>
  <IncludeTechnicalProfile ReferenceId="AAD-Common" />
  <UseTechnicalProfileForSessionManagement ReferenceId="SM-AAD" />
</TechnicalProfile>

DeleteClaims

A DeleteClaims művelet törli az információkat a jogcímek megadott listájából. A következő technikai profil törli a jogcímeket:

<TechnicalProfile Id="AAD-DeleteClaimsUsingObjectId">
  <Metadata>
    <Item Key="Operation">DeleteClaims</Item>
  </Metadata>
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="objectId" Required="true" />
  </InputClaims>
  <PersistedClaims>
    <PersistedClaim ClaimTypeReferenceId="objectId" />
    <PersistedClaim ClaimTypeReferenceId="Verified.strongAuthenticationPhoneNumber" PartnerClaimType="strongAuthenticationPhoneNumber" />
  </PersistedClaims>
  <OutputClaims />
  <IncludeTechnicalProfile ReferenceId="AAD-Common" />
</TechnicalProfile>

DeleteClaimsPrincipal

A DeleteClaimsPrincipal művelet egyetlen felhasználói fiókot töröl a címtárból. A következő technikai profil töröl egy felhasználói fiókot a címtárból az egyszerű felhasználónév használatával:

<TechnicalProfile Id="AAD-DeleteUserUsingObjectId">
  <Metadata>
    <Item Key="Operation">DeleteClaimsPrincipal</Item>
  </Metadata>
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="objectId" Required="true" />
  </InputClaims>
  <OutputClaims/>
  <IncludeTechnicalProfile ReferenceId="AAD-Common" />
</TechnicalProfile>

A következő technikai profil törli a közösségi felhasználói fiókot a használatával alternativeSecurityId:

<TechnicalProfile Id="AAD-DeleteUserUsingAlternativeSecurityId">
  <Metadata>
    <Item Key="Operation">DeleteClaimsPrincipal</Item>
  </Metadata>
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="alternativeSecurityId" Required="true" />
  </InputClaims>
  <OutputClaims/>
  <IncludeTechnicalProfile ReferenceId="AAD-Common" />
</TechnicalProfile>

Metadaták

Jellemző Kötelező Leírás
Művelet Igen A végrehajtandó művelet. Lehetséges értékek: Read, Write, DeleteClaimsvagy DeleteClaimsPrincipal.
RaiseErrorIfClaimsPrincipalDoesNotExist Nem Hibaüzenet riasztása, ha a felhasználói objektum nem létezik a címtárban. Lehetséges értékek: true vagy false.
RaiseErrorIfClaimsPrincipalAlreadyExists Nem Hibaüzenet riasztása, ha a felhasználói objektum már létezik. Lehetséges értékek: true vagy false. Ezek a metaadatok csak az írási műveletre vonatkoznak.
ApplicationObjectId Nem A bővítményattribútumok alkalmazásobjektum-azonosítója. Érték: Egy alkalmazás ObjectId. További információ: Egyéni attribútumok használata.
Ügyfélazonosító Nem A bérlő harmadik félként való eléréséhez szükséges ügyfél-azonosító. További információ: Egyéni attribútumok használata egyéni profilszerkesztési szabályzatban
IncludeClaimResolvingInClaimsHandling Nem A bemeneti és kimeneti jogcímek esetében meghatározza, hogy a jogcímfeloldás szerepel-e a műszaki profilban. Lehetséges értékek: truevagy false (alapértelmezett). Ha egy jogcímfeloldót szeretne használni a műszaki profilban, állítsa be a következőre true: .

Felhasználói felület elemei

A következő beállításokkal konfigurálható a hiba esetén megjelenő hibaüzenet. A metaadatokat az önérvényesített műszaki profilban kell konfigurálni. A hibaüzenetek honosíthatók.

Jellemző Kötelező Leírás
UserMessageIfClaimsPrincipalAlreadyExists Nem Ha hibát kell jelezni (lásd: RaiseErrorIfClaimsPrincipalAlreadyExists attribútum leírása), adja meg a felhasználónak megjelenítendő üzenetet, ha már létezik felhasználói objektum.
UserMessageIfClaimsPrincipalDoesNotExist Nem Ha hibát kell jelezni (lásd a RaiseErrorIfClaimsPrincipalDoesNotExist attribútum leírását), adja meg azt az üzenetet, amely megjelenik a felhasználó számára, ha a felhasználói objektum nem létezik.

Következő lépések

Tekintse meg a következő cikket, például a Microsoft Entra technikai profil használatát: