Freigeben über


Einrichten der Registrierung und Anmeldung mit einem LinkedIn-Konto mithilfe von 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.

Hinweis

In Azure Active Directory B2C sind benutzerdefinierte Richtlinien in erster Linie für komplexe Szenarien konzipiert. Für die meisten Szenarien empfehlen wir die Verwendung von integrierten Benutzerflows. Informieren Sie sich, sofern noch nicht geschehen, unter Tutorial: Erstellen von Benutzerflows und benutzerdefinierten Richtlinien in Azure Active Directory B2C über das Starter Pack für benutzerdefinierte Richtlinien.

Voraussetzungen

Erstellen einer LinkedIn-Anwendung

Um die Anmeldung für Benutzer mit einem LinkedIn-Konto in Azure Active Directory B2C (Azure AD B2C) zu aktivieren, müssen Sie eine Anwendung auf der LinkedIn Developers-Website erstellen. Wenn Sie noch kein LinkedIn-Konto haben, können Sie sich unter https://www.linkedin.com/anmelden.

  1. Melden Sie sich mit den Anmeldeinformationen Ihres LinkedIn-Kontos auf der LinkedIn Developers-Website an.
  2. Wählen Sie Meine Apps aus, und klicken Sie dann auf App erstellen.
  3. Geben Sie den App-Namen, die LinkedIn-Seite, die URL der Datenschutzrichtlinie und das App-Logo ein.
  4. Stimmen Sie den Nutzungsbedingungen der LinkedIn-API zu und klicken Sie auf App erstellen.
  5. Wählen Sie die Registerkarte Authentifizierung aus. Kopieren Sie unter Authentifizierungsschlüssel die Werte für Client-ID und Geheimer Clientschlüssel. Sie benötigen beide, um LinkedIn als Identitätsanbieter in Ihrem Mandanten zu konfigurieren. Der geheime Clientschlüssel ist eine wichtige Sicherheitsanmeldeinformation.
  6. Wählen Sie den Bearbeitungsstift neben Autorisierte Umleitungs-URLs für Ihre App aus, und wählen Sie dann Umleitungs-URL hinzufügen aus. Geben Sie https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.com/oauth2/authresp ein. Wenn Sie eine benutzerdefinierte Domäne verwenden, geben Sie die Zeichenfolge https://your-domain-name/your-tenant-name.onmicrosoft.com/oauth2/authrespein. Ersetzen Sie sie your-tenant-name durch den Namen Ihres Mandanten und your-domain-name durch Ihre benutzerdefinierte Domäne. Sie müssen beim Eingeben Ihres Mandantennamens alle Kleinbuchstaben verwenden, auch wenn der Mandant in Azure AD B2C mit Großbuchstaben definiert ist. Klicken Sie auf Aktualisieren.
  7. Standardmäßig ist Ihre LinkedIn-App nicht für Bereiche im Zusammenhang mit der Anmeldung genehmigt. Um eine Überprüfung anzufordern, wählen Sie die Registerkarte Produkte und dann Mit OpenID Connect mit LinkedIn anmelden aus. Wenn die Überprüfung abgeschlossen ist, werden der Anwendung die erforderlichen Bereiche hinzugefügt.

    Hinweis

    Sie können die Bereiche, die derzeit für Ihre App zulässig sind, auf der Registerkarte Authentifizierung im Abschnitt OAuth 2.0-Bereiche anzeigen.

Konfigurieren von LinkedIn als Identitätsanbieter

  1. Melden Sie sich beim Azure-Portal mit einem Konto an, das mindestens über Administratorrechte des externen Identitätsanbieters verfügt.
  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. Suchen Sie auf der Seite Portaleinstellungen > Verzeichnisse und Abonnements das Azure AD B2C-Verzeichnis in der Liste Verzeichnisname, und klicken Sie dann auf Wechseln.
  4. Wählen Sie "Alle Dienste " in der oberen linken Ecke des Azure-Portals aus, suchen Und wählen Sie Azure AD B2C aus.
  5. Wählen Sie Identitätsanbieter und dann Neuer OpenID Connect-Anbieter aus.
  6. Geben Sie einen Namen ein. Beispiel: LinkedIn-OIDC.
  7. Geben Sie als https://www.linkedin.com/oauth/.well-known/openid-configuration ein.
  8. Geben Sie als Client-ID die Client-ID der LinkedIn-Anwendung ein, die Sie zuvor erstellt haben.
  9. Geben Sie für Geheimer Clientschlüssel den zuvor notierten geheimen Clientschlüssel ein.
  10. Geben Sie als Bereichdie E-Mail-Adresse des openid-Profils ein.
  11. Geben Sie für den AntworttypCode ein.
  12. Geben Sie als Benutzer-IDE-Mail ein.
  13. Geben Sie als Anzeigenamename ein.
  14. Geben Sie als Vornamegiven_name ein.
  15. Geben Sie als Nachnamefamily_name ein.
  16. Geben Sie als E-MailE-Mail ein.
  17. Wählen Sie Speichern aus.

