Заявки от Azure B2C и ADFS в качестве поставщика удостоверений - PullRequest
0 голосов
/ 11 сентября 2018

Я использую ADFS в качестве IdP для Azure B2C через OpenID Connect.Логин работает, но я не получаю никаких претензий от ADFS.Вот часть политики TrusFrameworkExtensions:

<OutputClaims>
          <OutputClaim ClaimTypeReferenceId="socialIdpUserId" PartnerClaimType="UPN" />
          <OutputClaim ClaimTypeReferenceId="tenantId" PartnerClaimType="tid" />
          <OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="Name" />
          <OutputClaim ClaimTypeReferenceId="surName" PartnerClaimType="family_name" />
          <OutputClaim ClaimTypeReferenceId="displayName" PartnerClaimType="name" />
          <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="contosoAuthentication" />
          <OutputClaim ClaimTypeReferenceId="identityProvider" DefaultValue="OpenIDADFS" />
        </OutputClaims>

А вот пример полученного токена JWT:

{
"exp": 1536674800,
  "nbf": 1536671200,
  "ver": "1.0",
  "iss": "https://login.microsoftonline.com/2263fb1b-1249-4245-a174-cb9d518d7ce3/v2.0/",
  "sub": "f5fa8b7b-5e14-4b49-8f9f-33ea5c8b2149",
 "aud": "21d60a4b-6e33-4e22-b618-586882744560",
 "acr": "b2c_1a_signuporsigninfmdclient",
 "nonce": "defaultNonce",
 "iat": 1536671200,
 "auth_time": 1536671200,
 "idp": "OpenIDADFS",
 "name": "unknown"
}

Здесь никаких претензий нет.Вот мои настройки ADFS с заявками от AD enter image description here

Политика проверяющей стороны SignUpOgSignIn

  <RelyingParty>
<DefaultUserJourney ReferenceId="SignUpOrSignInFmdClient" />
<TechnicalProfile Id="PolicyProfile">
  <DisplayName>PolicyProfile</DisplayName>
  <Protocol Name="OpenIdConnect" />
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="displayName" />
    <OutputClaim ClaimTypeReferenceId="givenName" />
    <OutputClaim ClaimTypeReferenceId="surname" />
    <OutputClaim ClaimTypeReferenceId="email" />
    <OutputClaim ClaimTypeReferenceId="objectId" PartnerClaimType="sub"/>
    <OutputClaim ClaimTypeReferenceId="identityProvider" />
  </OutputClaims>
  <SubjectNamingInfo ClaimType="sub" />
</TechnicalProfile>

Как получать заявки?

1 Ответ

0 голосов
/ 29 сентября 2018

Для всех, кто сталкивается с той же проблемой или похожими проблемами, необходимо добавить <OutputClaim ClaimTypeReferenceId="socialIdpUserId" PartnerClaimType="UPN" />

(согласно комментарию Джейми)

Для справки: пример пользовательской политики B2C Azureочень полезноhttps://github.com/Azure-Samples/active-directory-b2c-custom-policy-starterpack/blob/master/SocialAccounts/TrustFrameworkBase.xml

...