繁体   English   中英

获取链接到Azure AD承载令牌的用户名

[英]Get username linked to Azure AD bearer token

我正在运行一个Cordova应用程序,该应用程序连接到Azure上托管的Web API。 我已经使用Azure AD承载身份验证保护了API的安全。 当用户尝试呼叫端点之一时,会将其转发到Azure AD登录页,输入其凭据,然后为其提供令牌。 令牌将添加到对API的所有后续请求中。 我正在使用移动应用程序客户端SDK(cordova-plugin-ms-azure-mobile-apps)来执行此操作。

我现在想知道谁在服务器端调用API。 我已经检查了我的Web API控制器的User属性。 那里有一些信息,其中包括许多声明,但是没有什么类似于实际的用户名(只有sid)。

所以现在的问题是:

  • 我可以以某种方式将信息添加到令牌中吗? 由于令牌来自Azure AD,所以我想这也是添加其他信息的地方,但是我不确定是否可行。
  • 如果没有,我可以使用sid将其转换为已登录的用户吗?

也许还有其他我没想到的选择。

我发现了这个: https : //github.com/Azure/azure-mobile-apps-net-server/wiki/Understanding-User-Ids 它解释了“ stable_sid”属性如何比用户的电子邮件地址更稳定,因为您可能有多个身份验证提供程序,而提供程序又可能决定更改他们的身份。

因此,我得出的结论是,我将尝试重写某些东西以使用stable_sid标识符,而不是尝试查找电子邮件地址。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM