【问题标题】:Azure B2C - 2 Applications, Different ProtocolsAzure B2C - 2 个应用程序,不同的协议
【发布时间】:2020-07-14 09:30:15
【问题描述】:

我有 2 个应用程序。第一个是从 iFrame 中的第二个加载报告的门户。我将分别称为 Portal App 和 iFrame App。

Portal 应用程序使用 Oauth2 authz 代码授权流程。 iFrame 应用使用 SAML2。

我已通过同一 B2C 租户中的 2 个不同的依赖方文件为两者实施了自定义策略。

不需要对用户进行身份验证 2ce - 一个用于门户应用程序,第二次用于 iFrame 应用程序。但是当然,技术配置文件使用不同的协议(OpenIdConenct 和 SAML2),因此令牌和声明会有所不同。

问题:是否可以为两个应用程序实现单一身份验证?

【问题讨论】:

    标签: azure oauth-2.0 azure-active-directory azure-ad-b2c saml-2.0


    【解决方案1】:

    从技术上讲,如果 iframe 应用程序要使用 SSO,这应该可以正常工作,无需配置,因为它将使用 AAD B2C 从门户应用程序登录设置的单点登录 cookie。关键在于 SAML 流在与 AAD B2C 服务的交互过程中完全使用重定向,没有任何用户交互

    这是因为 AAD B2C 和 AAD 不允许在 iframe 中呈现其页面。所有 HTTP 200 响应都会从 AAD B2C 向浏览器返回 X Frame Options 拒绝标头。

    如果用户使用任何联合 IdP(例如联合到 AAD B2C 的 ADFS)登录,该 IdP 也不得在 iframe 中提示用户。如果是联合 SAML IdP,则需要使用 REDIRECT 绑定。

    【讨论】:

    • 感谢您的帮助@Jas Suri 因此,之前对门户应用程序的身份验证使用 Oauth2 而不是 SAML 并不重要? iFrame 应用如何获得它需要的声明?
    • 是的,您可以获得跨协议 SSO。基本上所有新声明都是在 iframe 中发生的 SSO 期间在服务器端计算的。
    • 好的,我会试试这个并报告。
    • 嘿@Jas Suri,当你说 关键是 SAML 流在与 AAD B2C 服务的交互过程中完全使用重定向,没有任何用户交互。。这是从他的SP方面影响的吗?如果是这样,我如何告诉他们确保这一点?如果它是在 B2C 上实现的,我该怎么做?
    • SAML SP 端不需要做任何特定的事情,除了像往常一样在 iframe 中加载他们的页面并使用 SAML 请求(forceAuthN false)将用户发送到 B2C 端点。 AAD B2C 不需要任何配置,因为这里的 SSO 要求是开箱即用的。
    猜你喜欢
    • 1970-01-01
    • 2018-09-12
    • 2022-01-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-09
    • 1970-01-01
    相关资源
    最近更新 更多