#azure-ad-b2c #azure-ad-b2c-custom-policy
Вопрос:
Я провожу проверку нашей базы данных во время нашей политики забывания пароля. Во время этого процесса он вызывает API и нуждается в токене на предъявителя. У меня уже есть технический профиль, чтобы сделать это, который мы используем на следующем этапе.
Таким образом, в этом процессе он продолжает не искать токен на предъявителя. Это говорит о том, что единственный токен, доступный в электронном письме.
Мне нужно сделать промежуточный шаг, чтобы получить токен на предъявителя, но я не уверен, как это сделать, так как я провожу проверку…
Вот что у меня есть. После того, как я введу электронное письмо, чтобы подтвердить его.
<ClaimsProvider>
<DisplayName>REST API to Check Member</DisplayName>
<TechnicalProfiles>
<TechnicalProfile Id="LocalAccountDiscoveryUsingEmailAddress">
<ValidationTechnicalProfiles>
<ValidationTechnicalProfile ReferenceId="REST-CheckMemberAccountHolder" ContinueOnError="false"/>
</ValidationTechnicalProfiles>
</TechnicalProfile>
<TechnicalProfile Id="REST-CheckMemberAccountHolder">
<DisplayName>Rest API call to Check Member status</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.RestfulProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<Metadata>
<Item Key="ServiceUrl">{API}</Item>
<Item Key="SendClaimsIn">Body</Item>
<Item Key="AuthenticationType">Bearer</Item>
<Item Key="UseClaimAsBearerToken">bearerToken</Item>
<Item Key="AllowInsecureAuthInProduction">false</Item>
</Metadata>
<InputClaims>
<InputClaim ClaimTypeReferenceId="email" PartnerClaimType="emailaddress"/>
<InputClaim ClaimTypeReferenceId="bearerToken" />
</InputClaims>
</TechnicalProfile>
</TechnicalProfiles>
</ClaimsProvider>
Мне нужно, чтобы он позвонил
<TechnicalProfile Id="REST-AcquireAccessToken">
Чтобы получить код на предъявителя для ОСТАЛЬНЫХ, вызовите проверку.
Кажется, я не могу понять, как это сделать.
Ответ №1:
В соответствии с этим, я предполагаю, что у вас было что-то вроде:
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="bearerToken" PartnerClaimType="access_token" />
</OutputClaims>
когда вы приобрели жетон?
Является ли все это частью одного и того же пользовательского путешествия?
Что вы имеете в виду, говоря «единственный токен, доступный в электронном письме»?
Комментарии:
1. Я смог это сделать, добавив технический профиль 2-й проверки перед другим.