我有一个 Azure Api 管理组件,它将获取 OAUTH token ,并在请求转发到后端服务时将其添加为自定义 header 。
为此,我使用身份验证管理身份策略和系统分配的托管身份。我注意到这将创建 V1 token 而不是 V2 token 。这有点烦人,因为我试图在任何地方使用 V2,并且 V1 和 V2 之间的声明可能有所不同。 IE。 azp 在 V1 中是 appid。
有没有办法强制它使用系统分配的托管身份获取 V2 token ?
最佳答案
我认为 v1/v2 token 与其获取方式没有任何关系。
API 的应用程序注册应在其 list 中包含 "accessTokenAcceptedVersion": 2
。
这应该会导致它的所有 token 都是 v2,包括通过托管身份获取的 token 。
如果您最近更改了该值,请记住,如果我没记错的话,托管身份 token 会被缓存并持续 8 小时。 因此,更改可能需要一段时间才能生效。
关于APIM 的 Azure 托管身份 token 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70968530/