"error_description":"Exception of type 'Microsoft.IdentityModel.Tokens.AudienceUriValidationFailedException' was thrown."

"error_description":"Exception of type 'Microsoft.IdentityModel.Tokens.AudienceUriValidationFailedException' was thrown."

我们正在尝试使用 azure oauth2 安全地访问共享点 api。我们得到了不记名令牌,但是在访问共享点休息 api 时,我们得到状态代码:401 未经授权和响应:{"error_description":"Exception of type 'Microsoft.IdentityModel.Tokens.AudienceUriValidationFailedException' was thrown."}

  1. 我们已经在 Azure AD 中注册了一个客户端应用程序 一种。身份验证中定义的重定向 uri b.将访问角色映射到服务用户帐户 C。定义的客户秘密 d.已提供定义的 API 权限和管理员许可

令牌端点:https://login.microsoftonline.com/66395830-4e70-4a10-8f30-225fe9afd23b/oauth2/v2.0/token

方法:POST 车身参数: 范围:https://66395830-4e70-4a10-8f30-225fe9afd23b.sharepoint.com/.default redirect_uri:https://cscglobal.sharepoint.com/teams/uatCLSService/BusinessLicense/KB/_api/Web/lists grant_type:client_credentials(注意:我们还尝试通过传递相应参数来使用密码和 authorization_code 值) client_secret:XXXXXX client_id:XXXXX

我认为您可能以错误的方式设置了范围。据我所知应该是https://yourSite.sharepoint.com/.default or detailed scope, such as: https://yourSite.sharepoint.com/Sites.ReadWrite.All

现在建议 use Microsoft Graph API to manage your sharepoint site 使用 Microsoft Graph API 来管理您的共享点网站。

它提供了一个统一的可编程性模型,您可以使用该模型访问 Office 365、Windows10 和企业移动性 + 安全性中的海量数据。