热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Angular2RouteGuard/AuthGuardSecurity

如何解决《Angular2RouteGuard/AuthGuardSecurity》经验,为你挑选了1个好方法。

我刚刚在Angular-University完成了Angular 2和Firebase的Angular 2课程.

讲师Vasco(@ angular-university)提到Router Guard不安全,你可以绕过它,因为它是一个前端框架.

我们使用Firebase Auth来了解用户是否经过身份验证,并设置安全规则以防止读/写,除非用户通过身份验证.所以,我知道数据是受保护的.

然而,路线实际上是安全的吗?他提到使用服务器后端来提高安全性,但没有提到任何细节.

我一直在尝试搜索,但我还没有看到其他人提出这个问题.

在一天结束时,Angular 2路由器防护是独立安全还是您必须实施服务器来保护路由?用户如何绕过路线?

谢谢!



1> AngularChef..:

您描述的问题并非特定于Angular.所有Javascript应用程序都面临同样的安全问题.

瓦斯科正确地强调,路线卫兵只是部分安全.它们只是在客户端浏览器中执行的一段代码.如果用户可以使用此代码进行调节(例如,在他们的浏览器内存中),他们可能会改变它的工作方式.

在实践中,这并不一定容易,因为部署的代码被缩小,uglified,捆绑...但在较低级别,您的Angular应用程序只是一堆静态HTML/JS/CSS文件坐在服务器上.这些文件通常可公开访问:任何知道其URL的人都可以下载并浏览其源代码.如果有人要阅读您的应用文件的源代码,请问自己会冒哪些风险.您永远不应将敏感信息存储在这些文件中.

作为一般规则,如果您已经保护了后端,那么您已经完成了大部分工作.想象一下,恶意用户找到了激活您的一条受保护路线的方法.后端仍然不会返回此路由的数据,并且页面上没有任何内容显示.相反,您应该确保任何敏感操作都会查询后端(例如,不要让用户只是因为他们可以在浏览器中看到并单击"传输"按钮来转移资金;后端应该验证他们是否经过身份验证并且他们是有足够的资金).

现在,如果您想要额外的安全层,您可以要求对用户进行身份验证,以访问应用程序的静态资产(index.html,.js文件......),但您需要使用支持该用户的服务器(Firebase托管不会) t AFAIK)并且在实践中这很少是必要的.

退一步说,保护单页应用程序不仅仅是确保其路线安全.有跨站点脚本,点击劫持等.

以下是您可以查看的一些资源:

Angular.io的安全章节 - https://angular.io/guide/security

AngularJS Security:保护您的单页应用程序 - https://slideshare.net/carlo.bonamico/angularjs-security-defend-your-single-page-application(它似乎有趣点,即使它是关于AngularJS)

OWASP Javascript的前10名 - http://erlend.oftedal.no/blog/?blogid=125 (十大最关键的Web应用程序安全风险)


推荐阅读
  • 如何使用PLEX播放组播、抓取信号源以及设置路由器
    本文介绍了如何使用PLEX播放组播、抓取信号源以及设置路由器。通过使用xTeve软件和M3U源,用户可以在PLEX上实现直播功能,并且可以自动匹配EPG信息和定时录制节目。同时,本文还提供了从华为itv盒子提取组播地址的方法以及如何在ASUS固件路由器上设置IPTV。在使用PLEX之前,建议先使用VLC测试是否可以正常播放UDPXY转发的iptv流。最后,本文还介绍了docker版xTeve的设置方法。 ... [详细]
  • Vue基础一、什么是Vue1.1概念Vue(读音vjuː,类似于view)是一套用于构建用户界面的渐进式JavaScript框架,与其它大型框架不 ... [详细]
  • vue使用
    关键词: ... [详细]
  • EPICS Archiver Appliance存储waveform记录的尝试及资源需求分析
    本文介绍了EPICS Archiver Appliance存储waveform记录的尝试过程,并分析了其所需的资源容量。通过解决错误提示和调整内存大小,成功存储了波形数据。然后,讨论了储存环逐束团信号的意义,以及通过记录多圈的束团信号进行参数分析的可能性。波形数据的存储需求巨大,每天需要近250G,一年需要90T。然而,储存环逐束团信号具有重要意义,可以揭示出每个束团的纵向振荡频率和模式。 ... [详细]
  • Java实战之电影在线观看系统的实现
    本文介绍了Java实战之电影在线观看系统的实现过程。首先对项目进行了简述,然后展示了系统的效果图。接着介绍了系统的核心代码,包括后台用户管理控制器、电影管理控制器和前台电影控制器。最后对项目的环境配置和使用的技术进行了说明,包括JSP、Spring、SpringMVC、MyBatis、html、css、JavaScript、JQuery、Ajax、layui和maven等。 ... [详细]
  • 如何用UE4制作2D游戏文档——计算篇
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了如何用UE4制作2D游戏文档——计算篇相关的知识,希望对你有一定的参考价值。 ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • 本文详细介绍了cisco路由器IOS损坏时的恢复方法,包括进入ROMMON模式、设置IP地址、子网掩码、默认网关以及使用TFTP服务器传输IOS文件的步骤。 ... [详细]
  • 单页面应用 VS 多页面应用的区别和适用场景
    本文主要介绍了单页面应用(SPA)和多页面应用(MPA)的区别和适用场景。单页面应用只有一个主页面,所有内容都包含在主页面中,页面切换快但需要做相关的调优;多页面应用有多个独立的页面,每个页面都要加载相关资源,页面切换慢但适用于对SEO要求较高的应用。文章还提到了两者在资源加载、过渡动画、路由模式和数据传递方面的差异。 ... [详细]
  • HSRP热备份路由器协议的应用及配置
    本文介绍了HSRP热备份路由器协议的应用及配置方法,包括设计目标、工作原理、配置命令等。通过HSRP协议,可以实现在主动路由器故障时自动切换到备份路由器,保证网络连通性。此外,还介绍了R1和R2路由器的配置方法以及Sw1和Sw2交换机的配置方法,最后还介绍了测试连通性和路由追踪的方法。 ... [详细]
  • Shodan简单用法Shodan简介Shodan是互联网上最可怕的搜索引擎,与谷歌不同的是,Shodan不是在网上搜索网址,而是直接进入互联网的背后通道。Shodan可以说是一款“ ... [详细]
  • NSD cisco高级路由与交换技术2014.8.12
    实验01:DHCP服务的应用实验目标:通过建立DHCP服务,给计算机自动分配地址实验环境:实验步骤:一、配置计算机pc8pc ... [详细]
  • 动态多点××× 单云双HUB
    动态多点是一个高扩展的IPSEC解决方案传统的ipsecS2S有如下劣势1.中心站点配置量大,无论是采用经典ipsec***还是采用greoveripsec多一个分支 ... [详细]
  • 一、MVCMVC模式,即软件可以分成三个部分Model、View、Controller。视图(View):用户界面。控制器(Controller):业务逻辑模型(Model):数据 ... [详细]
  • 思科实验13.应用层:DNS域名解析
    DNS域名解析基础知识实验目的实验流程1.设计拓扑2.配置主机IP地址3.配置路由器4.配置服务器5.验证结果基础知识域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便 ... [详细]
author-avatar
夜阑人静1314coolgirl
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有