Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 角度-管理文件是否可下载?_Angular_Angular Routing_Angular Guards - Fatal编程技术网

Angular 角度-管理文件是否可下载?

Angular 角度-管理文件是否可下载?,angular,angular-routing,angular-guards,Angular,Angular Routing,Angular Guards,我有一个有角度的网站。我用jwt实现了auth。我知道我们可以使用AngularRoute Guard阻止用户进入受限路线 通常在SPA中,所有路由(html)都可以下载。我们只是通过响应403代码来处理服务器中未经授权的路由。因此,用户可以安全地看到html,但无法获取任何数据。但在一个特定的项目中,我们甚至不希望用户能够看到管理面板的html(因为他可以了解结构) 有什么想法吗?我应该使用Route Guard的常规场景,还是应该只使用一个单独的面板(例如,在未知目录中)?您可以使用管理令牌

我有一个有角度的网站。我用
jwt
实现了auth。我知道我们可以使用AngularRoute Guard阻止用户进入受限路线

通常在SPA中,所有路由(html)都可以下载。我们只是通过响应403代码来处理服务器中未经授权的路由。因此,用户可以安全地看到html,但无法获取任何数据。但在一个特定的项目中,我们甚至不希望用户能够看到管理面板的html(因为他可以了解结构)


有什么想法吗?我应该使用Route Guard的常规场景,还是应该只使用一个单独的面板(例如,在未知目录中)?

您可以使用管理令牌保护后端API,以便希望获取/发布/删除任何关键数据的任何用户都需要一个有效令牌,以允许其访问

切勿让您的“密钥”或任何身份验证解码数据出现在前面

node.js
中,您可以添加一个管理员中间件,用于检查用户是否是管理员(解码从前端网站发送的令牌后)

检查这个,可能会有帮助


您可以延迟加载这些路由,并且不会将html发送给未经授权的用户。@ritaj我已经使用了延迟加载。但我认为这并不能解决问题。我将依赖于保存在浏览器存储(localStorage或cookie)中的令牌。然后我必须解码我的
jwt
,看看它是否是admin。(用户也可以这样做)有什么问题吗?如果您将非管理员的路由加载解析为false,则不会向浏览器发送html。@Antoniosss您还需要知道什么?正如我所描述的,我不希望用户能够下载管理模板。前端路由与后端无关。正如我在问题中提到的,我已经保护了api。@VahidNajafi你错了-毕竟-最初是备份的。这是你可以应用安全性的时刻。从来没有必要这样做-所以没有。但是它很难做到。模块JS的名称为
123151829412491501u512something.JS
(在构建时生成)。你必须确保对该文件的访问。因此,这包括动态服务器配置设置。在ApacheHTTPD中,这可能可以通过.htaccess完成。您必须根据所需的规则找出如何保护端点,然后只需将JS文件名注入到.htaccess,作为构建脚本或至少是TI分发包的一部分。IDK如果Nginx上有类似的内容,谢谢您提供的信息。我必须搜索一下,也许可以找到实现这个功能的东西。