Hinzufügen eines LinkedIn-Identitätsanbieters zu einem Benutzerflow

Zu diesem Zeitpunkt wurde der LinkedIn-Identitätsanbieter eingerichtet, ist aber noch auf keiner der Anmeldeseiten verfügbar. So fügen Sie den LinkedIn-Identitätsanbieter zu einem Benutzerflow hinzu:

  1. Wählen Sie in Ihrem Azure AD B2C-Mandanten Benutzerflüsse aus.
  2. Klicken Sie auf den Benutzerflow, dem Sie den LinkedIn-Identitätsanbieter hinzufügen möchten.
  3. Wählen Sie unter Benutzerdefinierte Identitätsanbieterdie Option LinkedIn-OIDC aus.
  4. Wählen Sie Speichern aus.
  5. Um Ihre Richtlinie zu testen, wählen Sie "Benutzerablauf ausführen" aus.
  6. Wählen Sie für "Anwendung" die Webanwendung mit dem Namen "testapp1" aus, die Sie zuvor registriert haben. Als Antwort-URL sollte https://jwt.ms angezeigt werden.
  7. Wählen Sie die Schaltfläche " Benutzerfluss ausführen " aus.
  8. Wählen Sie auf der Registrierungs- oder Anmeldeseite LinkedIn-OIDC aus, um sich mit einem LinkedIn-Konto anzumelden.

Wenn der Anmeldevorgang erfolgreich ist, wird Ihr Browser zu https://jwt.ms umgeleitet, das den Inhalt des von Azure AD B2C zurückgegebenen Tokens anzeigt.

Erstellen Sie einen Richtlinienschlüssel

Sie müssen den geheimen Clientschlüssel speichern, den Sie zuvor in Ihrem Azure AD B2C-Mandanten aufgezeichnet haben.

  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. Suchen Sie auf der Seite Portaleinstellungen > Verzeichnisse und Abonnements das Azure AD B2C-Verzeichnis in der Liste Verzeichnisname, und klicken Sie dann auf Wechseln.
  4. Wählen Sie "Alle Dienste " in der oberen linken Ecke des Azure-Portals aus, und suchen Sie dann nach Azure AD B2C, und wählen Sie sie aus.
  5. Wählen Sie auf der Seite "Übersicht" die Option "Identity Experience Framework" aus.
  6. Wählen Sie "Richtlinienschlüssel " und dann "Hinzufügen" aus.
  7. Wählen Sie unter "Optionen" die Option Manualaus.
  8. Geben Sie einen Namen für den Richtlinienschlüssel ein. Beispiel: LinkedInSecret. Das Präfix B2C_1A_ wird automatisch dem Namen Des Schlüssels hinzugefügt.
  9. Geben Sie unter Geheimer Schlüssel den geheimen Clientschlüssel ein, den Sie zuvor aufgezeichnet haben.
  10. Wählen Sie für die Schlüsselverwendung die Option Signatureaus.
  11. Klicken Sie auf "Erstellen".

Konfigurieren von LinkedIn als Identitätsanbieter

Damit sich Benutzer mit einem LinkedIn-Konto anmelden können, müssen Sie das Konto als Anspruchsanbieter definieren, mit dem Azure AD B2C über einen Endpunkt kommunizieren kann. Der Endpunkt stellt eine Reihe von Ansprüchen bereit, die von Azure AD B2C verwendet werden, um zu überprüfen, ob ein bestimmter Benutzer authentifiziert wurde.

