仅针对角度为5的特定路径初始化keycloack

时间:2018-03-26 12:02:34

标签: angular routes single-sign-on angular5 keycloak

我正在尝试仅为某些路线添加keycloack登录,其他路线将是公开的。用户可以看到路线(页面)。

默认情况下,我正在尝试加载公共页面,当用户尝试提交详细信息时,我必须要求他登录

try {
  await keycloak.init({
    config: {
      url: 'http://localhost:8080/auth',
      realm: 'your-realm',
      clientId: 'client-id'
    },
    initOptions: {
      onLoad: 'login-required',
      checkLoginIframe: false
    },
    bearerExcludedUrls: [
      '/assets',
      '/clients/public'
    ],
  });
  resolve();
} catch (error) {}

但仍然会重定向到keycloack登录。

https://www.npmjs.com/package/keycloak-angular 我按照上面提到的链接

的文档

谢谢。

2 个答案:

答案 0 :(得分:0)

您需要的是Route Guard

但是请read the guide了解如何在本网站上正确提问。

答案 1 :(得分:0)

尝试注释keycloak初始化选项“ onLoad:'需要登录'”。如果keycloak从应用程序应用程序启动时开始,那么您必须在浏览器中打开应用程序时登录。注释掉onLoad之后,仅当您输入位于AuthGuard后面的网址时,才需要登录。