Azure Active Directory B2C kullanarak bir Salesforce hesabı ile kaydolma ve oturum açma ayarlama

Başlamadan önce, yapılandırmakta olduğunuz ilke türünü seçmek için yukarıdaki seçiciyi kullanın. Azure AD B2C, kullanıcıların uygulamalarınızla nasıl etkileşime gireceğini tanımlayan iki yöntem sunar: önceden tanımlı Kullanıcı akışlarıaracılığıyla veya tamamen yapılandırılabilir özel ilkeler. Bu makalede gereken adımlar her yöntem için farklıdır.

Not

Azure Active Directory B2C, özel ilkeler birincil olarak karmaşık senaryolara yöneliktir. Çoğu senaryoda, yerleşik Kullanıcı akışlarınıkullanmanızı öneririz.

Önkoşullar

Salesforce uygulaması oluşturma

Azure Active Directory B2C (Azure AD B2C) ' de Salesforce hesabı olan kullanıcılar için oturum açmayı etkinleştirmek üzere Salesforce App Manager'da bir uygulama oluşturmanız gerekir. Daha fazla bilgi için bkz. temel bağlı uygulama ayarlarını yapılandırmave API Tümleştirmesi Için OAuth ayarlarını etkinleştirme

  1. Salesforce 'Ta oturum açın.
  2. Menüden Kurulum' u seçin.
  3. Uygulamalar' ı genişletin ve ardından App Manager' ı seçin.
  4. Yeni bağlı uygulama' yı seçin.
  5. Temel bilgiler altında şunu girin:
    1. Bağlı uygulama adı -bağlı uygulama adı App Manager 'Da ve uygulama başlatıcısı kutucuğunda görüntülenir. Ad, kuruluşunuz dahilinde benzersiz olmalıdır.
    2. API adı
    3. Iletişim e-postası -Salesforce için iletişim e-postası
  6. API (OAuth ayarlarını etkinleştir) altında OAuth ayarlarını etkinleştir ' i seçin.
    1. Geri çağırma URL 'si için girin https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.com/oauth2/authresp . Özel bir etki alanıkullanıyorsanız, girin https://your-domain-name/your-tenant-name.onmicrosoft.com/oauth2/authresp . your-tenant-name, Kiracınızın adıyla ve your-domain-name özel etki alanınız ile değiştirin. Kiracı, Azure AD B2C büyük harfle tanımlansa bile kiracı adınızı girerken tüm küçük harfleri kullanmanız gerekir.
    2. Seçili OAuth kapsamlarında, temel bilgilere (kimlik, profil, e-posta, adres, telefon) erişin ve benzersiz tanımlayıcısına (OpenID) erişim izni verin.
    3. Web sunucusu akışı Için gizli iste' yi seçin.
  7. Kimlik belirtecini Yapılandır ' ı seçin
    1. Belirteç 5 dakika geçerli olacak şekilde ayarlayın.
    2. Standart talepleri içer' i seçin.
  8. Kaydet’e tıklayın.
  9. Tüketici anahtarı ve Tüketici parolası değerlerini kopyalayın. Salesforce 'ı kiracınızda bir kimlik sağlayıcısı olarak yapılandırmak için her ikisine de ihtiyacınız olacak. İstemci parolası önemli bir güvenlik kimlik bilgileridir.

