因此,基本上我需要访问office 365用户的联系人。我使用了Microsoft图形API,并且可以成功地通过JSON中的HTTP get获取所有联系人。但是现在,我试图用HTTP POST向https://graph.microsoft.com/v1.0/me/contacts API编写一个JSON,但每次都得到一个403权限被拒绝。所以我去了https://jwt.io/,检查了我的访问令牌,发现我没有在联系人中写入的权限。
我得到了这些权限:
"scp":"Contacts.Read openid配置文件User.Read“
即使我只在Azure门户上的应用程序注册设置中设置了Contacts.ReadWrite。
我已经尝试更新权限,但没有帮助。
发布于 2019-07-05 01:03:28
如果您更改了权限,则用户需要重新同意。
您可以通过URL请求强制用户同意,将&prompt=consent附加到身份验证请求url。
https://login.microsoftonline.com/{tenant}/oauth2/authorize?
client_id={your_client_id}
&response_type=code
&response_mode=query
&resource=https://graph.microsoft.com
&state=12345
&prompt=consent
或者,您只需代表此目录中的所有用户授予同意。为所有用户授予管理员许可意味着最终用户在使用应用程序时不会显示同意屏幕。
https://stackoverflow.com/questions/56888424
复制相似问题