C # Как получить o365 вложения с HTTP URI - PullRequest
0 голосов
/ 12 ноября 2019

У меня есть 10000 строк в этом формате:

https://graph.microsoft.com/v1.0/users/{Principal_Name}/messages/{Message_ID}/attachments

Мне нужно выяснить, как:

  1. Использовать эти URI в C # для доступа к нескольким почтовым ящикам пользователей
  2. Использование Graph API;получить все вложения (файл, элемент, ссылка, встроенный)
  3. Загрузить каждый набор вложений в список (или IEnumerable)

Я работаю в функции C # azure,. Net Standard 2. Использование аутентификации приложения. (Арендатор / клиент / секрет клиента). С действительным AccessToken.

Как C # будет использоваться для этого?

1 Ответ

0 голосов
/ 12 ноября 2019

Существует два сценария, когда приложение может получать сообщения в почтовую папку другого пользователя:

  • Если приложение имеет разрешения для приложения, или,
  • Если приложение имеет соответствующий делегированныйразрешения от одного пользователя, и другой пользователь поделился почтовой папкой с этим пользователем, или предоставил делегированный доступ этому пользователю. См. Подробности и пример.

Разрешения

Для вызова этого API требуется одно из следующих разрешений. Подробнее о том, как выбирать разрешения, см. В разделе Разрешения.

  • Тип разрешения Разрешения (от минимального до наиболее привилегированного)
  • Делегированный (рабочий или учебный аккаунт) Mail.Read, Mail.ReadWrite
  • Делегированный (личная учетная запись Microsoft) Mail.Read, Mail.ReadWrite Приложение

Если у вас есть API в следующем формате:

GET / users /{id |userPrincipalName} / messages / {Message_ID} / attachments

Все, что вам нужно, - это субъект службы (зарегистрированное приложение Azure AD с правильным набором разрешений, о котором я упоминал выше с токеном Bearer valida, затем вы можете просто позвонить выше api, чтобы получить вложение.

Вызов API: GET / users / {id | userPrincipalName} / messages / {Message_ID} / attachments Авторизация: токен на предъявителя {*. 1029 *

Вы можете обратиться к этому блогу для получения токена на предъявителя длято же самое:

https://blogs.msdn.microsoft.com/jpsanders/2017/03/17/accessing-azure-app-services-using-azure-ad-bearer-token-2/

Дополнительная справка:

https://docs.microsoft.com/en-us/graph/api/message-list-attachments?view=graph-rest-1.0&tabs=http

Надеюсь, это поможет.

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