Azure AD B2C和子域

时间:2019-04-11 07:30:57

标签: azure azure-ad-b2c

我们的应用程序是SPA应用程序,使用hello.js与Azure AD B2C进行通信。我们还利用Azure AD B2C屏幕的自定义策略和动态样式。

假设我们有N个子域(subdomain1.maindomain.com,subdomain2.maindomain.com,…subdomainN.maindomain.com),其中N> 20(这是Azure AD B2C中重定向URI的最大数量)

从今天开始,当用户导航到subdomain1.maindomain.com时,我们将其重定向到 maindomain.com?query=subdomain1

基于查询参数,我们以动态方式推断自定义策略以及可能要应用到自定义Azure B2C UI的其他一些参数(因此,我们将这些参数作为策略URL的查询字符串参数传递)< / p>

它使我们能够在Azure AD B2C(maindomain.com/Redirect)中仅设置 1个重定向URI

但是,一旦用户登录,“?query = subdomain1”将被删除。如果用户在登录后将站点的页面添加为书签,则他会将页面添加为:maindomain.com/SomePage。如果他以后再返回此页面,我们将无法推断出正确的自定义策略和样式。我们可以将一些信息存储在用户浏览器的本地存储中,但也可以将其删除。

理想情况下,我们希望始终将URL保持为subdomain1.maindomain.com(不带查询字符串)。

使用Azure AD B2C是否可以安全地做到这一点?

  1. 我想如果可以在Azure AD B2C中定义通配符重定向URI,例如* .maindomain.com,但我知道它不受支持。
  2. 由于我们在Azure AD B2C中限于20个重定向URI,因此我们不能仅在Azure AD B2C中的应用程序上注册所有子域重定向URI(我们可以有无限数量的子域)
  3. 我们的应用程序是SPA应用程序,我们在前端使用hello.js。如果我们保留一个公共重定向URI,则在发生重定向时,它将令牌信息存储在maindomain.com网站的存储中,因此无法从子域访问。

0 个答案:

没有答案