问题标签 [auth-guard]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1257 浏览

angular - 身份验证服务和登录组件未通信

我正在使用 Angular 4 并尝试从 Auth 服务返回一个布尔值,但是当我尝试 console.log 该值时,它返回未定义。

我正在尝试返回布尔值并创建一个 if/else 语句,将登录的用户重定向到仪表板。

我的代码如下:

登录组件.ts

auth.service.ts

此外,在登录组件上,我收到一个错误,即“运算符 '==' 不能应用于类型 'void' 和 'boolean'。

但是我们不要关注那个,因为即使没有 if/else 条件,我总是返回未定义的。

0 投票
1 回答
1575 浏览

angular - 在 Angular 身份验证守卫中等待两个可观察对象按顺序完成

这是我的 Angular 身份验证守卫。它检查登录状态,然后从中获取一个 id(如果存在)并检查分配给该 id 的配置文件。我正在尝试使用 zip 方法解决等待这两个可观察对象按顺序完成的守卫,但 checkProfileOnline 返回错误,因为 uid 未定义,因此不等待第一个可观察对象完成。

0 投票
6 回答
21735 浏览

angular - Angular AuthGuard 不起作用

我正在使用角度 CanActivate Authguard 接口来保护我的组件。

我像这样将它添加到我的路由器配置中。

我还将它添加到提供者数组中。

但是当我运行应用程序时,它会出现以下错误

StaticInjectorError(AppModule)[AuthGuard]:
StaticInjectorError(Platform: core)[AuthGuard]: NullInjectorError: No provider for AuthGuard!

我想我正确地实施了它,但它不起作用。我做错了什么???

0 投票
1 回答
265 浏览

authentication - 使用 Angular 5 进行身份验证

我有一个登录页面,成功登录后我需要转到我的主页。该登录功能登录到 ldap 服务器并发送响应,无论身份验证是否成功。我不希望它保留在本地存储中,因为这个应用程序只有两个页面。登录和主页。当登录成功时,它应该重定向到主页,如果没有,它应该再次重定向到登录页面。

请在浏览器中使用console.log,“inside auth guard true”会打印数千次..

我的 app.component.html 中唯一的代码是<router-outlet></router-outlet>

app.module.ts

登录组件.ts

在此处输入图像描述

在此处输入图像描述

0 投票
5 回答
6991 浏览

angular - 检查角度 2 中是否存在路线

我想检查角度项目中是否存在路线。例如,用户http://localhost:4200/#/timestamp在 url 栏中输入并且timestamp在项目中不存在,您将如何在不重定向的情况下进行检查?

0 投票
0 回答
119 浏览

angular - Angular5路由问题

在从一个组件导航到另一个组件时处理 angular5 面临的路由器问题错误显示:无法激活已激活的插座请查找代码、标题导航和错误的屏幕截图。
错误截图

在此处输入图像描述
路由模块认证保护在此处输入图像描述
在此处输入图像描述

主题路由.module.ts

我的应用程序文件结构的屏幕截图

0 投票
1 回答
1225 浏览

angular - 在 Angular 6 应用程序中实现了 Auth 保护。实施不起作用。

在 Angular 6 应用程序中实现了 Auth 保护。实施不起作用。

认证卫士

预期结果 重定向到 next.url

实际结果manageAccountService.getAccounts()多次 卡在循环发送请求中

0 投票
3 回答
3496 浏览

angular - Angular-5登录后如何实现基于角色的重定向?

我是新手Angular,我正在使用Angular-5. 在我的应用程序中,我有 2 个屏幕/组件,分别称为“ Admin-Dashboard ”和“ HR-Dashboard ”。我的默认路线是 /Admin-Dashboard查看以下路线:

如果用户未登录我的AuthGaurd重定向用户到登录屏幕,则用户使用他的有效凭据登录。当用户登录时,用户用户被重定向到/即默认路由,然后自动重定向到/Admin-Dashboard

我的问题是我必须根据他的角色(HR 或 ADMIN)重定向到登录用户。如果user.role=="ADMIN"去 Admin-Dashboard,如果 user.role=="HR" 去 HR-Dashboard。

目前我的方法是,/Admin-Dashboard由于默认路由设置,用户首先重定向到,然后在其构造函数中我检查用户角色,如果是,HR我使用重定向用户到“HR-Dashboard” router.navigate()。这工作正常,但首先在地址栏中 /Admin-Dashboard呈现,然后重定向到 HR-Dashboard。

我正在寻找一些更好的方法来实现相同的功能。有什么方法可以让我检查路由本身是管理员还是 hr 并相应地重定向?

更新:对不起,我忘了提大事,我正在使用Gluu(第三方身份验证服务器)作为身份验证服务器,它将用户重定向到我的应用程序 url(https://ip/port例如' https://192.168.55.10:4200 ') 如果用户成功登录。我没有控制从 gluu 更改导航,它只会重定向到我的默认 URL 以及用户数据。即使是登录屏幕也不是我的应用程序的一部分,它托管在 cloude 上,我使用环境配置文件重定向到登录OIDC_Settings页面AuthGaurd

先感谢您。

0 投票
0 回答
380 浏览

angular - angular 5 auth 保护导航

当我尝试实现导航问题的安全性时,我的应用程序在没有身份验证保护的情况下运行良好。问题是 auth guard 正在通过条件(使用 console.log 测试)。url 正在更改为 /prpage 但是viewport 仍然保留在我看到 /formpage 的内容并且没有正确导航到该页面(/prpage)的位置。

应用路由器.module.ts

auth.guard.ts

form.component.ts

0 投票
2 回答
3735 浏览

angular - Angular 6:空路径绕过身份验证保护

我正在尝试使用 Angular 路由器,但在空路径上遇到问题。这是我的路线:

我的 AuthGuardService 有一个 canLoad 方法,它总是返回 false 并重定向到 '/login' 路径:

当我转到“localhost:4200/feed”时,我被重定向到“/login”。

但是,如果我转到 'localhost:4200/',则忽略身份验证保护并显示我的提要模块的组件。

你知道为什么吗?

谢谢 !