我遵循了MS Graph(https://github.com/microsoftgraph/python-sample-send-mail)中的python-sample-send-mail示例,它对我来说非常好。 然后我稍微修改了它,以便原始功能仍然可以工作并添加新的app-route以查看此调用将返回给我的内容:
all_plans= MSGRAPH.get("me/planner/plans", headers=request_headers()).data
事实证明我无权这样做:
{
'error': {
'code': '',
'message': 'You do not have the required permissions to access this item.',
'innerError': {
'request-id': '4722fe32-425d-462d-a6b4-b5af4582b8cf',
'date': '2018-05-04T21:46:31'}}}
我从这里检查了APP权限:https://apps.dev.microsoft.com 所以很明显我已根据本文档设置了所有权限:https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/api/plannerplan_get
鉴于所有这一切,我完全迷失了,并且不明白为了使其发挥作用应该做些什么。
非常感谢任何帮助和/或建议。 在此先感谢!
我想该公司的管理员应该授予此权限才能访问MS-GRAPH Groups API ...我是对的吗?
答案 0 :(得分:1)
要使用Group.Read.All
或Group.ReadWrite.All
等范围,您需要从租户的管理员处获得管理员同意。我写了一篇文章,通过这篇文章,您可能会发现有用的信息:v2 Endpoint & Admin Consent。
还值得注意的是,您要求 Group.Read.All
和Group.ReadWrite.All
。您应该只是请求这两个范围之一。如果您确实只需Read
次访问权限,则只应申请Group.Read.All
。如果您同时需要Read
和Write
访问权限,则应仅请求Group.ReadWrite.All
。
您还要求委派范围和应用范围。除非您使用客户端凭据授权,否则您不应定义任何应用程序范围。只有委派的范围用于授权代码和隐式OAuth授权。