0

我们有一个带有 auth0 设置的主要角度应用程序。在主应用程序内部存在另一个作为 npm 模块导入的子应用程序。子应用程序还有一个独立的可部署版本,用于开发和测试目的。

由于独立版本必须有自己的身份验证方式,并且子应用程序具有不同的角色和不同的权限,我们为子应用程序创建了另一个 auth0 客户端,但目前还没有使用它。因此,子应用使用与主应用相同的 auth0 客户端。

根据目前集成应用的设置,accessToken 由主应用设置,由子应用读取,以便能够添加到请求头中。现在我们计划将其自己的客户端凭据用于子应用程序。为此,我们还需要在 localStorage 中添加新的键值对(可能在子应用配置中的现有键值对中添加前缀),这样它们就不会发生冲突。

在这一点上,我想问一下这对于这样的子应用程序是否是一个理想且正确的设置。我愿意接受任何建议。先感谢您。

4

1 回答 1

0

我猜你正在使用 canActivate 和 authGuard 来保护你的应用程序的路由。

然后您可能需要为您的子应用程序创建一个新的 authGuardService。

例子 :

在您的主应用程序中,您将使用 AuthGuardServiceMainApp

  {
    path: 'main-path'
    , component: MainComponent
    , canActivate: [AuthGuardServiceMainApp]
  }

在子应用程序中,您将使用另一个服务。

  {
    path: 'sub-path'
    , component: SubComponent
    , canActivate: [AuthGuardServiceSubApp]
  }

通过这种方式,您可以对每个服务中的身份验证进行自定义控制。

于 2018-04-06T09:06:20.943 回答