Salesforce 'ı bir kimlik sağlayıcısı olarak yapılandırma

  1. Azure AD B2C kiracı içeren dizini kullandığınızdan emin olun. Üstteki menüden Dizin + abonelik filtresini seçin ve Azure AD B2C kiracınızı içeren dizini seçin.

  2. Azure portal sol üst köşesindeki tüm hizmetler ' i seçin ve ardından Azure AD B2C' i arayıp seçin.

  3. Kimlik sağlayıcıları' nı seçin ve ardından Yeni OpenID Connect sağlayıcısı' nı seçin.

  4. Bir ad girin. Örneğin Salesforce girin.

  5. Meta veri URL 'si Için Salesforce OpenID Connect yapılandırma belgesininURL 'sini girin. Bir korumalı alan için login.salesforce.com, test.salesforce.com ile değiştirilmiştir. Bir topluluk için login.salesforce.com, username.force.com/.well-known/openid-configuration gibi topluluk URL 'siyle değiştirilmiştir. URL 'nin HTTPS olması gerekir.

    https://login.salesforce.com/.well-known/openid-configuration
    
  6. ISTEMCI kimliği için, daha önce KAYDETTIĞINIZ uygulama kimliğini girin.

  7. İstemci parolası için, daha önce kaydettiğiniz istemci gizli anahtarını girin.

  8. Kapsam için, girin openid id profile email .

  9. Yanıt türü ve Yanıt modu için varsayılan değerleri bırakın.

  10. Seçim Etki alanı ipucu için girin contoso.com . Daha fazla bilgi için bkz. Azure Active Directory B2C kullanarak doğrudan oturum açma ayarlama.

  11. Kimlik sağlayıcısı talep eşlemesi altında aşağıdaki talepleri seçin:

    • Kullanıcı kimliği: Sub
    • Görünen ad: ad
    • Verilen ad: given_name
    • Soyadı: family_name
    • Eposta: e-posta
  12. Kaydet’i seçin.

Bir Kullanıcı akışına Salesforce kimlik sağlayıcısı ekleme

Bu noktada Salesforce kimlik sağlayıcısı ayarlanmıştır, ancak oturum açma sayfalarında henüz mevcut değildir. Salesforce kimlik sağlayıcısını bir Kullanıcı akışına eklemek için:

  1. Azure AD B2C kiracınızda Kullanıcı akışları' nı seçin.
  2. Salesforce kimlik sağlayıcısı eklemek istediğiniz kullanıcı akışına tıklayın.
  3. Sosyal kimlik sağlayıcıları altında Salesforce' ı seçin.
  4. Kaydet’i seçin.
  5. İlkenizi test etmek için Kullanıcı akışını Çalıştır' ı seçin.
  6. Uygulama için, daha önce kaydettiğiniz testapp1 adlı Web uygulamasını seçin. Yanıt URL 'si gösterilmesi gerekir https://jwt.ms .
  7. Kullanıcı akışını Çalıştır düğmesini seçin.
  8. Kaydolma veya oturum açma sayfasından Salesforce hesabı ile oturum açmak için Salesforce ' ı seçin.

Oturum açma işlemi başarılı olursa, tarayıcınız öğesine yönlendirilir https://jwt.ms ve bu, Azure AD B2C tarafından döndürülen belirtecin içeriğini görüntüler.

İlke anahtarı oluşturma

Daha önce Azure AD B2C kiracınızda kaydettiğiniz istemci gizli anahtarını depolamanız gerekir.

  1. Azure portalında oturum açın.
  2. Azure AD B2C kiracınızı içeren dizini kullandığınızdan emin olun. Üstteki menüden Dizin + abonelik filtresini seçin ve kiracınızı içeren dizini seçin.
  3. Azure portal sol üst köşesindeki tüm hizmetler ' i seçin ve ardından Azure AD B2C' i arayıp seçin.
  4. Genel Bakış sayfasında kimlik deneyimi çerçevesi' ni seçin.
  5. Ilke anahtarlarını seçin ve ardından Ekle' yi seçin.
  6. Seçenekler için öğesini seçin Manual .
  7. İlke anahtarı için bir ad girin. Örneğin, SalesforceSecret. Ön ek, B2C_1A_ anahtarınızın adına otomatik olarak eklenir.
  8. Gizli, daha önce kaydettiğiniz istemci gizli anahtarını girin.
  9. Anahtar kullanımı için öğesini seçin Signature .
  10. Oluştur’a tıklayın.

Salesforce 'ı bir kimlik sağlayıcısı olarak yapılandırma

Kullanıcıların bir Salesforce hesabı kullanarak oturum açmasını sağlamak için hesabı, Azure AD B2C bir uç nokta aracılığıyla iletişim kurabildiği bir talep sağlayıcı olarak tanımlamanız gerekir. Uç noktası, belirli bir kullanıcının kimliği doğrulandığını doğrulamak için Azure AD B2C tarafından kullanılan bir talep kümesi sağlar.

