AADSTS65001 错误的解决方法

这个错误发生在SPFX webpart需要请求Azure AD token的时候,全部错误信息如下:

{"error":"invalid_grant","error_description":"AADSTS65001: The user or administrator has not consented to use the application with ID '' named '******'. Send an interactive authorization request for this user and resource.}

这个问题是由于webpart没有获得相应权限导致。解决方法如下:

1. 首先在SPFX项目的package-solution.json文件中加入

    "webApiPermissionRequests": [
      {
        "resource": "yourAzureAppName", //这个位置要改成在Azure AD App registrations里面的名字
        "scope": "user_impersonation"
      }
    ]

2. 将项目打包,发布到AppCatalog站点。

3. 然后访问 https://yourdomain-admin.sharepoint.com/_layouts/15/online/AdminHome.aspx#/webApiPermissionManagement

4. 从pending requests中选择 yourAzureAppName, 然后选择approve, 最后结果应该和下图最后一行显示的一致。

 再次执行webpart,就不会再有AADSTS65001这个错误信息了。

原文地址:https://www.cnblogs.com/sharepointonline/p/14296056.html