Перейти к основному содержимому

Настройка Microsoft 365 для вашей среды

Существует два способа подключить Microsoft 365 к вашей среде AI-School. Сначала выберите, какой вариант подходит вашей организации.

ВариантКогда использоватьЧто нужно сделать
Центральное приложение AI-School (по умолчанию)Личные подключения к Outlook Mail, Outlook Календарю, Teams и SharePoint/OneDrive.Администратор Entra предоставляет согласие организации через Подключить Microsoft 365. Затем вы включаете интеграции, как описано в шаге 5 этой статьи. Собственное приложение, client secret или Identity Provider не нужны.
Собственное приложение EntraВы хотите централизованно импортировать папки SharePoint в базу знаний, сотрудники уже входят через Microsoft с помощью собственного приложения, или вы хотите управлять приложением самостоятельно.Следуйте этой статье, начиная с шага 1.

Если ваша организация уже входит через Microsoft с помощью собственного приложения (поле Microsoft ID среды заполнено), все подключения используют это собственное приложение. Тогда центральный вариант не применяется.

Собственное приложение Entra​

С собственным приложением Microsoft Entra ваша организация может использовать одно и то же приложение для входа через Microsoft и для Outlook, Teams и SharePoint. Вы централизованно определяете, какие интеграции и действия на запись доступны. После этого пользователи только включают или выключают личные подключения в Настройки → Tools → Подключения.

Личные интеграции работают с поддерживаемыми моделями OpenAI, Claude, Gemini и Mistral. Выбранная модель должна уметь использовать инструменты. При личных подключениях доступ следует правам вошедшего в систему пользователя Microsoft. Согласие организации не выполняет автоматический вход для всех сотрудников и не дает AI самостоятельный доступ ко всем почтовым ящикам. Центральная база знаний SharePoint использует отдельные права приложения и существующие права базы знаний, как описано далее в этой статье.

Что вам нужно?​

  • Организация Microsoft 365 с Microsoft Entra ID и учетными записями, имеющими доступ к нужным службам.
  • Администратор, который может зарегистрировать приложение и предоставить согласие организации на выбранные права Microsoft Graph. Только роли подписки Azure для этого недостаточно; ваша роль Entra должна позволять такое согласие.
  • Права администратора в нужной AI-среде, чтобы сделать интеграции доступными.
  • Платформенный администратор, который может настроить Microsoft Identity Provider для этой AI-среды в Google Cloud Identity Platform.
  • App registration в вашем собственном Microsoft-каталоге, с client secret и двумя URL перенаправления для правильного бренда.

Вход через Microsoft и доступ к данным Microsoft — это две отдельные функции. Наличие только рабочего Microsoft-входа еще не означает, что Outlook, Teams или SharePoint настроены.

1. Зарегистрируйте одно организационное приложение​

Откройте центр администрирования Microsoft Entra и перейдите в App registrations → New registration. Используйте понятное имя, например AI-School – название вашей организации. Для собственной организации выберите Accounts in this organizational directory only (Single tenant).

Сохраните следующие данные из Overview:

ДанныеДля чего?
Directory (tenant) IDКаталог Microsoft вашей организации; он указывается в поле Microsoft ID среды AI.
Application (client) IDЗарегистрированное приложение; оно указывается в Microsoft Identity Provider.

Эти два ID различаются. В поле Microsoft ID не нужно указывать client ID или Firebase tenant ID.

2. Настройте правильные URL перенаправления​

Перейдите в Authentication → Add a platform → Web. Для вашего бренда добавьте оба URL ниже, в точности как указано. Первый обрабатывает вход; второй — согласие для интеграций рабочих учетных записей.

БрендВход через MicrosoftИнтеграции рабочих учетных записей
AI-Schoolhttps://ai-school-pro.firebaseapp.com/__/auth/handlerhttps://europe-west1-ai-school-pro.cloudfunctions.net/completeConnectorOAuth
AI-Corporatehttps://ai-corporate.firebaseapp.com/__/auth/handlerhttps://europe-west1-ai-corporate.cloudfunctions.net/completeConnectorOAuth
AI-Publichttps://ai-public-pro.firebaseapp.com/__/auth/handlerhttps://europe-west1-ai-public-pro.cloudfunctions.net/completeConnectorOAuth

Используйте URL того бренда, на котором работает ваша среда. Ваше собственное название организации или tenant ID не нужно подставлять в эти URL. Website URL, dashboard URL и .web.app URL не заменяют эти callback-адреса. Регистрируйте их как Web, даже если используете интеграцию из браузера. Для этого не нужно включать implicit token grant или public client flow.

3. Создайте client secret и назначьте права​

Перейдите в Certificates & secrets → Client secrets → New client secret. Выберите подходящий срок действия и безопасно сохраните Value, как только он станет видимым. Передайте значение через согласованный защищенный канал для управления платформой; Secret ID — это не client secret. Отслеживайте срок действия и замените secret до этой даты, в том числе в Identity Provider.

Затем перейдите в API permissions → Add a permission → Microsoft Graph → Delegated permissions. Добавляйте только те права, которые нужны для интеграций и действий, которые ваша организация будет предоставлять.

ИнтеграцияПрава на чтениеДополнительные права на запись
Профиль / базовоеUser.Read; поток входа также запрашивает openid, profile, email и offline_accessНет
Outlook MailMail.ReadЧерновики: Mail.ReadWrite. Отправка: Mail.Send.
Outlook КалендарьCalendars.ReadЗапись: Calendars.ReadWrite.
Microsoft TeamsChat.Read, ChannelMessage.Read.AllПубликация: Team.ReadBasic.All, Channel.ReadBasic.All, ChannelMessage.Send.
SharePoint / OneDriveSites.Read.All, Files.Read.AllЭта интеграция рабочих учетных записей здесь не поддерживает действия на запись.

Mail.ReadWrite не дает права на отправку; для этого отдельно нужен Mail.Send. Публикация в Teams записывает текстовые сообщения в выбранный канал, а не личные чаты. Для этой интеграции используйте Delegated permissions, а не Application permissions. Даже при правах с All в названии делегированный доступ ограничивается правами пользователя.

Нажмите Grant admin consent for ваша организация и проверьте, что выбранные права отображаются как предоставленные. Так сотрудники смогут использовать одобренный доступ без необходимости самим предоставлять права организации. Microsoft при этом все равно может запросить вход, MFA или повторное согласие в зависимости от вашей политики.

4. Подключите приложение к AI-среде в двух местах​

Пусть платформенный администратор выберет нужную среду и выполнит эти настройки:

  1. В Admin → Omgeving → Tenant: включите метод входа Microsoft и укажите в Microsoft ID значение Directory (tenant) ID.
  2. В Google Cloud → Identity Platform → соответствующий tenant → Identity providers → Microsoft: включите провайдера и укажите Application (client) ID и client secret Value из того же приложения Entra.

Identity Provider относится к tenant Firebase/Identity Platform вашей AI-среды, а не к другой организации или общей административной среде. Интеграция рабочих учетных записей повторно использует приложение из этого провайдера. Client secret не должен попадать в пользовательские настройки, сообщения чата или обычные поля среды.

Передайте платформенному администратору название организации, бренд, Directory ID, client ID, значение secret через защищенный канал, срок действия и нужные интеграции/права. Одного app ID недостаточно.

5. Разрешите интеграции и действия на запись​

Откройте beheeromgeving вашей организации → Tools → MCP. В разделе Suite-snelkoppelingen включите интеграцию Microsoft 365. Строки Microsoft станут видимыми; когда весь suite выключен, эти строки остаются скрытыми.

Для каждой интеграции выберите, будет ли она доступна. В столбце Schrijfacties отдельно выберите:

  • Outlook Mail → Concepten: создавать и изменять черновики.
  • Outlook Mail → Verzenden: фактически отправлять уже существующий черновик.
  • Outlook Agenda → Schrijven: создавать и изменять встречи.
  • Microsoft Teams → Posten: размещать текстовые сообщения в выбранном канале Teams.

Нажмите Opslaan. Действие на запись работает только если включены и интеграция, и соответствующее право управления, Microsoft предоставил необходимые права, и пользователь лично включил подключение. Пользователю не требуется дополнительная форма прав на запись.

Доступность

