【问题标题】:Different claims for id and access tokenid 和访问令牌的不同声明
【发布时间】:2021-10-27 15:41:46
【问题描述】:

我知道如何配置自定义声明https://docs.microsoft.com/en-us/azure/active-directory-b2c/configure-tokens?pivots=b2c-custom-policy

问题是访问令牌和 id 令牌中包含相同的声明。

我想在 id 令牌中包含“displayName”声明,但不在访问令牌中,但我看不到区分两者的方法

【问题讨论】:

    标签: azure-ad-b2c azure-ad-b2c-custom-policy


    【解决方案1】:

    目前无法在 Access Token vs ID Token 中设置不同的声明。

    【讨论】:

    • 有计划实施吗?
    【解决方案2】:

    • 您只能在隐式流中编辑 ID 令牌和访问令牌中的声明,而对于使用 PKCE 的授权代码流则不能这样做,因为使用 PKCE 的身份验证代码流中的令牌是在客户端设置的他们需要先被冲出。此外,您可以在 B2C 中注册的应用程序的自定义策略中配置要在 ID 令牌和访问令牌中发布的依赖方声明。

    • 此外,在自定义策略的技术配置文件的输入声明和输出声明部分中配置的依赖方声明形成了分别确定 ID 令牌和访问令牌的依赖方定义。并且两个令牌都返回相同的声明集。您可以在隐式流的 RP 部分中配置要在 JWT 令牌中发出的声明,如下所示:-

       ‘ <RelyingParty>
      <DefaultUserJourney ReferenceId="SignUpOrSignIn" />
      <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>
       </RelyingParty>
    
     {
        ...
        "sub": "6fbbd70d-262b-4b50-804c-257ae1706ef2",
         ...
       } ‘
    

    因此,通过您为每个 ID 定义的令牌技术配置文件和隐式流中的访问令牌,可以相应地传递和使用声明。

    请找到以下链接以获取更多信息:-

    https://docs.microsoft.com/en-us/azure/active-directory-b2c/session-behavior?pivots=b2c-custom-policy#configure-your-custom-policy

    【讨论】:

    • "自定义策略技术配置文件中的输入声明和输出声明部分" 这是哪个 TP?你是说这个 TP 中的输入声明 = id 令牌,输出声明 = 访问令牌?
    • 那么我该如何为 id 和 access token 配置不同的声明呢?有可能吗?
    • 不,我所指的输入声明和输出声明基本上是声明转换参数,即,如果您在输入声明中将属性作为字符串传递,那么它在令牌中的输出声明将是什么例如,整数、日期等。
    猜你喜欢
    • 2019-03-23
    • 2020-09-09
    • 2019-06-21
    • 1970-01-01
    • 2020-01-16
    • 2020-11-05
    • 2018-12-31
    • 1970-01-01
    • 2018-10-15
    相关资源
    最近更新 更多