Definieren Sie ein LinkedIn-Konto als Anspruchsanbieter, indem Sie es dem ClaimsProviders-Element in der Erweiterungsdatei Ihrer Richtlinie hinzufügen.

  1. Öffnen Sie die Datei SocialAndLocalAccounts/TrustFrameworkExtensions.xml in Ihrem Editor. Diese Datei befindet sich im Starter Pack für benutzerdefinierte Richtlinien , das Sie als Teil einer der Voraussetzungen heruntergeladen haben.

  2. Suchen Sie das ClaimsProviders-Element . Wenn sie nicht vorhanden ist, fügen Sie es unter dem Stammelement hinzu.

  3. Fügen Sie einen neuen ClaimsProvider wie folgt hinzu:

    <ClaimsProvider>
      <Domain>linkedin.com</Domain>
      <DisplayName>LinkedIn-OIDC</DisplayName>
      <TechnicalProfiles>
          <TechnicalProfile Id="LinkedIn-OIDC">
          <DisplayName>LinkedIn</DisplayName>
          <Protocol Name="OpenIdConnect" />
          <Metadata>
              <Item Key="METADATA">https://www.linkedin.com/oauth/.well-known/openid-configuration</Item>
              <Item Key="scope">openid profile email</Item>
              <Item Key="HttpBinding">POST</Item>
              <Item Key="response_types">code</Item>
              <Item Key="UsePolicyInRedirectUri">false</Item>
              <Item Key="client_id">Your LinkedIn application client ID</Item>
          </Metadata>
          <CryptographicKeys>
              <Key Id="client_secret" StorageReferenceId="B2C_1A_LinkedInSecret" />
          </CryptographicKeys>
          <InputClaims />
          <OutputClaims>
              <OutputClaim ClaimTypeReferenceId="issuerUserId" PartnerClaimType="email" />
              <OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="given_name" />
              <OutputClaim ClaimTypeReferenceId="surname" PartnerClaimType="family_name" />
              <OutputClaim ClaimTypeReferenceId="identityProvider" DefaultValue="linkedin.com" AlwaysUseDefaultValue="true" />
              <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" AlwaysUseDefaultValue="true" />
          </OutputClaims>
          <OutputClaimsTransformations>
              <OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName" />
              <OutputClaimsTransformation ReferenceId="CreateUserPrincipalName" />
              <OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId" />
              <OutputClaimsTransformation ReferenceId="CreateSubjectClaimFromAlternativeSecurityId" />
          </OutputClaimsTransformations>
          <UseTechnicalProfileForSessionManagement ReferenceId="SM-SocialLogin" />
          </TechnicalProfile>
      </TechnicalProfiles>
    </ClaimsProvider>
    
  4. Ersetzen Sie den Wert von client_id durch die Client-ID der LinkedIn-Anwendung , die Sie zuvor aufgezeichnet haben.

  5. Speichern Sie die Datei.

Hinzufügen einer Benutzerreise

Zum jetzigen Zeitpunkt wurde der Identitätsanbieter eingerichtet, ist aber noch nicht auf einer der Anmeldeseiten verfügbar. Wenn Sie nicht über eine eigene benutzerdefinierte Benutzerreise verfügen, erstellen Sie ein Duplikat einer vorhandenen Benutzerreise für Vorlagen, andernfalls fahren Sie mit dem nächsten Schritt fort.

  1. Öffnen Sie die TrustFrameworkBase.xml Datei aus dem Startpaket.
  2. Suchen und kopieren Sie den gesamten Inhalt des UserJourney-Elements, das Id="SignUpOrSignIn" enthält.
  3. Öffnen Sie TrustFrameworkExtensions.xml und finden Sie das UserJourneys-Element. Wenn das Element nicht vorhanden ist, fügen Sie eins hinzu.
  4. Fügen Sie den gesamten Inhalt des UserJourney-Elements ein, das Sie als untergeordnetes Element des UserJourneys-Elements kopiert haben .
  5. Benennen Sie die ID der User Journey um. Beispiel: Id="CustomSignUpSignIn".

Fügen Sie den Identitätsanbieter zu einem Benutzerablauf hinzu

