You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure AD B2C IEF自定义策略中Bearer认证的令牌过期处理与机制问询

Azure AD B2C IEF自定义策略中Bearer认证的令牌过期处理与机制解析

令牌过期处理方案

  • 应用侧主动刷新:若Bearer令牌来自Azure AD B2C访问令牌,自定义策略不会自动刷新令牌。需在依赖方应用中实现刷新逻辑——检测令牌exp声明,在即将过期前(如提前5分钟)调用B2C令牌端点,用刷新令牌换取新访问令牌,再将新令牌更新到策略密钥存储中。
  • 策略内添加过期校验:在自定义策略的技术配置文件中,通过ClaimsTransformation实现令牌过期校验:
    <ClaimsTransformation Id="CheckTokenExpiry" TransformationMethod="CompareDateTime">
      <InputClaims>
        <InputClaim ClaimTypeReferenceId="exp" TransformationClaimType="inputClaim1" />
        <InputClaim ClaimTypeReferenceId="currentDateTime" TransformationClaimType="inputClaim2" />
      </InputClaims>
      <InputParameters>
        <InputParameter Id="operator" DataType="string" Value="greater than" />
        <InputParameter Id="ignoreTimeZone" DataType="boolean" Value="true" />
      </InputParameters>
      <OutputClaims>
        <OutputClaim ClaimTypeReferenceId="tokenIsExpired" TransformationClaimType="outputClaim" />
      </OutputClaims>
    </ClaimsTransformation>
    
    随后在技术配置文件的Preconditions中判断tokenIsExpired值,若为true则触发重新认证流程,确保使用有效令牌。
  • 更新策略密钥:获取新Bearer令牌后,调用Azure AD B2C Graph API的UpdatePolicyKey操作,将新令牌作为密钥值传入,替换过期的密钥,保证策略后续调用的有效性。

令牌处理机制详解

  • 令牌存储逻辑:如图所示,配置Bearer认证类型时传入的令牌,会以机密类型存储在Azure AD B2C的策略密钥容器中,仅策略内部可访问,不会对外暴露。
  • 策略内使用流程:当策略需要调用外部API时,会自动从策略密钥中取出Bearer令牌,格式化为Bearer {token}添加到请求的Authorization头,完成身份验证。
  • 内置校验逻辑:策略会自动校验令牌的签名、Issuer、Audience等核心声明的合法性,但不会主动监控令牌的过期时间,需手动添加过期校验逻辑。
  • 密钥生命周期管理:策略密钥本身可设置有效期,到期前必须手动更新密钥值(即新的Bearer令牌),否则策略调用外部API时会因令牌过期失败。

内容的提问来源于stack exchange,提问作者Rishi Parpyani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 03:12:15