我们在我们的网络应用程序上使用 AD B2C 进行身份验证。上周,当我们使用 AD B2C 租户调用 Azure 中托管并由 Active Directory 锁定的 API 时,我们开始收到 403.76。
发生更改时,我们没有更改 AD 中的任何配置设置。我们回滚了所有没有帮助的代码。我们验证了我们的 token 在 jwt.io 中有效。我们确认我们的受众是正确的,并且在应用程序注册中正确设置了权限。当进入函数应用程序的“诊断和解决问题”部分并深入研究 4xx 错误时,我们可以看到简单的身份验证错误 403.76。
函数应用程序只是针对 Cosmos 执行 GetAsync 来获取登录时的用户配置文件。但是我们还没有走到这一步,因为在使用 AD 验证 token 时我们收到了 403.76。
我们应该能够像以前一样对我们的 API 执行 GET 并接收数据。相反,我们得到 HTTP 状态 403,子状态为 76。
“诊断和解决问题”部分的错误:
EasyAuth:授权检查失败。有关更多详细信息,请参阅 EasyAuth 模块的 HTTP 状态代码
最佳答案
我们在墙上撞了五天,所以我想确保将其发布在堆栈溢出上,以供其他面临此问题的人使用。特别是因为它影响了客户。
过去三天与 Microsoft 24/7 合作后,我们终于收到消息称这是由于他们的 EasyAuth 端出现问题造成的。解决方法是将其添加到函数应用程序的配置中:
WEBSITE_AUTH_AAD_BYPASS_SINGLE_TENANCY_CHECK = true
关于c# - 访问由 Azure AD B2C 锁定的 Azure 函数应用程序时收到 403 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56743496/