Nachdem Sie nun über eine Benutzerreise verfügen, fügen Sie den neuen Identitätsanbieter zur Benutzerreise hinzu. Sie fügen zuerst eine Anmeldeschaltfläche hinzu und verknüpfen dann die Schaltfläche mit einer Aktion. Die Aktion ist das technische Profil, das Sie zuvor erstellt haben.

  1. Suchen Sie nach dem Orchestrierungsschrittelement, das Type="CombinedSignInAndSignUp" enthält, oder Type="ClaimsProviderSelection" in der User Journey. Es ist in der Regel der erste Orchestrierungsschritt. Das ClaimsProviderSelections-Element enthält eine Liste von Identitätsanbietern, mit denen sich ein Benutzer anmelden kann. Die Reihenfolge der Elemente steuert die Reihenfolge der Anmeldeschaltflächen, die dem Benutzer angezeigt werden. Fügen Sie ein ClaimsProviderSelection-XML-Element hinzu. Legen Sie den Wert von TargetClaimsExchangeId auf einen benutzerfreundlichen Namen fest.

  2. Fügen Sie im nächsten Orchestrierungsschritt ein ClaimsExchange-Element hinzu. Legen Sie die ID auf den Wert der Zielansprücheaustausch-ID fest. Aktualisieren Sie den Wert von TechnicalProfileReferenceId auf die ID des zuvor erstellten technischen Profils.

Der folgende XML-Code veranschaulicht die ersten beiden Orchestrierungsschritte einer Benutzerreise mit dem Identitätsanbieter:

<OrchestrationStep Order="1" Type="CombinedSignInAndSignUp" ContentDefinitionReferenceId="api.signuporsignin">
  <ClaimsProviderSelections>
    ...
    <ClaimsProviderSelection TargetClaimsExchangeId="LinkedInExchange" />
  </ClaimsProviderSelections>
  ...
</OrchestrationStep>

<OrchestrationStep Order="2" Type="ClaimsExchange">
  ...
  <ClaimsExchanges>
    <ClaimsExchange Id="LinkedInExchange" TechnicalProfileReferenceId="LinkedIn-OIDC" />
  </ClaimsExchanges>
</OrchestrationStep>

Konfigurieren einer Richtlinie für die vertrauende Seite

Die Richtlinie der vertrauenden Seite, z. B. SignUpSignIn.xml, gibt die Benutzerreise an, die Azure AD B2C ausführt. Suchen Sie das DefaultUserJourney-Element in Vertrauende Seite. Aktualisieren Sie die ReferenceId so, dass sie mit der Benutzerreise-ID übereinstimmt, in der Sie den Identitätsanbieter hinzugefügt haben.

Im folgenden Beispiel wird für den CustomSignUpSignIn Benutzerablauf die ReferenceId auf CustomSignUpSignIn festgelegt.

<RelyingParty>
  <DefaultUserJourney ReferenceId="CustomSignUpSignIn" />
  ...
</RelyingParty>

Hochladen der benutzerdefinierten Richtlinie

  1. Melden Sie sich beim Azure-Portal an.
  2. Wählen Sie auf der Portalsymbolleiste das Symbol "Verzeichnis + Abonnement " und dann das Verzeichnis aus, das Ihren Azure AD B2C-Mandanten enthält.
  3. Suchen Sie im Azure-Portal nach Azure AD B2C, und wählen Sie diese Option dann aus.
  4. Wählen Sie unter "Richtlinien" die Option "Identity Experience Framework" aus.
  5. Wählen Sie "Benutzerdefinierte Richtlinie hochladen" aus, und laden Sie dann die beiden geänderten Richtliniendateien in der folgenden Reihenfolge hoch: die Erweiterungsrichtlinie, z.B. TrustFrameworkExtensions.xml, dann die Richtlinie der vertrauenden Seite, z.B. SignUpSignIn.xml.

Teste deine benutzerdefinierte Richtlinie

  1. Wählen Sie die Richtlinie für die vertrauende Seite aus, z. B. B2C_1A_signup_signin.
  2. Wählen Sie für "Anwendung" eine Webanwendung aus, die Sie zuvor registriert haben. Als Antwort-URL sollte https://jwt.ms angezeigt werden.
  3. Wählen Sie die Schaltfläche " Jetzt ausführen " aus.
  4. Wählen Sie auf der Registrierungs- oder Anmeldeseite LinkedIn-OIDC aus, um sich mit einem LinkedIn-Konto anzumelden.

Wenn der Anmeldevorgang erfolgreich ist, wird Ihr Browser zu https://jwt.ms umgeleitet, das den Inhalt des von Azure AD B2C zurückgegebenen Tokens anzeigt.

Migration von v1.0 auf v2.0

LinkedIn hat kürzlich seine APIs von v1.0 auf v2.0 aktualisiert. Um Ihre vorhandene Konfiguration auf die neue Konfiguration zu migrieren, verwenden Sie die Informationen in den folgenden Abschnitten, um die Elemente im technischen Profil zu aktualisieren.

Ersetzen von Elementen in den Metadaten

