0

我正在尝试通过 Azure 移动应用获取 Id_token,但我收到了 mobileServiceAuthenticationToken。

我的 iOS 应用程序接收到 mobileServiceAuthenticationToken,实现如下:将 Azure AD 集成到 iOS 应用程序中

我需要 Id_token(使用算法 RS256),因为我的后端服务(java spring-boot)需要验证这个令牌,而这对于 mobileServiceAuthenticationToken 是不可能的。mobileServiceAuthenticationToken 基于算法 HS256(需要客户端密码),不允许请求 Azure AD 通过 Microsoft Graph Api 获取用户信息。

以下是微软参考的链接以获取更多信息:Azure AD 令牌参考

4

1 回答 1

0

id_token无法调用 Microsoft Graph REST 。要调用 Microsoft Graph REST,我们需要为其获取对应access_tokenaud声明为https://graph.microsoft.com.

移动认证有两种流,客户端流和服务器流。他们都应该在你的场景中工作,但是进展有点不同。

客户端流程:对于此流程,您可以首先使用ADAL SDK从 Azure Active Directory 获取 Microsoft Graph的id_token和。然后,您可以将 id_token 与 EasyAuth 交换为身份验证令牌并登录您的移动应用程序。access_token

服务器流程:您可以配置移动应用程序以获取 Microsoft Graph 的access_token。然后您可以在移动后端实现代理。之后,您只需调用您的所有者服务和 Microsoft Graph 的移动后端。

以下是有关此主题的一些有用文章:

如何:使用 Active Directory 身份验证库对用户进行身份验证

应用服务身份验证和 Azure AD Graph API

于 2017-10-24T03:11:18.890 回答