Azure Active Directory B2C kullanarak weibo hesabıyla kaydolma ve oturum açma ayarlama

Başlamadan önce, ayarladığınız ilke türünü seçmek için İlke türü seçin seçicisini kullanın. Azure Active Directory B2C, kullanıcıların uygulamalarınızla nasıl etkileşim kurduğunu tanımlamak için iki yöntem sunar: önceden tanımlanmış kullanıcı akışları veya tam olarak yapılandırılabilir özel ilkeler aracılığıyla. Bu makalede gerekli adımlar her yöntem için farklıdır.

Dekont

Bu özellik genel önizleme aşamasındadır.

Önkoşullar

Weibo uygulaması oluşturma

Azure Active Directory B2C'de (Azure AD B2C) Weibo hesabı olan kullanıcılar için oturum açmayı etkinleştirmek için Weibo geliştirici portalında bir uygulama oluşturmanız gerekir. Henüz bir Weibo hesabınız yoksa adresinden kaydolabilirsiniz https://weibo.com.

  1. Weibo hesap kimlik bilgilerinizle Weibo geliştirici portalında oturum açın.
  2. Oturum açtıktan sonra sağ üst köşedeki görünen adınızı seçin.
  3. Açılan listede 编辑开发者信息 (geliştirici bilgilerini düzenle) öğesini seçin.
  4. Gerekli bilgileri girin ve 提交 (gönder) öğesini seçin.
  5. E-posta doğrulama işlemini tamamlayın.
  6. Kimlik doğrulama sayfasına gidin.
  7. Gerekli bilgileri girin ve 提交 (gönder) öğesini seçin.