Aktualisieren Sie im vorhandenen Metadatenelement des TechnicalProfile die folgenden Item-Elemente aus:

<Item Key="ClaimsEndpoint">https://api.linkedin.com/v1/people/~:(id,first-name,last-name,email-address,headline)</Item>
<Item Key="scope">r_emailaddress r_basicprofile</Item>

Nach:

<Item Key="ClaimsEndpoint">https://api.linkedin.com/v2/me</Item>
<Item Key="scope">r_emailaddress r_liteprofile</Item>

Hinzufügen von Elementen zu den Metadaten

Fügen Sie in den Metadaten des TechnicalProfile die folgenden Item-Elemente hinzu:

<Item Key="external_user_identity_claim_id">id</Item>
<Item Key="BearerTokenTransmissionMethod">AuthorizationHeader</Item>
<Item Key="ResolveJsonPathsInJsonTokens">true</Item>

Aktualisieren der OutputClaims

Aktualisieren Sie in den vorhandenen OutputClaims des TechnicalProfile die folgenden OutputClaim-Elemente aus:

<OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="firstName" />
<OutputClaim ClaimTypeReferenceId="surname" PartnerClaimType="lastName" />

Nach:

<OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="firstName.localized" />
<OutputClaim ClaimTypeReferenceId="surname" PartnerClaimType="lastName.localized" />

Hinzufügen neuer OutputClaimsTransformation-Elemente

Fügen Sie in den OutputClaimsTransformations des TechnicalProfile die folgenden OutputClaimsTransformation-Elemente hinzu:

<OutputClaimsTransformation ReferenceId="ExtractGivenNameFromLinkedInResponse" />
<OutputClaimsTransformation ReferenceId="ExtractSurNameFromLinkedInResponse" />

Definieren der neuen Anspruchstransformationen und des Anspruchstyps

Im letzten Schritt haben Sie neue Anspruchstransformationen hinzugefügt, die definiert werden müssen. Um die Anspruchstransformationen zu definieren, fügen Sie sie der Liste der ClaimsTransformations hinzu. Wenn Sie kein ClaimsTransformations-Element in Ihrer Datei definiert haben, fügen Sie die übergeordneten XML-Elemente wie unten dargestellt hinzu. Für die Anspruchstransformationen ist außerdem ein neuer Anspruchstyp mit dem Namen nullStringClaim definiert.

Das BuildingBlocks-Element sollte am Anfang der Datei hinzugefügt werden. Sehen Sie sich die TrustframeworkBase.xml als Beispiel an.

<BuildingBlocks>
  <ClaimsSchema>
    <!-- Claim type needed for LinkedIn claims transformations -->
    <ClaimType Id="nullStringClaim">
      <DisplayName>nullClaim</DisplayName>
      <DataType>string</DataType>
      <AdminHelpText>A policy claim to store unuseful output values from ClaimsTransformations. This claim should not be used in a TechnicalProfiles.</AdminHelpText>
      <UserHelpText>A policy claim to store unuseful output values from ClaimsTransformations. This claim should not be used in a TechnicalProfiles.</UserHelpText>
    </ClaimType>
  </ClaimsSchema>

  <ClaimsTransformations>
    <!-- Claim transformations needed for LinkedIn technical profile -->
    <ClaimsTransformation Id="ExtractGivenNameFromLinkedInResponse" TransformationMethod="GetSingleItemFromJson">
      <InputClaims>
        <InputClaim ClaimTypeReferenceId="givenName" TransformationClaimType="inputJson" />
      </InputClaims>
      <OutputClaims>
        <OutputClaim ClaimTypeReferenceId="nullStringClaim" TransformationClaimType="key" />
        <OutputClaim ClaimTypeReferenceId="givenName" TransformationClaimType="value" />
      </OutputClaims>
    </ClaimsTransformation>
    <ClaimsTransformation Id="ExtractSurNameFromLinkedInResponse" TransformationMethod="GetSingleItemFromJson">
      <InputClaims>
        <InputClaim ClaimTypeReferenceId="surname" TransformationClaimType="inputJson" />
      </InputClaims>
      <OutputClaims>
        <OutputClaim ClaimTypeReferenceId="nullStringClaim" TransformationClaimType="key" />
        <OutputClaim ClaimTypeReferenceId="surname" TransformationClaimType="value" />
      </OutputClaims>
    </ClaimsTransformation>
  </ClaimsTransformations>
</BuildingBlocks>

