对身份服务器 4 使用突变

Using mutitenancy with identity server 4

我们正在尝试 saaskit with Identity Server 4 使用 Identity Server 制作多租户应用程序。

我们的要求如下

我们为所有客户提供通用的登录页面。但是,一旦客户端用户登录,我们就会显示用户有权访问的客户端列表,点击客户端名称,用户将被重定向到相应的客户端仪表板。

为了实现这一点,我们使用了以下方法。

  1. Identity Server 项目中添加了登录、客户端列表页面。
  2. 当用户单击所需的客户端时,它将被重定向到客户端项目(这里我们已经将仪表板 url 设置为客户端)。
  3. 在基于url(例如clientname/home/dashboard)的客户端项目中,我们正在使用saaskit解析客户端。
  4. 所以现在它应该显示仪表板页面,但是我们已经向仪表板方法添加了 [Authorize] 属性,因为它试图调用 account/login 方法。但是在这里,该方法不是从服务器项目调用的,而是在客户端项目(不可用)中搜索并导致 error.Also,试图将仪表板的 ReturnUrl 附加到它。

那么,谁能告诉我问题出在哪里,项目结构是否正确?

当您在 IdentityServer 门户中单击客户端 link 时,它应该将您跳转到您的客户端,然后它应该立即开始登录过程,通过 IdentityServer 将您弹回并最终返回客户端再次.

IdentityServer --> 客户端 --> IdentityServer --> 客户端。

请记住,仅仅因为用户已登录到 IdentityServer,并不意味着他们拥有客户端应用程序的 cookie。登录 process/redirects 仍需执行。

我将用作 ids 之外的独立应用程序的可用客户端列表,这样就会有来自 ids 的回调