Настройки также должны поддерживаться backend вашего бренда. Это расширение записи было целенаправленно опубликовано и протестировано 7 октября 2026 года для OnderwijsSupport на AI-Corporate. Это не означает автоматически, что то же расширение уже доступно для AI-School, AI-Public или любой другой среды. Обратитесь к платформенному администратору за подтверждением, если действия на запись отсутствуют.

6. Проверьте настройку​

Пусть пользователь войдет в нужную AI-среду и включит требуемую интеграцию согласно Использование интеграций Microsoft. Проверьте, отображается ли в Microsoft имя вашего собственного приложения Entra.

Сначала протестируйте узнаваемый черновик и встречу без участников. Проверьте сохраненные элементы в Outlook. Затем протестируйте отправку с согласованным тестовым получателем и публикацию в Teams в согласованном тестовом канале. Встреча с участниками может отправлять приглашения или обновления. Принятая команда на отправку еще не означает подтвержденную доставку.

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

Устранение проблем​

ПроблемаПроверка
AADSTS50011 / несоответствие redirectОба callback точно зарегистрированы как Web, для правильного бренда.
При согласии отображается другое имя приложенияПравильная AI-среда, Directory ID и tenant-специфический Microsoft Identity Provider; затем переподключитесь.
Вход работает, но интеграция — нетТакже проверьте callback коннектора, права Graph и согласие организации.
Чтение работает, запись — нетПроверьте право управления, соответствующее делегированное право Graph, предоставленное согласие и доступность backend.
Client secret недействителен или истекValue, а не Secret ID; обновите новый secret также в Identity Provider.
У пользователя отсутствует интеграцияПроверьте доступность в Tools, права пользователя на подключения и выбранную AI-среду.

Дополнительная информация​

Центральная база знаний SharePoint: настройка Microsoft​

Центрально подключенная папка работает через организационное приложение, без необходимости включать личное подключение SharePoint каждому сотруднику. Для этого нужны два отдельных согласия: право приложения с admin consent и read-grant именно на ту папку (или сайт), которую приложению разрешено читать. Рабочий вход Microsoft или только admin consent еще не дают доступа.

Есть два способа. Для каждой подключенной папки выберите один способ; AI-среда никогда автоматически не переключается на другой.

Grant на папку (рекомендуется)Grant на сайт
Право приложенияFiles.SelectedOperations.SelectedSites.Selected
Grant наВыбранную папку в библиотеке документовВесь сайт
Что может читать приложениеЭту папку и вложенные папки, наследующие grantВсе библиотеки и папки сайта
Существующая структура SharePointСохраняется; отдельный сайт не нуженЖелательно отдельный сайт для общих знаний
Последствие в SharePointНаследование прав папки прерывается (см. ниже)Не влияет на наследование

1. Проверьте организационное приложение​

Используйте ту же single-tenant app registration, что и для входа через Microsoft в вашей AI-среде. Существующее приложение можно расширить; второе интеграционное приложение не требуется. Проверьте в Microsoft Entra → App registrations → ваше приложение → Overview значения Directory (tenant) ID и Application (client) ID. Ниже используйте client ID, а не Object ID.

Directory ID должен быть указан в Admin → Среда → Tenant → Microsoft ID. Client ID и Value действующего client secret должны быть в Microsoft Identity Provider именно этой AI-среды. Эта конфигурация поддерживается платформенным администратором. Просроченный secret также препятствует центральному импорту; отслеживайте срок действия и своевременно заменяйте secret.

Центральное серверное соединение использует client_credentials и не требует дополнительного URL перенаправления. Существующие Web-redirects для входа и личных интеграций рабочих учетных записей по-прежнему нужны; используйте привязанные к бренду URL из таблицы выше в этой статье.

  1. Откройте API permissions → Add a permission → Microsoft Graph → Application permissions.
  2. Найдите Files.SelectedOperations.Selected (grant на папку) или Sites.Selected (grant на сайт), выберите право и нажмите Add permissions.
  3. Попросите уполномоченного администратора Entra выполнить Grant admin consent for ваша организация.
  4. Проверьте, что право, тип Application, отображается как предоставленное.

