Так что, побывав в Ignite в 2017 году, я был действительно взволнован новыми возможностями Webhooks в Microsoft Graph и привязкой к функциям Azure.
Недавно у меня появилась возможность по-настоящему исследовать это для себя.
Я смотрю на это с точки зрения Identity Management - я действительно хочу увидеть, к какому типу управления адаптацией и изменениями пользователей мы можем реагировать и обрабатывать функции Graph Webhooks и Azure. Поэтому я начал изучать конечную точку бета-тестирования и веб-хуки, доступные для "/ users"
Первое, что меня поразило, это то, что в бете только «обновленный» или «удаленный» является допустимым типом изменений. Я действительно хотел бы «создал» - поскольку именно тогда большая часть работы будет выполнена для пользователя (например, создание некоторых уникальных значений атрибутов)
Хорошо, я подумал и просто попытался посмотреть на "/ users" и только changetype = "updated". Я создал подписку и базовую функцию Azure для обработки запросов. Обновил пользователя в Azure AD (только что изменил атрибут «Фамилия») и, конечно же, триггер был отправлен в мою функцию Azure
Теперь возникают мои самые большие проблемы - это действительно непригодно в нынешнем виде.
кажется, что он реагирует на все изменения / пользователей, и я думаю, что ответ триггера может содержать несколько пользователей.
Действительно, было бы предпочтительнее получать отдельные триггеры для каждого объекта, измененного в / users, даже если они были изменены одновременно
Глядя на актуальную информацию, высланную здесь, лежит БОЛЬШАЯ проблема.
Я получил идентификатор пользователя изменен (хорошо, но также ожидается)
Я получаю идентификатор организации (хорошо ..)
Я получаю eventTime (хорошо)
Я получаю sequenceNumber (не уверен, что это?)
Я получаю subscriptionExpirationDateTime (хорошо, хорошо, чтобы иметь)
Я получаю подпискуId для webhook (хорошо, хорошо, чтобы иметь)
... но ГДЕ информация о том, какие данные были изменены ??? Нигде не найти, какие атрибуты пользователя были изменены (в моем случае «Фамилия»). Это делает триггеры совершенно непригодными для "/ users", и я не могу думать о ком-либо, кто мог бы использовать эту функцию как есть?
Конечно, я знаю, что объект был изменен, но я понятия не имею, ЧТО произошло, и было ли изменение связано с моей функцией
Скажите, пожалуйста, есть ли планы включить фактические изменения в ответ триггера?
РЕДАКТИРОВАТЬ: хорошо, верно, да, это больше запрос функции от реальных разработчиков MS Graph - будет искать лучшее место, чтобы получить этот ответ