Bir Salesforce hesabını, ilkenizin uzantı dosyasındaki Claimsproviders öğesine ekleyerek bir talep sağlayıcı olarak tanımlayabilirsiniz.

  1. TrustFrameworkExtensions.xml açın.

  2. Claimsproviders öğesini bulun. Yoksa, kök öğenin altına ekleyin.

  3. Yeni bir ClaimsProvider 'ı aşağıdaki şekilde ekleyin:

    <ClaimsProvider>
      <Domain>salesforce.com</Domain>
      <DisplayName>Salesforce</DisplayName>
      <TechnicalProfiles>
        <TechnicalProfile Id="Salesforce-OpenIdConnect">
          <DisplayName>Salesforce</DisplayName>
          <Protocol Name="OpenIdConnect" />
          <Metadata>
            <Item Key="METADATA">https://login.salesforce.com/.well-known/openid-configuration</Item>
            <Item Key="response_types">code</Item>
            <Item Key="response_mode">form_post</Item>
            <Item Key="scope">openid id profile email</Item>
            <Item Key="HttpBinding">POST</Item>
            <Item Key="UsePolicyInRedirectUri">0</Item>
            <!-- Update the Client ID below to the Application ID -->
            <Item Key="client_id">Your Salesforce application ID</Item>
          </Metadata>
          <CryptographicKeys>
            <Key Id="client_secret" StorageReferenceId="B2C_1A_SalesforceSecret"/>
          </CryptographicKeys>
          <OutputClaims>
            <OutputClaim ClaimTypeReferenceId="issuerUserId" PartnerClaimType="sub" />
            <OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="given_name" />
            <OutputClaim ClaimTypeReferenceId="surname" PartnerClaimType="family_name" />
            <OutputClaim ClaimTypeReferenceId="displayName" PartnerClaimType="name" />
            <OutputClaim ClaimTypeReferenceId="email" PartnerClaimType="email" />
            <OutputClaim ClaimTypeReferenceId="identityProvider" DefaultValue="salesforce.com" AlwaysUseDefaultValue="true" />
            <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" AlwaysUseDefaultValue="true" />
          </OutputClaims>
          <OutputClaimsTransformations>
            <OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName" />
            <OutputClaimsTransformation ReferenceId="CreateUserPrincipalName" />
            <OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId" />
          </OutputClaimsTransformations>
          <UseTechnicalProfileForSessionManagement ReferenceId="SM-SocialLogin" />
        </TechnicalProfile>
      </TechnicalProfiles>
    </ClaimsProvider>
    
  4. Meta veriler Salesforce OpenID Connect yapılandırma belgesininURL 'sine ayarlanır. Bir korumalı alan için login.salesforce.com, test.salesforce.com ile değiştirilmiştir. Bir topluluk için login.salesforce.com, username.force.com/.well-known/openid-configuration gibi topluluk URL 'siyle değiştirilmiştir. URL 'nin HTTPS olması gerekir.

  5. Uygulama kaydından uygulama KIMLIĞINE client_id ayarlayın.

  6. Dosyayı kaydedin.

Kullanıcı yolculuğu ekleme

Bu noktada, kimlik sağlayıcısı ayarlanmıştır, ancak oturum açma sayfalarında henüz mevcut değildir. Kendi özel Kullanıcı yolculuğu yoksa, var olan bir şablon Kullanıcı yolculuğunun bir yinelemesini oluşturun, aksi takdirde bir sonraki adımla devam edin.

  1. TrustFrameworkBase.xml dosyasını başlangıç paketinden açın.
  2. Dahil olan Userelde ney öğesinin tüm içeriğini bulup kopyalayın Id="SignUpOrSignIn" .
  3. TrustFrameworkExtensions.xml açın ve User, neys öğesini bulun. Öğe yoksa, bir tane ekleyin.
  4. User, neys öğesinin bir alt öğesi olarak kopyaladığınız User, ney öğesinin tüm içeriğini yapıştırın.
  5. Kullanıcı yolculuğunun kimliğini yeniden adlandırın. Örneğin, Id="CustomSignUpSignIn".