Приложению базы знаний нужны только права на чтение. Не предоставляйте ему права приложения Sites.Read.All, Files.Read.All, Sites.ReadWrite.All, Files.ReadWrite.All или Sites.FullControl.All. Такие широкие права дают доступ за пределами выбранной папки и маскируют отсутствующий или отозванный grant на папку. Если вы выбираете grant на папку, удалите также ранее добавленное Sites.Selected и соответствующий grant на сайт, чтобы grant на папку был единственной границей. Список источников в AI-School предупреждает, когда у приложения есть такие дополнительные права.

Делегированные права для личных подключений Outlook, Teams и SharePoint могут остаться в том же приложении. Они не заменяют право приложения для центральной базы знаний.

3. Предоставьте приложению доступ на чтение к папке или сайту​

Эту административную операцию можно выполнить с помощью Microsoft Graph Explorer. Используйте учетную запись администратора в том же Microsoft-каталоге, с ролью SharePoint Administrator или более высокой подходящей административной ролью и доступом к нужному сайту. Роли подписки Azure или только владения приложением для этого недостаточно.

  1. Войдите в Graph Explorer под учетной записью администратора и проверьте отображаемую организацию.
  2. Откройте профильное меню → Consent to permissions, найдите Sites.FullControl.All и выберите Consent. Это delegated-право администратора, с помощью которого Graph Explorer управляет grants; не добавляйте его как право приложения на приложение базы знаний. Используйте согласие на уровне учетной записи, если организационное согласие для всех пользователей не нужно.
  3. Найдите drive ID и item ID папки. В форме подключения AI-School готовый запрос GET появляется, как только указан URL папки. Вы также можете составить его сами: закодируйте URL папки в base64url (без = в конце) и добавьте перед ним u!.
GET https://graph.microsoft.com/v1.0/shares/u!GECODEERDE-MAP-URL/driveItem?$select=id,name,webUrl,parentReference

В ответе id — это item ID папки, а parentReference.driveId — drive ID библиотеки (начинается с b!). Проверьте name и webUrl: это должна быть папка, которую вы хотите предоставить. Если запрос share не работает, используйте библиотеку и путь:

GET https://graph.microsoft.com/v1.0/sites/uworganisatie.sharepoint.com:/sites/uwsite:/drives?$select=id,name,webUrl
GET https://graph.microsoft.com/v1.0/drives/DRIVE-ID/root:/Pad/Naar/Map?$select=id,name,webUrl
  1. Сначала проверьте существующие grants на папке. Если ваш client ID уже там указан с ролью read, создавать второй grant не нужно.
GET https://graph.microsoft.com/v1.0/drives/DRIVE-ID/items/MAP-ID/permissions
  1. Если grant отсутствует, выберите POST по тому же адресу и в Request Body вставьте следующий JSON. CLIENT-ID-VAN-UW-APP — это Application (client) ID вашего интеграционного приложения, а не приложение Graph Explorer. Используйте исключительно роль read.
{
"roles": ["read"],
"grantedToV2": {
"application": {
"id": "CLIENT-ID-VAN-UW-APP"
}
}
}
  1. Нажмите Run query. Успешное добавление возвращает 201 Created. Проверьте в ответе роль read и client ID и сохраните permission ID (id) для последующей проверки или отзыва.
  2. Повторяйте это только для каждой другой папки, которую вы сознательно хотите подключить. У каждой подключенной папки свой grant.
Grant на папку прерывает наследование

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

Вложенные папки и файлы с собственными правами. Вложенные папки и файлы, наследующие права выбранной папки, подпадают под grant. Если у вложенной папки или файла собственные (прерванные) права без приложения, приложение не может их прочитать. AI-School полностью пропускает такую вложенную папку и показывает их количество в списке источников; ранее импортированные из нее документы отзываются. Соседняя папка или другая библиотека никогда не доступны для чтения.

Grant на сайт (альтернатива)​

Если вы используете Sites.Selected, найдите site ID с помощью GET https://graph.microsoft.com/v1.0/sites/uworganisatie.sharepoint.com:/sites/uwsite?$select=id,displayName,webUrl, проверьте существующие grants с помощью GET .../sites/SITE-ID/permissions и при необходимости добавьте grant через POST по тому же адресу:

