Azure B2C получает значения из возвращаемого объекта API
Кажется, я не могу получить значения из OutputClaims из моего возвращаемого объекта после выполнения вызова REST API для отображения в токене JWT. Я пробовал это, когда я возвращаю одну строку, она работает нормально, но это возвращает объект, который выглядит так из моего объекта B2CResponseModel.
Должен ли я сделать какое-то сопоставление в пользовательских политиках, чтобы соответствовать моему возвращаемому объекту, или есть ли способ просто получить значение, как я пытаюсь сделать ниже? Спасибо!
TrustFrameworkExtensions.xml
<TechnicalProfile Id="REST-UserMigration-LocalAccount-SignUp">
<DisplayName>Migrate user sign-up flow</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://*******/LocalAccountSignUp</Item>
<Item Key="AuthenticationType">ApiKeyHeader</Item>
<Item Key="SendClaimsIn">Body</Item>
<Item Key="AllowInsecureAuthInProduction">True</Item>
</Metadata>
<CryptographicKeys>
<Key Id="Ocp-Apim-Subscription-Key" StorageReferenceId="B2C_1A_RestApiKey" />
</CryptographicKeys>
<InputClaims>
<InputClaim ClaimTypeReferenceId="email" PartnerClaimType="signInName"/>
<!--AM Added-->
<InputClaim ClaimTypeReferenceId="signInName" />
<InputClaim ClaimTypeReferenceId="password" />
<InputClaim ClaimTypeReferenceId="objectId" />
<InputClaim ClaimTypeReferenceId="newPassword" />
<InputClaim ClaimTypeReferenceId="reenterPassword" />
.......
</InputClaims>
<!--AM Added-->
<OutputClaims>
<!-- Claims parsed from your REST API -->
<OutputClaim ClaimTypeReferenceId="userMessage" />
<OutputClaim ClaimTypeReferenceId="loyaltyNumber"/>
</OutputClaims>
<UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
</TechnicalProfile>
TrustFrameworkBase.xml
<ClaimType Id="loyaltyNumber">
<DisplayName>Loyalty Identification</DisplayName>
<DataType>string</DataType>
<UserHelpText>Your loyalty number from your membership card</UserHelpText>
</ClaimType>
<ClaimType Id="userMessage">
<DisplayName>User Message</DisplayName>
<DataType>string</DataType>
<UserHelpText>User Message</UserHelpText>
</ClaimType>
SignInSignup.xml
<RelyingParty>
<DefaultUserJourney ReferenceId="SignUpOrSignIn" />
<TechnicalProfile Id="PolicyProfile">
<DisplayName>PolicyProfile</DisplayName>
<Protocol Name="OpenIdConnect" />
<OutputClaims>
....
<OutputClaim ClaimTypeReferenceId="userMessage" DefaultValue="" />
<OutputClaim ClaimTypeReferenceId="displayName" />
<OutputClaim ClaimTypeReferenceId="loyaltyNumber" DefaultValue="" />
</OutputClaims>
<SubjectNamingInfo ClaimType="sub" />
</TechnicalProfile>
</RelyingParty>