Как получить планы и задачи Planner, используя Python и MS Graph - PullRequest
0 голосов
/ 05 мая 2018

Я последовал примеру Python-sample-send-mail из MS Graph (https://github.com/microsoftgraph/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'}}}

Я проверил разрешения приложения здесь: https://apps.dev.microsoft.com enter image description here Так что, похоже, все мои разрешения установлены в соответствии с этим документом: https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/api/plannerplan_get

Учитывая все это, я полностью потерян и не понимаю, что нужно сделать, чтобы заставить его работать.

Буду очень признателен за любую помощь и / или предложения. Заранее спасибо!

ОБНОВЛЕНИЕ [04 мая 2018]

Я полагаю, что администратор компании должен предоставить для этого разрешение на доступ к API групп MS-GRAPH ... Я прав?

1 Ответ

0 голосов
/ 07 мая 2018

Чтобы использовать такие области, как Group.Read.All или Group.ReadWrite.All, вам необходимо получить согласие администратора от администратора арендатора. Я написал статью, в которой рассказывается, что может оказаться полезным: v2 Конечная точка и согласие администратора .

Стоит также отметить, что вы запрашиваете и Group.Read.All, и Group.ReadWrite.All. Вам следует запросить только одну из этих двух областей. Если вам действительно нужен только Read доступ, вам нужно только запросить Group.Read.All. Если вам нужен доступ Read и Write, вам следует запросить только Group.ReadWrite.All.

Вы также запрашиваете как делегированную, так и прикладную области. Если вы не используете грант Client Credentials, у вас не должно быть определено никаких областей применения. Только делегированные области используются для кода авторизации и неявного предоставления OAuth.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...