【问题标题】:Azure AD SSO: Mobile app with OAuth and SAMLAzure AD SSO:具有 OAuth 和 SAML 的移动应用
【发布时间】:2021-02-08 16:09:36
【问题描述】:

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

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

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

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

【问题讨论】:

    标签: azure mobile oauth azure-active-directory saml


    【解决方案1】:

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

    确保您的 SAML 请求按照此处提到的详细信息制定得很好: https://docs.microsoft.com/en-us/azure/active-directory/develop/single-sign-on-saml-protocol

    【讨论】:

    • 有趣!所以听起来我们现有的 Web 服务(或者如果配置正确的话是一个新的)可以使用 OBO 流来获取 SAML 令牌。我看到文档提到使用它来调用 Web 服务。如果这只是对服务提供商网址的正常入站 SSO 请求(因此用户无需身份验证即可进入网站),这仍然可能吗?
    猜你喜欢
    • 1970-01-01
    • 2018-06-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多