在多租户应用程序中使用我的应用程序门户和 Azure AD SSO 登录

Sign in with My Apps portal and Azure AD SSO in multi tenants application

我们正在开发托管在 Azure 中的多租户应用程序。我们使用 IdentityServer4 来处理身份验证和授权。最近,我们通过在 Azure AD 中注册我们的应用程序来启用 SSO。我们在 App 注册服务中启用了多租户 SSO。 SSO 工作正常,客户端用户可以使用他们的 Azure AD 登录。

用户通过提供以下格式 https://myapplication.com/mytenant 的 URL 来访问应用程序。当用户首次登录时需要同意,如果同意,用户可以成功登录到其租户 space。

第一次成功访问后,我们的应用程序被添加到 Azure 中的“我的应用程序”门户中。 我们的问题是我的应用程序中的 URL 指向应用程序注册中品牌选项卡中提供的那个,而不是用户第一次登录的那个。由于这是一个多租户应用程序,每个租户都有自己的 URL.

是否可以将首次登录 URL 保存在“我的应用”门户中?我们可以根据声明进行 Azure 租户-应用程序租户同步,但这意味着仅访问“我的应用程序”门户就会遇到很多麻烦。

每个客户的管理员可以 add a linked "single sign-on" 他们组织中的应用程序并将其分配给用户,但是无法让您的单个多租户应用程序出现在具有不同 URL 的不同租户中.

您可以做的是让您的(唯一)登录 URL 成为触发登录的 URL(通常,在“公共”或“组织”上端点,而不是特定于租户的端点)。用户登录后,您就会知道该用户属于哪个租户,并且您可以将他们重定向到您网站的适当版本。