【发布时间】:2018-08-24 10:26:12
【问题描述】:
我尝试创建自定义策略,并且希望获得一些声明并将其发送到我的 REST API。 我的 API 是通过电子邮件、givenName 等调用的……但通过查询字符串(如 client_id、resource_id 和大多数范围)传递的声明为空。
我在这里找到了获取 client_id 的解决方法:Get the Azure AD B2C Application client id in the custom policy
但我没有发现关于范围的任何信息。
这是我的 REST API 声明提供程序:
<ClaimsProvider>
<DisplayName>REST API</DisplayName>
<TechnicalProfiles>
<TechnicalProfile Id="AzureFunction-SendClaims">
<DisplayName>Send Claims</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://XXXX.azurewebsites.net/api/XXXX</Item>
<Item Key="AuthenticationType">None</Item>
<Item Key="SendClaimsIn">Body</Item>
</Metadata>
<InputClaims>
<InputClaim ClaimTypeReferenceId="givenName"/>
<InputClaim ClaimTypeReferenceId="client_id" PartnerClaimType="clientId" DefaultValue="{OIDC:ClientId}"/>
<InputClaim ClaimTypeReferenceId="resource_id"/>
<InputClaim ClaimTypeReferenceId="email"/>
<InputClaim ClaimTypeReferenceId="otherMails"/>
<InputClaim ClaimTypeReferenceId="grant_type"/>
<InputClaim ClaimTypeReferenceId="scope"/>
</InputClaims>
</TechnicalProfile>
</TechnicalProfiles>
</ClaimsProvider>
【问题讨论】:
标签: azure azure-ad-b2c