我的网络应用程序有两种类型的用户,普通用户和管理员。基于这些用户,我想控制页面上的元素。例如,如果管理员登录,我们正在显示更新,删除他的选项,但限制普通用户的这些选项。出于安全目的,最好的,警卫或ngIf
提前致谢。
答案 0 :(得分:1)
Guard用于与ngIf不同的目的。
假设您有三个页面,即Page1
,Page2
,Page3
。现在考虑Page1
只能由管理员访问Page2
和{{管理员和普通用户都可以访问1}}。因此我们将为Page3
添加一个警卫,它将检查用户是否为管理员,然后只有它将加载页面,否则它将重定向到其他页面。
例如,如果管理员登录,我们正在显示更新,删除选项 他,但限制普通用户的这些选项
为此您需要ngIf,以便根据用户角色,您可以显示/隐藏可用选项,因为admin /普通用户正在访问同一页面。
出于安全目的,最好是Guards或ngIf
因此根据用例两者都有不同的用途。为了安全起见,最好使用Page1
或任何其他方式添加后端检查。因此,对于任何读/写/删除调用,它将验证用户是否可以访问它。
答案 1 :(得分:0)
警卫习惯于允许导航到某些路线。因此,如果您的应用程序有一个管理部分,那么将有一个警卫只允许某些用户根据他们的角色访问该屏幕,如果他们没有这些角色,他们可以被重定向到未授权页面等。
*ngIf
最好用于隐藏页面上的特定项目,例如,根据用户是否具有所需角色,将管理按钮隐藏在菜单中。
希望有帮助