繁体   English   中英

应用之间的Azure AD B2C SSO

[英]Azure AD B2C SSO between Apps

我们正在尝试为我们的几个应用程序实施SSO,以使用户能够登录一次,然后在应用程序之间无缝切换。 为此,我们使用Azure AD B2C存储我们的用户,并且已经能够使用我们的第一个应用程序实现登录。 但是,当用户切换到另一个应用程序时,我们现在面临问题:好像没有将用户发送到登录策略并让他/她重复登录过程,就不可能在第二个应用程序中授权用户。

这是我们目前正在做的事情:

  1. 用户将发送到已配置的登录策略( https://login.microsoftonline.com/mytennant.onmicrosoft.com/oauth2/v2.0/authorize?p=B2C_1_webapp1_login&somemore=parameters )并登录。
  2. 用户使用id_tokencode参数发送回我们的WebApp1,我们使用这些参数在WebApp1中生成用户会话
  3. 当用户访问WebApp2时,我们将从步骤2发送code ,并在WebApp2中使用该code从Azure AD B2C请求访问令牌( https://login.microsoftonline.com/mytennant.onmicrosoft.com/oauth2/v2.0/token?p = B2C_1_webapp2_login

但是,在执行步骤3时,我们总是会从Azure收到以下错误:

AADB2C90088:尚未为此端点颁发提供的授予。 实际值:B2C_1_webapp1_login和期望值:B2C_1_webapp2_login

错误很明显,但是我们只是不知道如何解决。 我们已经一遍又一遍地阅读了文档,但是找不到如何解决此问题的线索。

因此,任何帮助将不胜感激。 另外,如果需要任何其他信息,请告诉我,我们很乐意添加。

谢谢,

莫里兹

您不能使用从其他策略生成的代码。 (请参阅文档-在“ p”参数下获取令牌 。)

您是否有理由对第二个Web应用程序使用其他策略? 您可以只在B2C内创建一个新的应用程序,并使用与应用程序1相同的策略来定位它。或者您需要为第二个应用程序重复步骤1和2,并依靠SSO配置。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM