Freigeben über


Definieren von benutzerdefinierten Attributen in Azure Active Directory B2C

Von Bedeutung

Ab dem 1. Mai 2025 steht Azure AD B2C nicht mehr für neue Kunden zur Verfügung. Weitere Informationen finden Sie in unseren HÄUFIG gestellten Fragen.

Bevor Sie beginnen, verwenden Sie die Auswahl eines Richtlinientyps oben auf dieser Seite, um den Typ der Richtlinie auszuwählen, die Sie einrichten. Azure Active Directory B2C bietet zwei Methoden zum Definieren der Benutzerinteraktion mit Ihren Anwendungen: vordefinierte Benutzerflows oder vollständig konfigurierbare benutzerdefinierte Richtlinien. Die Schritte, die in diesem Artikel erforderlich sind, unterscheiden sich für jede Methode.

Im Artikel Hinzufügen von Ansprüchen und Anpassen von Benutzereingaben mithilfe benutzerdefinierter Richtlinien erfahren Sie, wie Sie integrierte Benutzerprofilattribute verwenden. In diesem Artikel aktivieren Sie ein benutzerdefiniertes Attribut in Ihrem Azure Active Directory B2C-Verzeichnis (Azure AD B2C). Später können Sie das neue Attribut gleichzeitig als benutzerdefinierten Anspruch in Benutzerflows oder benutzerdefinierten Richtlinien verwenden.

Ihr Azure AD B2C-Verzeichnis verfügt über einen integrierten Satz von Attributen. Sie müssen jedoch häufig eigene Attribute erstellen, um Ihr spezifisches Szenario zu verwalten, z. B. wenn:

  • Eine kundenorientierte Anwendung muss ein loyaltyId-Attribut beibehalten.
  • Ein Identitätsanbieter verfügt über eine eindeutige Benutzer-ID, uniqueUserGUID, die beibehalten werden muss.
  • Eine benutzerdefinierte User Journey muss den Status des Benutzers, migrationStatus, beibehalten, damit andere Logik ausgeführt werden kann.

Die Begriffe Erweiterungseigenschaft, benutzerdefiniertes Attribut und benutzerdefinierter Anspruch beziehen sich im Kontext dieses Artikels auf denselben Aspekt. Der Name variiert je nach Kontext, z. B. Anwendung, Objekt oder Richtlinie.

Mit Azure AD B2C können Sie den Satz von Attributen erweitern, die in den einzelnen Benutzerkonten gespeichert sind. Sie können diese Attribute auch mithilfe der Microsoft Graph-API lesen und schreiben.

Voraussetzungen

Erstellen eines benutzerdefinierten Attributs

  1. Melden Sie sich beim Azure-Portal mindestens als administrierende Person für Benutzerflowattribute mit externer ID Ihres Azure AD B2C-Mandanten an.
  2. Wenn Sie Zugriff auf mehrere Mandanten haben, wählen Sie das Symbol Einstellungen im Menü oben aus, um über das Menü Verzeichnisse + Abonnements zu Ihrem Azure AD B2C-Mandanten zu wechseln.
  3. Wählen Sie "Alle Dienste " in der oberen linken Ecke des Azure-Portals aus, suchen Und wählen Sie Azure AD B2C aus.
  4. Wählen Sie Benutzerattribute und dann Hinzufügen aus.
  5. Geben Sie einen Namen für das benutzerdefinierte Attribut an (z. B. "ShoeSize")
  6. Wählen Sie einen Datentyp aus. Es sind nur String, Boolean und Int verfügbar.
  7. Geben Sie optional eine Beschreibung zu Informationszwecken ein.
  8. Wählen Sie "Erstellen" aus.

Das benutzerdefinierte Attribut ist jetzt in der Liste der Benutzerattribute und für die Verwendung in Ihren Benutzerflows verfügbar. Ein benutzerdefiniertes Attribut wird nur erstellt, wenn es zum ersten Mal in einem Benutzerflow verwendet wird, und nicht, wenn Sie es der Liste der Benutzerattribute hinzufügen.

