Azure AD 单点登录 : Mobile app with OAuth and SAML

标签 azure mobile oauth azure-active-directory saml

当前状态:我有一个移动应用程序,它使用 PKCE 流通过 OAuth 将用户登录到 Azure AD。经过身份验证后,应用程序将使用 token 从某些 API 获取各种形式的数据。

随着应用程序的发展,将 SSO 与另一个 Web 应用程序集成的需求已经出现(随着我们的前进,将会添加更多的服务提供商)。它将充当服务提供商,并支持 IDP 通过 SAML 发起的身份验证。

问题:一旦在 AD 租户下配置了此服务提供商,是否有办法将我们的 OAuth token 交换或转换为可以传递到 SAML SP 的内容,而无需重新启动-认证?我是否以正确的方式思考这个问题?我主要好奇的是,我们是否需要在移动应用程序中重新实现身份验证以支持 SAML(即建立某种可以充当移动应用程序代理的基于 Web 的 SAML 服务)?如果该路由是实现我们的要求所必需的,我假设有一种方法仍然可以获得有效的 OAuth 或等效 token ,我们可以使用它来发送到我们的 API。

如果这是一个重复的问题,我深表歉意,但我找不到任何具有类似细节的内容。提前致谢!

最佳答案

您当然可以使用 OAuth 2.0 OBO 流程,该流程允许基于 OAuth2 的应用程序访问使用 SAML token 的 Web 服务 API 端点。您可以在这里阅读更多内容,它对如何实现相同目标有一些非常好的指导: https://learn.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-on-behalf-of-flow#saml-assertions-obtained-with-an-oauth20-obo-flow

确保您的 SAML 请求按照此处提到的详细信息进行了良好的表述: https://learn.microsoft.com/en-us/azure/active-directory/develop/single-sign-on-saml-protocol

关于Azure AD 单点登录 : Mobile app with OAuth and SAML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66105201/

相关文章:

azure - 在用户流 JWT Azure AD B2C 中添加应用程序扩展属性

azure - 无法从 Windows Azure 网站删除证书 "Updating configuration failed"

Azure SQL 数据库动态数据屏蔽不会保存一列

encoding - 文本代码解码

animation - 统一: 30fps vs 60fps on 30fps animation

scala - Play Scala Oauth 提供程序错误

python - 在 Django 中创建自定义用户模型的指南

Azure 数据工厂 V2 - 输入和输出

html - 有没有办法制作一个适用于 iOS 的播放器,可以在 HTML 文档中播放,而不是全屏播放?

angularjs - 使用 AngularJs、WebAPI 和 OAuth2 时以明文形式获取用户角色以及 JWT