Botframework ClaimsPrincipal Azure机器人程序框架

Botframework ClaimsPrincipal Azure机器人程序框架,botframework,Botframework,这是一个关于在bot聊天中获取用户信息的广义概念问题。最好是通过OpenID,从使用Microsoft帐户开始。我们希望能够读取用户显示名称、用户电子邮件地址、用户组成员身份等。在Azure Bot框架中获取此信息的最佳方式是什么?在MVC中,使用OpenID获取ClaimsPrincipal是很容易的,但是这个概念可以在Azure Bot框架中使用吗?有没有这个过程的例子?对此进行了很多讨论,但实际上我在Bot服务上使用了OAuth连接,将用户发送到AADv2端点以获取令牌。然后,我使用该令牌

这是一个关于在bot聊天中获取用户信息的广义概念问题。最好是通过OpenID,从使用Microsoft帐户开始。我们希望能够读取用户显示名称、用户电子邮件地址、用户组成员身份等。在Azure Bot框架中获取此信息的最佳方式是什么?在MVC中,使用OpenID获取ClaimsPrincipal是很容易的,但是这个概念可以在Azure Bot框架中使用吗?有没有这个过程的例子?

对此进行了很多讨论,但实际上我在Bot服务上使用了OAuth连接,将用户发送到AADv2端点以获取令牌。然后,我使用该令牌发送到GraphServiceClient方法(Nuget包Microsoft.Graph的一部分)以获取用户信息。这是通过授予Azure AD MS Graph用户中的应用程序读取API权限授予的。

我已阅读并测试了此bot示例:。我能看到令牌,但别的什么也看不见。这是正确的路径吗?此身份验证机制是否允许读取其他用户声明属性?我相信我将采取的解决方案是从上述示例中的OAuth AD获取令牌,然后使用该令牌查询MS Graph API以获取有关用户的信息。一旦我有了这个工作,我会张贴什么样的解决方案看起来像这里。