Verwenden eines benutzerdefinierten Attributs in Ihrem Benutzerflow

  1. Wählen Sie in Ihrem Azure AD B2C-Mandanten Benutzerflüsse aus.
  2. Wählen Sie eine Richtlinie aus (z. B. „B2C_1_SignupSignin“), um sie zu öffnen.
  3. Wählen Sie Benutzerattribute und dann das benutzerdefinierte Attribut aus (z. B. "ShoeSize"). Wählen Sie Speichern aus.
  4. Wählen Sie Anwendungsansprüche und dann das benutzerdefinierte Attribut aus.
  5. Wählen Sie Speichern aus.

Nachdem Sie einen neuen Benutzer mit dem Benutzerflow erstellt haben, können Sie die Funktion Benutzerflow ausführen für den Benutzerflow verwenden, um die Kundenerfahrung zu überprüfen. Sie sollten jetzt ShoeSize in der Liste der Attribute sehen, die während der Registrierungsjourney gesammelt wurden, und es in dem Token sehen, das an Ihre Anwendung zurückgesendet wird.

App für Azure AD B2C-Erweiterungen

Erweiterungsattribute können nur für ein Anwendungsobjekt registriert werden, auch wenn sie Daten für einen Benutzer enthalten können. ** Das Erweiterungsattribut wird an die Anwendung angefügt, die b2c-extensions-app genannt wird. Ändern Sie diese Anwendung nicht, da sie von Azure AD B2C zum Speichern von Benutzerdaten verwendet wird. Sie finden diese Anwendung unter Azure AD B2C, App-Registrierungen.

Abrufen der Anwendungs-ID der Erweiterungs-App

  1. Melden Sie sich beim Azure-Portal an.
  2. Wenn Sie Zugriff auf mehrere Mandanten haben, wählen Sie das Symbol Einstellungen im Menü oben aus, um über das Menü Verzeichnisse + Abonnements zu Ihrem Azure AD B2C-Mandanten zu wechseln.
  3. Wählen Sie im linken Menü Azure AD B2C aus. Oder wählen Sie "Alle Dienste " aus, und suchen Sie nach Azure AD B2C.
  4. Wählen Sie App-Registrierungen und dann Alle Anwendungen aus.
  5. Wählen Sie die b2c-extensions-app. Do not modify. Used by AADB2C for storing user data. Anwendung aus.
  6. Kopieren Sie die Anwendungs-ID. Beispiel: 00001111-aaaa-2222-bbbb-3333cccc4444.

Abrufen der Anwendungseigenschaften der Erweiterungs-App

  1. Melden Sie sich beim Azure-Portal an.
  2. Wenn Sie Zugriff auf mehrere Mandanten haben, wählen Sie das Symbol Einstellungen im Menü oben aus, um über das Menü Verzeichnisse + Abonnements zu Ihrem Azure AD B2C-Mandanten zu wechseln.
  3. Wählen Sie im linken Menü Azure AD B2C aus. Oder wählen Sie "Alle Dienste " aus, und suchen Sie nach Azure AD B2C.
  4. Wählen Sie App-Registrierungen und dann Alle Anwendungen aus.
  5. Wählen Sie die b2c-extensions-app aus. Nicht ändern. Wird von AADB2C zum Speichern von Benutzerdaten verwendet. Anwendung.
  6. Kopieren Sie die folgenden Bezeichner in die Zwischenablage und speichern Sie sie:
    • Anwendungs-ID. Beispiel: 00001111-aaaa-2222-bbbb-3333cccc4444.
    • Objekt-ID. Beispiel: aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb.

Ändern der benutzerdefinierten Richtlinie

