首页 > 解决方案 > 使用根证书和客户端证书的 Azure AD B2C 身份验证

问题描述

我有一个客户端 API,它实现 MSAL 以从 Azure AD B2C 获取访问令牌。此 API 使用证书而不是秘密向 AD B2C 租户进行身份验证。问题是当我尝试使用在 AD B2C 中上传的根证书和从客户端 API 传递的客户端证书进行身份验证时,它失败并出现异常。-

配置问题阻止了身份验证 - 请检查来自服务器的错误消息以获取详细信息。您可以在应用程序注册门户中修改配置。请参阅https://aka.ms/msal-net-invalid-client详情。原始异常:AADSTS700027:客户端断言包含无效签名。[原因 - 找不到密钥。,客户端使用的密钥指纹:'FE5D9FEF5D0D528B8ED641727E903E50953D44CE',请访问 Azure 门户、Graph Explorer 或直接使用 MS Graph 来查看应用程序 ID 'f3bfc1b2-f1b2-4552-9145- 的配置密钥7019c8683a41'。查看 https://docs.microsoft.com/en-us/graph/deployments 上的文档以确定相应的服务端点和 https://docs.microsoft.com/en-us/graph/api/application-get? view=graph-rest-1.0&tabs=http 构建查询请求 URL,例如 'https://graph.microsoft.com/beta/applications/f3bfc1b2-f1b2-4552-9145-7019c8683a41'] Trace ID: 59cf24e3- 96bb-48ca-8d4b-f8cf0e5d0e00 相关 ID:496261ed-31c3-46c1-9fdb-a59c966ddf3d 时间戳:2020-12-28 08:16:12Z

标签: azureazure-active-directoryazure-web-app-servicemsalx509certificate2

解决方案


据我所知,这个错误通常是由于您没有正确编码指纹造成的。获取指纹后,请检查您的代码以确保其Base64编码正确。


推荐阅读