Weibo uygulaması kaydetme

  1. Yeni Weibo uygulama kayıt sayfasına gidin.
  2. Gerekli uygulama bilgilerini girin.
  3. 创建 (oluştur) öğesini seçin.
  4. Uygulama Anahtarı ve Uygulama Gizli Anahtarı değerlerini kopyalayın. Kimlik sağlayıcısını kiracınıza eklemek için bunların her ikisine de ihtiyacınız vardır.
  5. Gerekli fotoğrafları karşıya yükleyin ve gerekli bilgileri girin.
  6. 保存以上信息 (kaydet) öğesini seçin.
  7. 高级信息 (gelişmiş bilgi) öğesini seçin.
  8. OAuth2.0 授权设置 (yeniden yönlendirme URL'si) alanının yanındaki 编辑 (düzenle) öğesini seçin.
  9. OAuth2.0 授权设置 (yeniden yönlendirme 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. değerini kiracınızın adıyla ve your-domain-name özel etki alanınızla değiştirinyour-tenant-name.
  10. 提交 (gönder) öğesini seçin.

Weibo'yi kimlik sağlayıcısı olarak yapılandırma

  1. Azure portalda Azure AD B2C kiracınızın genel yöneticisi olarak oturum açın.
  2. Birden çok kiracıya erişiminiz varsa, Dizinler + abonelikler menüsünden Azure AD B2C kiracınıza geçmek için üstteki menüden Ayarlar simgesini seçin.
  3. Azure portalın sol üst köşesinde Tüm hizmetler’i seçin ve Azure AD B2C’yi arayıp seçin.
  4. Kimlik sağlayıcıları'nın ardından Weibo (Önizleme) öğesini seçin.
  5. Bir Ad girin. Örneğin, Weibo.
  6. İstemci Kimliği için, daha önce oluşturduğunuz Weibo uygulamasının Uygulama Anahtarı'nı girin.
  7. İstemci gizli dizisi için kaydettiğiniz Uygulama Gizli Dizisini girin.
  8. Kaydet'i seçin.

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

  1. Azure AD B2C kiracınızda Kullanıcı akışları'yı seçin.
  2. Weibo kimlik sağlayıcısını eklemek istediğiniz kullanıcı akışına tıklayın.
  3. Sosyal kimlik sağlayıcıları'nın altında Weibo'yı 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östermelidirhttps://jwt.ms.
  7. Kullanıcı akışını çalıştır düğmesini seçin.
  8. Kayıt veya oturum açma sayfasında Weibo hesabıyla oturum açmak için Weibo'yı seçin.

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

İlke anahtarı oluşturma

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

  1. Azure Portal oturum açın.
  2. Birden çok kiracıya erişiminiz varsa, Dizinler + abonelikler menüsünden Azure AD B2C kiracınıza geçmek için üstteki menüden Ayarlar simgesini seçin.
  3. Azure portalının sol üst köşesindeki Tüm hizmetler'i seçin ve ardından Azure AD B2C'yi arayıp seçin.
  4. Genel Bakış sayfasında Kimlik Deneyimi Çerçevesi'ni seçin.
  5. İlke Anahtarları'nı ve ardından Ekle'yi seçin.
  6. Seçenekler için öğesini seçinManual.
  7. İlke anahtarı için bir Ad girin. Örneğin, WeiboSecret. Ön ek B2C_1A_ , anahtarınızın adına otomatik olarak eklenir.
  8. Gizli Dizi alanına daha önce kaydettiğiniz gizli dizinizi girin.
  9. Anahtar kullanımı için öğesini seçinSignature.
  10. Oluştur’a tıklayın.

Weibo'yi kimlik sağlayıcısı olarak yapılandırma

Kullanıcıların Weibo hesabı kullanarak oturum açmasını sağlamak için hesabı Azure AD B2C'nin bir uç nokta üzerinden iletişim kurabileceği bir talep sağlayıcısı olarak tanımlamanız gerekir. Uç nokta, belirli bir kullanıcının kimliğini doğrulamak için Azure AD B2C tarafından kullanılan bir dizi talep sağlar.

İlkenizin uzantı dosyasındaki ClaimsProviders öğesine ekleyerek bir Weibo hesabını talep sağlayıcısı olarak tanımlayabilirsiniz.

  1. TrustFrameworkExtensions.xml dosyasını açın.

  2. ClaimsProviders öğesini bulun. Yoksa kök öğesinin altına ekleyin.

  3. Aşağıdaki gibi yeni bir ClaimsProvider ekleyin:

    <ClaimsProvider>
      <Domain>weibo.com</Domain>
      <DisplayName>Weibo (Preview)</DisplayName>
      <TechnicalProfiles>
        <TechnicalProfile Id="Weibo-OAuth2">
          <DisplayName>Weibo</DisplayName>
          <Protocol Name="OAuth2" />
          <Metadata>
            <Item Key="ProviderName">weibo</Item>
            <Item Key="authorization_endpoint">https://api.weibo.com/oauth2/authorize</Item>
            <Item Key="AccessTokenEndpoint">https://api.weibo.com/oauth2/access_token</Item>
            <Item Key="ClaimsEndpoint">https://api.weibo.com/2/account/get_uid.json</Item>
            <Item Key="scope">email</Item>
            <Item Key="HttpBinding">POST</Item>
            <Item Key="external_user_identity_claim_id">uid</Item>
            <Item Key="client_id">Your Weibo application ID</Item>
          </Metadata>
          <CryptographicKeys>
            <Key Id="client_secret" StorageReferenceId="B2C_1A_WeiboSecret" />
          </CryptographicKeys>
          <OutputClaims>
            <OutputClaim ClaimTypeReferenceId="numericUserId" PartnerClaimType="uid" />
            <OutputClaim ClaimTypeReferenceId="identityProvider" DefaultValue="weibo.com" AlwaysUseDefaultValue="true" />
            <OutputClaim ClaimTypeReferenceId="displayName" DefaultValue="Weibo User" />
            <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" AlwaysUseDefaultValue="true" />
            <OutputClaim ClaimTypeReferenceId="UserId" />
          </OutputClaims>
          <OutputClaimsTransformations>
            <OutputClaimsTransformation ReferenceId="CreateIssuerUserId" />
            <OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName"/>
            <OutputClaimsTransformation ReferenceId="CreateUserPrincipalName"/>
            <OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId"/>
            <OutputClaimsTransformation ReferenceId="CreateSubjectClaimFromAlternativeSecurityId"/>
          </OutputClaimsTransformations>
          <UseTechnicalProfileForSessionManagement ReferenceId="SM-SocialLogin" />
        </TechnicalProfile>
      </TechnicalProfiles>
    </ClaimsProvider>
    <ClaimsProvider>
    
  4. client_id uygulama kaydından uygulama kimliğine ayarlayın.

  5. Dosyayı kaydedin.

Talep dönüştürmelerini ekleme

GitHub teknik profili, ClaimsTransformations listesine CreateIssuerUserId talep dönüşümlerinin eklenmesini gerektirir. Dosyanızda tanımlanmış bir ClaimsTransformations öğeniz yoksa, üst XML öğelerini aşağıda gösterildiği gibi ekleyin. Talep dönüştürmeleri için numericUserId adlı yeni bir talep türü de tanımlanmalıdır.

  1. BuildingBlocks öğesini arayın. Öğesi yoksa ekleyin.
  2. ClaimsSchema öğesini bulun. Öğesi yoksa ekleyin.
  3. ClaimsSchema öğesine numericUserId talebi ekleyin.
  4. ClaimsTransformations öğesini bulun. Öğesi yoksa ekleyin.
  5. CreateIssuerUserId talep dönüştürmelerini ClaimsTransformations öğesine ekleyin.
<BuildingBlocks>
  <ClaimsSchema>
    <ClaimType Id="numericUserId">
      <DisplayName>Numeric user Identifier</DisplayName>
      <DataType>long</DataType>
    </ClaimType>
  </ClaimsSchema>
  <ClaimsTransformations>
    <ClaimsTransformation Id="CreateIssuerUserId" TransformationMethod="ConvertNumberToStringClaim">
      <InputClaims>
        <InputClaim ClaimTypeReferenceId="numericUserId" TransformationClaimType="inputClaim" />
      </InputClaims>
      <OutputClaims>
        <OutputClaim ClaimTypeReferenceId="issuerUserId" TransformationClaimType="outputClaim" />
      </OutputClaims>
    </ClaimsTransformation>
  </ClaimsTransformations>
</BuildingBlocks>

Kullanıcı yolculuğu ekleme

Bu noktada, kimlik sağlayıcısı ayarlanmıştır, ancak henüz oturum açma sayfalarından herhangi birinde kullanılamaz. Kendi özel kullanıcı yolculuğunuz yoksa, mevcut şablon kullanıcı yolculuğunun bir kopyasını oluşturun, aksi takdirde sonraki adıma geçin.

  1. Başlangıç paketinden TrustFrameworkBase.xml dosyasını açın.
  2. içeren Id="SignUpOrSignIn"UserJourney öğesinin tüm içeriğini bulun ve kopyalayın.
  3. TrustFrameworkExtensions.xml dosyasını açın ve UserJourneys öğesini bulun. Öğesi yoksa bir tane ekleyin.
  4. UserJourneys öğesinin alt öğesi olarak kopyaladığınız UserJourney öğ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ğunuz olduğuna göre, yeni kimlik sağlayıcısını kullanıcı yolculuğuna ekleyin. Önce bir oturum açma düğmesi eklersiniz, ardından düğmeyi bir eyleme bağlarsınız. Eylem, daha önce oluşturduğunuz teknik profildir.

  1. veya içeren düzenleme adımı öğesini Type="CombinedSignInAndSignUp"Type="ClaimsProviderSelection" kullanıcı yolculuğunda bulun. Genellikle ilk düzenleme adımıdır. ClaimsProviderSelections öğesi, kullanıcının oturum açabileceği kimlik sağlayıcılarının listesini içerir. Öğelerin sırası, kullanıcıya sunulan oturum açma düğmelerinin sırasını denetler. ClaimsProviderSelection XML öğesi ekleyin. TargetClaimsExchangeId değerini kolay bir ad olarak ayarlayın.

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

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

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

<OrchestrationStep Order="2" Type="ClaimsExchange">
  ...
  <ClaimsExchanges>
    <ClaimsExchange Id="WeiboExchange" TechnicalProfileReferenceId="Weibo-OAuth2" />
  </ClaimsExchanges>
</OrchestrationStep>

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

Bağlı olan taraf ilkesi, örneğin SignUpSignIn.xml, Azure AD B2C'nin yürüteceği kullanıcı yolculuğunu belirtir. Bağlı olan taraf içinde DefaultUserJourney öğesini bulun. ReferenceId değerini, 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, kullanıcı yolculuğu için CustomSignUpSignIn ReferenceId değeri olarak CustomSignUpSignInayarlanmıştır:

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

Özel ilkeyi karşıya yükleme

  1. Azure Portal oturum açın.
  2. Portal araç çubuğunda Dizin + Abonelik simgesini ve ardından Azure AD B2C kiracınızı içeren dizini seçin.
  3. Azure portalında Azure AD B2C'yi arayın ve seçin.
  4. İlkeler'in altında Kimlik Deneyimi Çerçevesi'ne tıklayın.
  5. Özel İlkeyi Karşıya Yükle'yi seçin ve değiştirdiğiniz iki ilke dosyasını şu sırayla karşıya yükleyin: uzantı ilkesi, örneğin TrustFrameworkExtensions.xml, ve gibi SignUpSignIn.xmlbağlı olan taraf ilkesi.

Özel ilkenizi test edin

  1. Bağlı olan taraf ilkenizi seçin, örneğin B2C_1A_signup_signin.
  2. Uygulama için daha önce kaydettiğiniz bir web uygulamasını seçin. Yanıt URL'si göstermelidirhttps://jwt.ms.
  3. Şimdi çalıştır düğmesini seçin.
  4. Kayıt veya oturum açma sayfasında Weibo hesabıyla oturum açmak için Weibo'yı seçin.

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