【问题标题】:Get custom policy name based on authorisation code根据授权码获取自定义策略名称
【发布时间】:2021-06-07 02:47:45
【问题描述】:

我正在使用 Active Directory B2C 对用户进行身份验证。我们正在利用代码流。 我们定义了 3 个自定义策略,每个策略都有自己的令牌端点。

我想根据收到的代码动态推断令牌端点,例如

https://<tenant domain>/oauth2/v2.0/token?p=<here goes the policy name>

是否可以根据授权码推断?

我正在调查,但里面似乎没有告诉政策名称。从字面上看,它只是 JSON 格式的标头中的一些基本信息和一堆非 base64 编码的其他字符。

【问题讨论】:

  • 解析token的时候应该可以看到。
  • 问题是,我需要在请求令牌之前推断出这一点,因为我想生成令牌端点并且其中需要策略名称。
  • 获取授权码时是否返回了id token?
  • 不,我只得到代码参数。授权请求的响应类型为response_type=code
  • 你为什么不使用库?否则,您的应用程序会调用 /authorise,因此您肯定会在内存中拥有策略 ID。详细说明您正在实施的内容。

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


【解决方案1】:

最后我们提出了一个不同的解决方案,但我可以分享解决上述问题的想法。

当用户启动自定义策略时,我们将其传递给状态查询参数。然后当 B2C 使用提供的状态参数调用代码端点时,我们从中读取策略名称并使用它来构建正确的令牌端点。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-02-05
    • 1970-01-01
    • 2019-10-21
    • 2014-03-14
    • 2022-01-25
    • 1970-01-01
    相关资源
    最近更新 更多