Um benutzerdefinierte Attribute in Ihrer Richtlinie zu aktivieren, geben Sie die Anwendungs-ID und die Anwendungsobjekt-ID in den Metadaten des technischen Profils AAD-Common an. Das technische Profil AAD-Common* befindet sich im technischen Basisprofil Microsoft Entra ID und bietet Unterstützung für die Microsoft Entra Benutzerverwaltung. Andere technische Profile von Microsoft Entra ID enthalten AAD-Common, um dessen Konfiguration zu nutzen. Überschreiben Sie das technische Profil AAD-Common in der Erweiterungsdatei.

  1. Öffnen Sie die Erweiterungsdatei Ihrer Richtlinie. Beispiel: SocialAndLocalAccounts/TrustFrameworkExtensions.xml.

  2. Suchen Sie das ClaimsProviders-Element. Fügen Sie dem ClaimsProviders-Element einen neuen ClaimsProvider hinzu.

  3. Fügen Sie die zuvor aufgezeichnete Anwendungs-ID zwischen dem öffnenden <Item Key="ClientId"> und dem schließenden </Item> Element ein.

  4. Fügen Sie die zuvor aufgezeichnete Application ObjectID zwischen dem öffnenden <Item Key="ApplicationObjectId"> und dem schließenden </Item> Element ein.

    <!-- 
    <ClaimsProviders> -->
      <ClaimsProvider>
        <DisplayName>Azure Active Directory</DisplayName>
        <TechnicalProfiles>
          <TechnicalProfile Id="AAD-Common">
            <Metadata>
              <!--Insert b2c-extensions-app application ID here, for example: 00001111-aaaa-2222-bbbb-3333cccc4444-->  
              <Item Key="ClientId"></Item>
              <!--Insert b2c-extensions-app application ObjectId here, for example: aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb-->
              <Item Key="ApplicationObjectId"></Item>
            </Metadata>
          </TechnicalProfile>
        </TechnicalProfiles> 
      </ClaimsProvider>
    <!-- 
    </ClaimsProviders> -->
    

Hochladen Ihrer benutzerdefinierten Richtlinie

  1. Melden Sie sich beim Azure-Portal an.
  2. Wenn Sie Zugriff auf mehrere Mandanten haben, wählen Sie das Symbol Einstellungen im Menü oben aus, um über das Menü Verzeichnisse + Abonnements zu Ihrem Azure AD B2C-Mandanten zu wechseln.
  3. Wählen Sie "Alle Dienste " in der oberen linken Ecke des Azure-Portals aus, und suchen Sie dann nach App-Registrierungen, und wählen Sie sie aus.
  4. Wählen Sie "Identity Experience Framework" aus.
  5. Wählen Sie " Benutzerdefinierte Richtlinie hochladen" aus, und laden Sie dann die geänderten TrustFrameworkExtensions.xml Richtliniendateien hoch.

Hinweis

Wenn das technische Microsoft Entra ID-Profil zum ersten Mal den Anspruch auf das Verzeichnis persistent speichert, wird geprüft, ob das benutzerdefinierte Attribut existiert. Andernfalls wird das benutzerdefinierte Attribut erstellt.

Erstellen eines benutzerdefinierten Attributs über das Azure-Portal

Von integrierten und benutzerdefinierten Profilen werden dieselben Erweiterungsattribute genutzt. Wenn Sie benutzerdefinierte Attribute über die Portaloberfläche hinzufügen, werden diese Attribute mithilfe der b2c-extensions-app registriert, die in jedem B2C-Mandanten vorhanden ist.

Sie können diese Attribute mithilfe der Portal-Benutzeroberfläche erstellen, bevor oder nachdem Sie sie in Ihren benutzerdefinierten Richtlinien verwendet haben. Wenn Sie ein Attribut loyaltyId im Portal erstellen, müssen Sie wie folgt darauf verweisen:

Name Verwendet in
extension_loyaltyId Benutzerdefinierte Richtlinie
extension_<b2c-extensions-app-guid>_loyaltyId Microsoft Graph-API

Hinweis

Wenn Sie ein benutzerdefiniertes Attribut in benutzerdefinierten Richtlinien verwenden, müssen Sie der Anspruchstyp-ID extension_ das Präfix voranstellen, damit die richtige Datenzuordnung im Azure AD B2C-Verzeichnis erfolgen kann.

Im folgenden Beispiel wird die Verwendung von benutzerdefinierten Attributen in einer benutzerdefinierten Azure AD B2C-Richtlinienanspruchsdefinition veranschaulicht.

<BuildingBlocks>
  <ClaimsSchema>
    <ClaimType Id="extension_loyaltyId">
      <DisplayName>Loyalty Identification</DisplayName>
      <DataType>string</DataType>
      <UserHelpText>Your loyalty number from your membership card</UserHelpText>
      <UserInputType>TextBox</UserInputType>
    </ClaimType>
  </ClaimsSchema>
</BuildingBlocks>

Das folgende Beispiel veranschaulicht die Verwendung eines benutzerdefinierten Attributs in der benutzerdefinierten Azure AD B2C-Richtlinie in einem technischen Profil, einer Eingabe, einer Ausgabe und persistent gespeicherten Ansprüchen.

<InputClaims>
  <InputClaim ClaimTypeReferenceId="extension_loyaltyId"  />
</InputClaims>
<PersistedClaims>
  <PersistedClaim ClaimTypeReferenceId="extension_loyaltyId" />
</PersistedClaims>
<OutputClaims>
  <OutputClaim ClaimTypeReferenceId="extension_loyaltyId" />
</OutputClaims>

Verwalten von Erweiterungsattributen über Microsoft Graph

Sie können Microsoft Graph verwenden, um die benutzerdefinierten Attribute zu erstellen und zu verwalten und dann die Werte für einen Benutzer festzulegen. Erweiterungsattribute werden auch als Verzeichnis- oder Microsoft Entra-Erweiterungen bezeichnet.

Benutzerdefinierte Attribute (Verzeichniserweiterungen) in der Microsoft Graph-API werden mithilfe der Konvention extension_{appId-without-hyphens}_{extensionProperty-name} benannt, wobei {appId-without-hyphens} die bereinigte Version der appId (im Azure AD B2C-Portal als Client-ID bezeichnet) für die b2c-extensions-app ist, die nur aus den Zeichen 0-9 und A-Z besteht. Wenn die appId der b2c-extensions-app Anwendung 11112222-bbbb-3333-cccc-4444dddd5555 lautet und der Attributname loyaltyId ist, dann heißt das benutzerdefinierte Attribut extension_25883231668a43a780b25685c3f874bc_loyaltyId.

Erfahren Sie, wie Sie Erweiterungsattribute in Ihrem Azure AD B2C-Mandanten mithilfe der Microsoft Graph-API verwalten.

Erweiterungsattribut entfernen

Im Gegensatz zu integrierten Attributen können benutzerdefinierte Attribute entfernt werden. Die Werte der Erweiterungsattribute können auch entfernt werden.

Von Bedeutung

Bevor Sie das benutzerdefinierte Attribut entfernen, legen Sie für jedes Konto im Verzeichnis den Wert des Erweiterungsattributs auf nullfest. Auf diese Weise entfernen Sie explizit die Werte des Erweiterungsattributs. Entfernen Sie anschließend das Erweiterungsattribut selbst. Benutzerdefinierte Attribute können mithilfe der Microsoft Graph-API abgefragt werden.

Führen Sie die folgenden Schritte aus, um ein benutzerdefiniertes Attribut aus einem Benutzerflow in Ihrem Mandanten zu entfernen:

  1. Melden Sie sich beim Azure-Portal mindestens als administrierende Person für Benutzerflowattribute mit externer ID Ihres Azure AD B2C-Mandanten an.
  2. Stellen Sie sicher, dass Sie das Verzeichnis verwenden, das Ihren Azure AD B2C-Mandanten enthält:
    1. Wählen Sie auf der Symbolleiste des Portals das Symbol Verzeichnisse und Abonnements aus.
    2. Klicken Sie in den Portal-Einstellungen | Verzeichnisse + Abonnements, suchen Sie in der Liste Verzeichnisname nach Ihrem Azure AD B2C-Verzeichnis, und wählen Sie dann Wechseln aus
  3. Wählen Sie "Alle Dienste " in der oberen linken Ecke des Azure-Portals aus, suchen Und wählen Sie Azure AD B2C aus.
  4. Wählen Sie Benutzerattribute aus, und wählen Sie dann das Attribut aus, das Sie löschen möchten.
  5. Wählen Sie Löschen und dann Ja aus, um den Löschvorgang zu bestätigen.

Verwenden Sie die Microsoft Graph-API , um die benutzerdefinierten Attribute zu verwalten.

Nächste Schritte

Erfahren Sie, wie Sie Ansprüche hinzufügen und Benutzereingaben mithilfe benutzerdefinierter Richtlinien anpassen. In diesem Beispiel wird der integrierte Anspruch „city“ verwendet. Um ein benutzerdefiniertes Attribut zu verwenden, ersetzen Sie "city" durch Ihre eigenen benutzerdefinierten Attribute.