Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
IDX10503:Microsoft Graph和Azure AD的签名验证失败_Azure_Asp.net Web Api_Jwt_Azure Active Directory_Microsoft Graph Api - Fatal编程技术网

IDX10503:Microsoft Graph和Azure AD的签名验证失败

IDX10503:Microsoft Graph和Azure AD的签名验证失败,azure,asp.net-web-api,jwt,azure-active-directory,microsoft-graph-api,Azure,Asp.net Web Api,Jwt,Azure Active Directory,Microsoft Graph Api,我有一个ASP.NET核心WebApi,它使用由前端传递的Azure广告承载令牌,使用adal.js获得。 目前,我们正在使用Azure AD Graph API,一切正常。 如前所述,我们希望从Azure AD Graph API迁移到Microsoft Graph 我把API和前端的观众都从原来的变成了现在的。我可以成功获取一个令牌,它在jwt.io中解密时看起来几乎与旧令牌相同,但当我将其传递给API时,我得到: 持票人未经身份验证。失败消息:IDX10503:签名验证失败。已尝试密钥:“

我有一个ASP.NET核心WebApi,它使用由前端传递的Azure广告承载令牌,使用adal.js获得。 目前,我们正在使用Azure AD Graph API,一切正常。 如前所述,我们希望从Azure AD Graph API迁移到Microsoft Graph

我把API和前端的观众都从原来的变成了现在的。我可以成功获取一个令牌,它在jwt.io中解密时看起来几乎与旧令牌相同,但当我将其传递给API时,我得到:

持票人未经身份验证。失败消息:IDX10503:签名验证失败。已尝试密钥:“Microsoft.IdentityModel.Tokens.X509SecurityKey”


我错过什么了吗?据我所知,应该可以使用Microsoft Graph登录,对吗?

如果我理解正确,您已将API访问群体配置为MS Graph API访问群体。 你不应该这样做。 首先,MS Graph API访问令牌有点特殊,您不应该尝试验证它们, 其次,因为您的API不是MS Graph API

前端应该为API获取访问令牌。 这要求您将API访问群体配置为其客户机id或应用程序id URI或两者。 Azure AD允许前端使用以下任一方式获取令牌。
然后,API可以使用代表流将其交换为MS Graph API令牌。

您知道有什么好的教程或资源可以让我学习如何做到这一点吗?好的,在ASP.NET Core 2的早期和一般API设置中,我已经介绍了您:谢谢,我会看一看!