ClaimsPrincipal Azure Bot Framework
Это обобщенный концептуальный вопрос о получении информации о пользователе в чате бота. Предпочтительно это будет через OpenID и для начала с использованием учетных записей Microsoft. Мы хотели бы иметь возможность читать отображаемое имя пользователя, адрес электронной почты пользователя, членство в группе пользователей и т. Д. Как лучше всего получить эту информацию в Azure Bot Framework? В MVC использовать OpenID для получения ClaimsPrincipal легко, но можно ли использовать эту концепцию в Azure Bot Framework и есть ли примеры этого процесса?
Ответы
В это было много всего, но по сути я использовал соединение OAuth в службе ботов, чтобы отправить пользователя на конечную точку AADv2 для получения токена. Затем я использовал этот токен для отправки методу GraphServiceClient (часть пакета Nuget Microsoft.Graph) для получения информации о пользователе. Это было предоставлено путем предоставления приложению разрешений API User.Read в Azure AD MS Graph.