2017-09-21 1 views
0

Le champ suivant ne s'affichera pas sur ma page d'identification, pourquoi pas?Le champ ne s'affichera pas dans la stratégie personnalisée Azure AD B2C

Dans TrustFrameworkExtensions.xml

<ClaimType Id="extension_AssociateID"> 
    <DisplayName>Associate ID - associateId</DisplayName> 
    <DataType>string</DataType> 
    <DefaultPartnerClaimTypes> 
     <Protocol Name="OAuth2" PartnerClaimType="associateId" /> 
     <Protocol Name="OpenIdConnect" PartnerClaimType="associateId" /> 
    </DefaultPartnerClaimTypes> 
    <UserInputType>Readonly</UserInputType> 
</ClaimType> 

Je l'ai ajouté à mon TechnicalProfile

... 
<InputClaim ClaimTypeReferenceId="extension_AssociateID" /> 
... 
<OutputClaim ClaimTypeReferenceId="extension_AssociateID" Required="true"/> 

Pour déboguer, j'ai ajouté un tas de variations et ils travaillent tous.

fields that do work

l'étiquette est {id après l'extension} - {PartnetClaimType}

Répondre

0

j'ai jeté l'éponge et a décidé d'utiliser le nom du champ associate_id même si ce n'était pas ce que je voulais, puis associate_id arrêté travaillant aussi. Cela m'a conduit à la correction.

Le correctif était de l'enlever de mon OutputClaims dans mon TechnicalProfile AAD-UserWriteUsingLogonName

<TechnicalProfile Id="AAD-UserWriteUsingLogonName"> 
    <Metadata> 
     <Item Key="Operation">Write</Item> 
     <Item Key="RaiseErrorIfClaimsPrincipalAlreadyExists">true</Item> 
    </Metadata> 
    <InputClaims> 
     <InputClaim ClaimTypeReferenceId="signInName" PartnerClaimType="signInNames.userName" Required="true" /> 
    </InputClaims> 
    <PersistedClaims> 
     <PersistedClaim ClaimTypeReferenceId="signInName" PartnerClaimType="signInNames.userName" /> 
     <PersistedClaim ClaimTypeReferenceId="email" PartnerClaimType="strongAuthenticationEmailAddress" /> 
     <PersistedClaim ClaimTypeReferenceId="newPassword" PartnerClaimType="password" /> 
     <PersistedClaim ClaimTypeReferenceId="displayName" DefaultValue="DoNotUse" /> 
     <PersistedClaim ClaimTypeReferenceId="extension_associate_id" /> 
     <PersistedClaim ClaimTypeReferenceId="extension_organization_id" /> 
    </PersistedClaims> 
    <OutputClaims> 
     <OutputClaim ClaimTypeReferenceId="objectId" /> 
     <OutputClaim ClaimTypeReferenceId="newUser" PartnerClaimType="newClaimsPrincipalCreated" /> 
     <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="localAccountAuthentication" /> 
     <OutputClaim ClaimTypeReferenceId="userPrincipalName" /> 
     <!-- <OutputClaim ClaimTypeReferenceId="extension_associate_id" /> --> 
    </OutputClaims> 
    <IncludeTechnicalProfile ReferenceId="AAD-Common" /> 
    <UseTechnicalProfileForSessionManagement ReferenceId="SM-AAD" /> 
</TechnicalProfile>