Skip to Content

Microsoft 365

Пакет Primo.Microsoft365 позволяет работать с почтой Outlook, календарями, файлами OneDrive и SharePoint, книгами Excel, группами Microsoft 365, планами и задачами Planner, а также списками SharePoint.

Элемент Microsoft 365 настраивает подключение и аутентификацию. Он служит контейнером для остальных элементов пакета: они размещаются внутри него и используют его параметры подключения.

Перед началом работы настройте доступ к Microsoft 365.

Если перетащить элемент пакета в процесс вне контейнера, контейнер Microsoft 365 будет создан автоматически.

Свойства

Описание общих свойств элемента см. в разделе Свойства элемента . Символ * в названии свойства указывает на обязательность его заполнения.

СвойствоТипОписание
Параметры:
Тип аутентификации*-Способ входа. Доступные значения: UsernameAndPassword — от имени пользователя по логину и паролю, ApplicationIdAndSecret — от имени приложения по секрету, ApplicationIdAndCertificate — от имени приложения по сертификату. По умолчанию UsernameAndPassword
ID приложения*StringИдентификатор приложения (Application (client) ID) из Microsoft Entra ID
Тенант*StringИдентификатор клиента (Directory (tenant) ID) или домен организации, например "company.onmicrosoft.com"
Тайм-аутInt32Тайм-аут соединения (мс). По умолчанию 10000
Сертификат:
СертификатStringПуть к файлу сертификата с закрытым ключом (.pfx). Используется при типе ApplicationIdAndCertificate
ПарольStringПароль к файлу сертификата
Приложение:
СекретStringСекрет приложения (Client secret). Используется при типе ApplicationIdAndSecret
Секрет (защищенный)SecureStringСекрет приложения, зашифрованный с помощью SecureString
Логин:
ЛогинStringИмя пользователя Microsoft 365, например "robot@company.ru". Используется при типе UsernameAndPassword
ПарольStringПароль пользователя
Пароль (защищенный)SecureStringПароль пользователя, зашифрованный с помощью SecureString

Примечание: Если заполнены и обычное, и защищенное поле (Секрет / Секрет (защищенный), Пароль / Пароль (защищенный)), используется защищенное.

Выбор типа аутентификации

ТипКогда использоватьЧто заполнить
ApplicationIdAndCertificateРекомендуется для роботов: не зависит от пароля пользователя и многофакторной аутентификацииID приложения, Тенант, Сертификат, Пароль
ApplicationIdAndSecretАналогично сертификату, проще в настройке. Секрет имеет срок действия и требует периодической заменыID приложения, Тенант, Секрет
UsernameAndPasswordРабота от имени конкретного пользователя. Не подходит для учетных записей с многофакторной аутентификациейID приложения, Тенант, Логин, Пароль

Важно: При входе от имени приложения (сертификат или секрет) «текущего пользователя» нет. Поэтому в дочерних элементах, работающих с почтой, календарями и файлами OneDrive, обязательно заполняйте свойство Учетная запись (или E-Mail) — адрес ящика, с которым работает робот. Подробнее — в разделе Настройка доступа к Microsoft 365.

Практические примеры

Пример 1: вход по сертификату

  • Тип аутентификации: ApplicationIdAndCertificate
  • ID приложения: "11111111-2222-3333-4444-555555555555"
  • Тенант: "company.onmicrosoft.com"
  • Сертификат: @"C:\Robot\Certs\m365-robot.pfx"
  • Пароль: "<пароль к pfx>"

Пример 2: вход от имени пользователя

  • Тип аутентификации: UsernameAndPassword
  • ID приложения: "11111111-2222-3333-4444-555555555555"
  • Тенант: "company.onmicrosoft.com"
  • Логин: "robot@company.ru"
  • Пароль (защищенный): переменная типа SecureString с паролем

Возможные ошибки

ОшибкаПричина и решение
AADSTS7000218: The request body must contain ... 'client_assertion' or 'client_secret'Тип UsernameAndPassword, а в приложении не включены публичные клиентские потоки. В Entra ID: приложение → Authentication → Allow public client flows = Yes
AADSTS50076 / AADSTS50079У пользователя включена многофакторная аутентификация. Используйте вход по сертификату или секрету
AADSTS50126Неверный логин или пароль
AADSTS7000215: Invalid client secret providedНеверный или просроченный секрет. Создайте новый в Entra ID: приложение → Certificates & secrets
AADSTS700027 / ошибка сертификатаСертификат не загружен в приложение Entra ID или файл не содержит закрытый ключ
AADSTS90002: Tenant ... not foundНеверное значение свойства Тенант
Last updated on