【发布时间】:2018-08-10 00:11:42
【问题描述】:
据我了解,Angular 的部署将被构建并捆绑到 dist 目录,该目录被分发到服务器,并最终提供给客户端。但是,这提出了我的问题,如果有后端 web 服务需要 BASIC 身份验证,这是否意味着访问 web 服务的用户名和密码也会通过捆绑的 JavaScript 文件呈现到客户端?
任何输入都会非常有帮助。
【问题讨论】:
标签: angular web frontend firebase-security
据我了解,Angular 的部署将被构建并捆绑到 dist 目录,该目录被分发到服务器,并最终提供给客户端。但是,这提出了我的问题,如果有后端 web 服务需要 BASIC 身份验证,这是否意味着访问 web 服务的用户名和密码也会通过捆绑的 JavaScript 文件呈现到客户端?
任何输入都会非常有帮助。
【问题讨论】:
标签: angular web frontend firebase-security
答案是肯定的,如果您在应用中以纯文本形式提供这些凭据,那么它们将与客户端代码捆绑在一起,并且任何检查代码的人都可以看到。
如果您想隐藏这些信息,而且您肯定会这样做,标准的解决方案是,您的客户端应用程序不应拥有凭据并自行调用 API,而是您的应用程序应调用服务器上的路由,该路由具有而是使用凭据,并使用它们并自行调用 API 并返回结果。
好处:使用该网站的任何人都无法以纯文本形式看到您的凭据。
缺点:由于您现在调用的 API 调用另一个 API 而不是直接调用所述 API,因此会有开销时间。
【讨论】: