gpt4 book ai didi

Azure AD B2C 受众验证失败

转载 作者:行者123 更新时间:2023-12-02 23:15:12 27 4
gpt4 key购买 nike

我正在尝试向 Azure AD B2C 上的 B2C AD 租户进行身份验证。我在 aspnet .NET 6 上使用 OAuth 2.0

如果我使用客户端 ID 请求新的不记名 token

0fdd4f3b-xxxx-xxxx-xxxx-3f84bd9d02ax

我得到一个aud

https://mysite.onmicrosoft.com/0fdd4f3b-xxxx-xxxx-a438-3f84bd9d02ax

我正在使用

builder.Services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
.AddMicrosoftIdentityWebApi(builder.Configuration.GetSection("AzureAd"));

如果我在配置中使用0fdd4f3b-xxxx-xxxx-a438-3f84bd9d02ax,他会尝试通过在客户端 ID 前添加 api:// 和以下内容来验证它异常(exception):

IDX10214: Audience validation failed. Audiences: 'https://mysite.onmicrosoft.com/0fdd4f3b-xxxx-xxxx-a438-3f84bd9d02ax'. Did not match: validationParameters.ValidAudience: 'api://0fdd4f3b-xxxx-xxxx-a438-3f84bd9d02ax'

如果我使用 https://mysite.onmicrosoft.com/0fdd4f3b-xxxx-xxxx-a438-3f84bd9d02ax 在我的配置中,他尝试通过在客户端 ID 前添加 api:// 和以下异常(exception)情况来验证它:

IDX10214: Audience validation failed. Audiences: 'https://mysite.onmicrosoft.com/0fdd4f3b-xxxx-xxxx-a438-3f84bd9d02ax'. Did not match: validationParameters.ValidAudience: 'api://https://mysite.onmicrosoft.com/0fdd4f3b-xxxx-xxxx-a438-3f84bd9d02ax'

为什么该值总是以 api:// 为前缀?

最佳答案

好吧,显然 Stack Overflow 就是我的橡皮鸭。

如果您的应用程序 ID URI 不是以 api:// 开头,您必须手动更改应用程序 list 并切换到访问 token 版本 2。

Manifest link

然后将 accessTokenAcceptedVersion 的值从 null 更改为 2

现在您可以返回到本地应用程序配置并将 ClientId 的值设置为 GUID(仅不包括 https://xxx.onmicrosoft.com/) .

关于Azure AD B2C 受众验证失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70290053/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com