Angular子应用程序的Auth0设置

时间:2018-04-06 08:01:28

标签: angular npm auth0 ng-packagr

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

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

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

此时我想询问这是否是这种子应用程序的理想和适当的设置。我对任何建议持开放态度。提前谢谢。

1 个答案:

答案 0 :(得分:0)

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

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

示例:

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

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

在子应用程序中,您将使用其他服务。

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

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