security - 对最终用户隐藏水疗应用程序中的 .env 变量值
问题描述
使用我的 vuejs 应用程序的用户可以查看 .env 变量的值还是以某种方式隐藏?
我想保留一个作为 websocket URL 一部分的 app-id 私有。用户看到它可能不是问题,但我宁愿他们没有
我可以通过后端服务器上的节点连接到 WS 服务并将数据通过管道传输给最终用户,但由于我正在处理实时交易数据,这会使最终用户的延迟加倍。
解决方案
简而言之:没有。
如果您需要将无法隐藏的数据传递给客户端,您可以尝试隐藏或屏蔽,但如果代码在客户端,则代码可用。此外,如果您在 websocket 上使用它,使用 de Chrome 开发工具(或任何网络浏览器开发工具)将很容易获得:
您向后端提出的想法似乎最好隐藏您的应用程序 ID,以减少延迟,使您的中间件位于客户端和其他服务器中间,我的意思是,如果您需要来自加拿大的数据和大多数用户都在墨西哥,我将尝试将中间件放在加拿大、EEUU 或墨西哥。
一般来说,我会避免使用中间件提案,但以下情况除外:
- 您的 SPA 限制了 websocket 的使用,即您将使用 websocket 来获取有关比特币交易所的信息,但 websocket 可以用来购买或出售
- 如果使用原始 websocket 为您花钱,如果您必须为使用 WS 付费,则可能有人会在您付费时免费使用您的应用程序 ID(要解决此问题,您需要一个中间件并使您的中间件仅可用通过您的应用程序)
- 如果您使用的数据是私有的并且您在公共平台中(我的意思是,如果您在像您的办公室或 VPN 这样的私有网络中,则安全性并不重要,以至于将网络公开)
希望它有所帮助:) 如果您需要更多,请分享有关该项目的更多信息。
推荐阅读
- node.js - 如何在 Node.js Twitter RetweetBot 中过滤多个用户帐户
- reactjs - react-testing-library 和 onAnimationEnd
- entity-framework-core - 如何同时从不同的 Blazor 组件进行数据调用?
- xquery - 如何使用 XQuery 在 Marklogic 中使用集合记录插入
- linux - 如何在linux中加入两个变量,如表格格式?
- html - 使文章始终填满整个页面(仅在高度方面)(HTML+ CSS)
- algorithm - 查找其最小和最大第一个元素之间差异最大的元组
- r - 使用 mutate() 将更改应用于 R 中的列值
- jenkins - 无需插件即可从 Jenkins 将 git repo 上传到 S3 存储桶
- vb.net - 视觉工作室。将数字添加到最终结果