ClaimsPrincipal Azure Bot Framework
Questa è una domanda di concetto generale riguardante l'ottenimento di informazioni sull'utente nella chat del bot. Preferibilmente questo sarebbe tramite OpenID e per iniziare utilizzando gli account Microsoft. Vorremmo essere in grado di leggere il nome visualizzato dell'utente, l'indirizzo di posta elettronica dell'utente, l'appartenenza al gruppo di utenti e così via. Qual è il modo migliore per ottenere queste informazioni in Azure Bot Framework? In MVC usare OpenID per ottenere ClaimsPrincipal è facile, ma questo concetto può essere usato in Azure Bot Framework e ci sono esempi di questo processo?
Risposte
C'era molto da fare, ma essenzialmente ho utilizzato una connessione OAuth sul servizio Bot per inviare l'utente all'endpoint AADv2 per ottenere il token. Ho quindi utilizzato quel token per inviarlo al metodo GraphServiceClient (parte del pacchetto Nuget Microsoft.Graph) per ottenere le informazioni sull'utente. Ciò è stato concesso assegnando all'app in Azure AD MS Graph le autorizzazioni dell'API User.Read.