{
"roles": ["read"],
"grantedToIdentities": [
{
"application": {
"id": "CLIENT-ID-VAN-UW-APP",
"displayName": "NAAM-VAN-UW-INTEGRATIE-APP"
}
}
]
}

Grant на сайт дает приложению доступ на чтение всего сайта. AI-School импортирует только выбранную папку, но этот фильтр не является границей авторизации Microsoft.

4. Подключите папку и проверьте результат​

Откройте Администрирование → База знаний → Добавить → Папки SharePoint → Подключить папку. Укажите реальный URL папки из адресной строки библиотеки или OneDrive (не ссылку-приглашение) и в поле Доступ приложения организации к Microsoft выберите grant на папку или grant на сайт. Для grant на папку укажите drive ID и item ID из шага 3. Тогда AI-School читает только эту папку и проверяет, что URL папки соответствует ID; при расхождении подключение отклоняется. Можно подключить и папку в OneDrive for Business, но она принадлежит одному сотруднику: если сотрудник уходит, папка исчезает, а вместе с ней и источник знаний. Для долговременных знаний лучше используйте сайт SharePoint. Выберите область, аудиторию и статус публикации согласно руководству по базе знаний.

Проверьте с помощью Обновить, обработаны ли документы без ошибок. Используйте Синхронизировать сейчас для новой проверки, а затем задайте конкретный вопрос в чате об импортированном документе. Убедитесь, что ответ указывает правильный центральный источник знаний.

Доступ Microsoft и права базы знаний — это разные вещи

Grant определяет, какую папку может читать приложение. Какие пользователи получают импортированные документы, определяют права базы знаний в AI-School (школа, аудитория, отделы). Индивидуальные права SharePoint не наследуются. Поэтому подключайте закрытое содержимое секции или команды только с такой же закрытой аудиторией базы знаний.

5. Отзыв grant​

Удалите grant с помощью DELETE по адресу https://graph.microsoft.com/v1.0/drives/DRIVE-ID/items/MAP-ID/permissions/PERMISSION-ID (grant на сайт: .../sites/SITE-ID/permissions/PERMISSION-ID). Отзыв admin consent блокирует приложение сразу для всех grants.

При следующей проверке AI-School больше не получает доступ к папке. Ни один документ из этого источника тогда больше не предоставляется, в том числе в ответах чата, а список источников показывает, что Microsoft запрещает доступ. Это происходит не сразу: автоматическая проверка выполняется каждые 15 минут максимум для 20 источников за раунд, поэтому при большем количестве источников это занимает больше времени. Для немедленного эффекта используйте Синхронизировать сейчас или Отключить. То же самое относится к перемещенной или удаленной папке.

ПроблемаПроверка со стороны Microsoft
Вход работает, но центральная папка — нетПраво приложения должно быть типа Application и иметь admin consent; дополнительно проверьте отдельный grant на папку или сайт.
"Microsoft запрещает доступ к папке"Правильные Microsoft-каталог, drive ID, ID папки, client ID и read-grant; не была ли папка перемещена, удалена или возвращена к унаследованным правам?
Подключение отклонено, хотя grant существуетURL папки не соответствует указанным ID. Скопируйте URL заново из библиотеки и проверьте webUrl в ответе Graph.
Предупреждение о дополнительных правахУдалите широкие права приложения, а для grant на папку — также Sites.Selected вместе с grant на сайт.
Вложенные папки пропущеныУ этих вложенных папок собственные права без приложения. Позвольте им наследовать права или сознательно предоставьте отдельный read-grant.
403 при административной операции в Graph ExplorerDelegated Sites.FullControl.All, предоставленное согласие, роль администратора и доступ к сайту. Не добавляйте широкое право в приложение интеграции как решение.
"Приложению организации не удалось войти в Microsoft"Попросите платформенного администратора обновить новое значение secret Value в нужном Microsoft Identity Provider; проверьте admin consent.

Для OnderwijsSupport на AI-Corporate центральное подключение с grant на сайт было опубликовано и протестировано 14 октября 2026 года. Grant на папку станет доступен, как только будет опубликован соответствующий релиз. Доступность на AI-School, AI-Public или другой среде должна быть подтверждена платформенным администратором.

Документация Microsoft: Selected permissions, добавление grant на папку, кодирование share-URL и добавление grant на сайт.