Abrufen einer E-Mail-Adresse

Im Rahmen der LinkedIn-Migration von v1.0 auf v2.0 ist ein zusätzlicher Aufruf einer anderen API erforderlich, um die E-Mail-Adresse abzurufen. Wenn Sie die E-Mail-Adresse während der Registrierung abrufen müssen, gehen Sie wie folgt vor:

  1. Führen Sie die obigen Schritte aus, um Azure AD B2C den Verbund mit LinkedIn zu ermöglichen, damit sich der Benutzer anmelden kann. Als Teil des Verbunds erhält Azure AD B2C das Zugriffstoken für LinkedIn.

  2. Speichern Sie das LinkedIn-Zugriffstoken in einem Anspruch. Die Anleitung finden Sie hier.

  3. Fügen Sie den folgenden Anspruchsanbieter hinzu, der die Anforderung an die LinkedIn-API /emailAddress sendet. Um diese Anforderung zu autorisieren, benötigen Sie das LinkedIn-Zugriffstoken.

    <ClaimsProvider>
      <DisplayName>REST APIs</DisplayName>
      <TechnicalProfiles>
        <TechnicalProfile Id="API-LinkedInEmail">
          <DisplayName>Get LinkedIn email</DisplayName>
          <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.RestfulProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
          <Metadata>
              <Item Key="ServiceUrl">https://api.linkedin.com/v2/emailAddress?q=members&amp;projection=(elements*(handle~))</Item>
              <Item Key="AuthenticationType">Bearer</Item>
              <Item Key="UseClaimAsBearerToken">identityProviderAccessToken</Item>
              <Item Key="SendClaimsIn">Url</Item>
              <Item Key="ResolveJsonPathsInJsonTokens">true</Item>
          </Metadata>
          <InputClaims>
              <InputClaim ClaimTypeReferenceId="identityProviderAccessToken" />
          </InputClaims>
          <OutputClaims>
              <OutputClaim ClaimTypeReferenceId="email" PartnerClaimType="elements[0].handle~.emailAddress" />
          </OutputClaims>
          <UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
        </TechnicalProfile>
      </TechnicalProfiles>
    </ClaimsProvider>
    
  4. Fügen Sie Ihrer User Journey den folgenden Orchestrierungsschritt hinzu, sodass der API-Anspruchsanbieter ausgelöst wird, wenn sich ein Benutzer über LinkedIn anmeldet. Stellen Sie sicher, dass Sie die Order Nummer entsprechend aktualisieren. Fügen Sie diesen Schritt unmittelbar nach dem Orchestrierungsschritt hinzu, der das technische LinkedIn-Profil auslöst.

    <!-- Extra step for LinkedIn to get the email -->
    <OrchestrationStep Order="3" Type="ClaimsExchange">
      <Preconditions>
        <Precondition Type="ClaimsExist" ExecuteActionsIf="false">
          <Value>identityProvider</Value>
          <Action>SkipThisOrchestrationStep</Action>
        </Precondition>
        <Precondition Type="ClaimEquals" ExecuteActionsIf="false">
          <Value>identityProvider</Value>
          <Value>linkedin.com</Value>
          <Action>SkipThisOrchestrationStep</Action>
        </Precondition>
      </Preconditions>
      <ClaimsExchanges>
        <ClaimsExchange Id="GetEmail" TechnicalProfileReferenceId="API-LinkedInEmail" />
      </ClaimsExchanges>
    </OrchestrationStep>
    

Das Abrufen der E-Mail-Adresse von LinkedIn während der Registrierung ist optional. Wenn Sie sich dafür entscheiden, die E-Mail nicht von LinkedIn zu erhalten, sondern eine bei der Registrierung zu benötigen, muss der Benutzer die E-Mail-Adresse manuell eingeben und validieren.

Ein vollständiges Beispiel für eine Richtlinie, die den LinkedIn-Identitätsanbieter verwendet, finden Sie im Starter Pack für benutzerdefinierte Richtlinien.

Migration von v1.0 auf v2.0

LinkedIn hat kürzlich seine APIs von v1.0 auf v2.0 aktualisiert. Im Rahmen der Migration kann Azure AD B2C während der Registrierung nur den vollständigen Namen des LinkedIn-Benutzers abrufen. Wenn eine E-Mail-Adresse eines der Attribute ist, die bei der Registrierung erfasst werden, muss der Benutzer die E-Mail-Adresse manuell eingeben und validieren.