Использование единой функции Azure для доступа к ресурсам нескольких пользователей от их имени - PullRequest
0 голосов
/ 11 ноября 2018

TL; DR: я не уверен, как получить доступ к нескольким пользователям в ресурсах календаря нашей организации (только для чтения) и возможно ли это сделать в одной функции Azure. Любое руководство, что я могу сделать, будет высоко ценится.

Как видно из заголовка, я ищу способ доступа к ресурсам нескольких пользователей от их имени с помощью функций Azure и API Microsoft Graph. В настоящее время у меня есть небольшой опыт использования привязки Auth Token , но до сих пор я мог использовать только один идентификатор пользователя в качестве входных данных для получения токена, к которому они дали согласие на доступ. Я хотел бы иметь возможность получить доступ к нескольким токенам пользователей в одной функции, независимо от того, нужно ли мне использовать привязку или кодировку Auth Token в каком-либо другом методе получения и извлечения указанных токенов. В настоящее время я вижу единственный способ заставить эту работу работать с привязкой Auth Token - создать функцию Azure для каждого из наших пользователей в отдельности, что потребует от администратора создания новой функции для каждого нового пользователя. Есть ли другой способ сделать это, чтобы я мог ограничить требования для одной функции? Я надеюсь, что смогу проходить через каждый токен (или идентификатор пользователя для получения указанного токена) и проверять их события в календаре в указанном цикле. Мне это нравится, потому что это означает, что никаким новым пользователям, которые будут добавлены, не понадобится новая функция, созданная исключительно для них, что означает меньшие накладные расходы на администрирование. Важно отметить, что он предназначен для работы <10 пользователей одновременно и <50 приложений в день. Мы будем запускать функцию один раз в день в определенное время. </p>

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

1 Ответ

0 голосов
/ 11 ноября 2018

Я вижу два основных направления, которые вы можете попробовать:

  • Создайте дополнительную функцию Azure , которая извлекает все соответствующие идентификаторы пользователя и передает каждый идентификатор второй функции Azure (если вы хотите продолжить использование Token From ID ).
  • Возможно, вы сможете использовать OAuth-поток Client Credentials , означающий выделенный токен для Azure Function , который можно использовать для доступа к необходимым ресурсам. Это может позволить вам выполнять итерацию по списку соответствующих пользователей и извлекать необходимую информацию для каждого пользователя в одной и той же функции.

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

...