#microsoft-graph-api #botframework #office365 #microsoft-teams #appsource
#microsoft-graph-api #botframework #office365 #microsoft-команды #appsource
Вопрос:
Я хочу разработать и опубликовать бота для команд, чтобы взаимодействовать с моим SaaS (у меня уже есть Slackbot, который я портирую). Я создаю регистрацию канала бота в соответствии с этим руководством и столкнулся с выбором: автоматически генерировать новый идентификатор приложения и пароль или регистрировать их вручную (описано здесь ). У меня уже есть приложение Azure AD для моего SaaS, которое опубликовано на AppSource marketplace (интеграция в настоящее время в основном позволяет входить в систему с вашей учетной записью M365 и синхронизировать пользователей с AD). Возможно ли это и имеет ли смысл использовать тот же идентификатор приложения для бота, который я разрабатываю для того же SaaS? Или это как-то не рекомендуется? И в связи с этим, могу ли я расширить свой существующий список на AppSource, чтобы он также содержал нового бота, или это должен быть отдельный список?
Я заметил в документации по ручной регистрации бота, что в нем говорится, что боты работают только с «Учетными записями в любом организационном каталоге и личными учетными записями Microsoft (например, Xbox, Outlook.com )» — мое существующее приложение работает только с учетными записями организации, а не с личными учетными записями (поскольку это приложение для B2B) — делаетэто что-то меняет?
Ответ №1:
Возможно, рассмотрим вопрос с другой стороны — есть ли веская причина для повторного использования приложения? Создать дополнительное приложение очень просто и практически бесплатно, и таким образом вы не рискуете получить настройки, необходимые для одного сценария, которые противоречат требованиям другого сценария, сейчас или в будущем. Однако вот некоторые другие возможные соображения:
- новые приложения требуют проверки издателя с 9 ноября 2020 года. Это не повлияет на внутреннее приложение, на которое может быть получено согласие глобального администратора.
- Если вам нужно согласие пользователя (или администратора) на некоторый набор привилегий (например, делегированный доступ к Graph), то использование того же приложения может иметь смысл. Примером в контексте Teams могут быть бот и вкладка, которым обоим нужно получить доступ к чему-либо из графика от имени пользователя. Вы можете получить согласие в одном контексте и использовать его для доступа к ресурсам из обоих контекстов.
В двух словах, и особенно без действительно хорошего представления о ваших текущих и планируемых вариантах использования, трудно дать действительно твердое «да» или «нет». Моя интуиция подсказывает, что используйте отдельное приложение для отдельного, не связанного сценария.
Комментарии:
1. Спасибо за ответ. Что касается вашего пункта 2. Мне нужен доступ к Graph, чтобы мой бот был полезным, поэтому для этого требуется дополнительный набор разрешений, которые использует мое существующее приложение. OTOH Я все еще хочу, чтобы мое существующее приложение можно было использовать без Teams (оно использует поток разрешений администратора «разрешения по умолчанию», и я не хочу добавлять в него разрешения бота), поэтому похоже, что отдельный идентификатор приложения с дополнительным набором разрешений — это правильный путь.
2. звучит неплохо. Как обсуждалось, дополнительное приложение не требует затрат, так что на самом деле это просто потенциальное неудобство для пользователя, если он даст согласие дважды. Если это даже не применимо (один и тот же пользователь не будет использовать оба приложения), то определенно лучше использовать два приложения
Ответ №2:
- Повторное использование того же идентификатора приложения для любого другого B2B не создаст никаких проблем. При этом вы не можете использовать вышеупомянутое приложение, если планируете внедрять / использовать с ним BOT framework, поскольку оно зарегистрировано только для организации.
- Если вы планируете создать регистрацию приложения, связанную с ботом, я бы посоветовал вам создать новую регистрацию приложения по сценарию «Организация личное для вас».
- Пожалуйста, ознакомьтесь с документацией и ее отказом от ответственности:
В приведенном выше документе довольно ясно, что если вы создадите любую другую регистрацию приложения (кроме организации личная), то БОТ будет непригоден для использования.