Kimlik sağlayıcısını Kullanıcı yolculuğuna ekleme

Artık bir Kullanıcı yolculuğu olduğuna göre, yeni kimlik sağlayıcısını Kullanıcı yolculuğuna ekleyin. İlk olarak bir oturum açma düğmesi ekleyin ve ardından düğmeyi bir eyleme bağlayın. Bu eylem, daha önce oluşturduğunuz teknik profildir.

  1. Type="CombinedSignInAndSignUp"Kullanıcı yolculuğunda veya dahil olmak üzere Orchestration Step öğesini bulun Type="ClaimsProviderSelection" . Genellikle ilk düzenleme adımıdır. Claimsproviderseçimleri öğesi, bir kullanıcının oturum açmasını sağlayan kimlik sağlayıcılarının bir listesini içerir. Öğelerin sırası, kullanıcıya sunulan oturum açma düğmelerinin sırasını denetler. Bir Claimsproviderselection XML öğesi ekleyin. Targetclaimsexchangeıd değerini kolay bir ad olarak ayarlayın.

  2. Sonraki düzenleme adımında bir Claimsexchange öğesi ekleyin. Kimliği hedef talep değişim kimliği değerine ayarlayın. TechnicalProfileReferenceId değerini daha önce oluşturduğunuz teknik profilin kimliğiyle güncelleştirin.

Aşağıdaki XML, kimlik sağlayıcısıyla Kullanıcı yolculuğunun ilk iki düzenleme adımını göstermektedir:

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

<OrchestrationStep Order="2" Type="ClaimsExchange">
  ...
  <ClaimsExchanges>
    <ClaimsExchange Id="SalesforceExchange" TechnicalProfileReferenceId="Salesforce-OpenIdConnect" />
  </ClaimsExchanges>
</OrchestrationStep>

Bağlı olan taraf ilkesini yapılandırma

Bağlı olan taraf ilkesi, örneğin SignUpSignIn.xml, Azure AD B2C yürütecektir Kullanıcı yolculuğu belirtir. Bağlı olan tarafIçinde Defaultuseryolculuney öğesini bulun. Referenceıd 'yi, kimlik sağlayıcısını eklediğiniz kullanıcı yolculuğu kimliğiyle eşleşecek şekilde güncelleştirin.

Aşağıdaki örnekte, CustomSignUpOrSignIn Kullanıcı yolculuğu Için referenceıd şu şekilde ayarlanır CustomSignUpOrSignIn :

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

Özel ilkeyi karşıya yükle

  1. Azure portalında oturum açın.
  2. Portal araç çubuğunda Dizin + abonelik simgesini seçin ve ardından Azure AD B2C kiracınızı içeren dizini seçin.
  3. Azure portal, araması yapın ve Azure AD B2C seçin.
  4. İlkeler altında kimlik deneyimi çerçevesi' ni seçin.
  5. Özel Ilkeyi karşıya yükle' yi seçin ve ardından, değiştirdiğiniz iki ilke dosyasını aşağıdaki sırada karşıya yükleyin: uzantı ilkesi, örneğin, TrustFrameworkExtensions.xml SignUpSignIn.xml .

Özel ilkenizi test etme

  1. Örneğin, bağlı olan taraf ilkenizi seçin B2C_1A_signup_signin .
  2. Uygulama için, daha önce kaydetmişolduğunuz bir Web uygulamasını seçin. Yanıt URL 'si gösterilmesi gerekir https://jwt.ms .
  3. Şimdi Çalıştır düğmesini seçin.
  4. Kaydolma veya oturum açma sayfasından Salesforce hesabı ile oturum açmak için Salesforce ' ı seçin.

Oturum açma işlemi başarılı olursa, tarayıcınız öğesine yönlendirilir https://jwt.ms ve bu, Azure AD B2C tarafından döndürülen belirtecin içeriğini görüntüler.

Sonraki adımlar

Salesforce belirtecini uygulamanıza nasıl geçirebileceğiniziöğrenin.