【问题标题】:How not to expose App secret and key on a pure HTML5 client application如何在纯 HTML5 客户端应用程序上不公开 App 机密和密钥
【发布时间】:2016-02-01 13:15:07
【问题描述】:

纯 HTML/JavaScript 客户端在使用 Kinvey 之类的 Baas 时不暴露应用程序密钥和机密的解决方案可能是什么。

在示例代码https://github.com/KinveyApps/TestDrive-Angular/blob/master/index.html 中,应用秘密和密钥公开给客户端,任何人都可以看到它。

【问题讨论】:

  • 简短的回答是你不能
  • 在运行时从服务器获取它
  • @rupps 即使这样它也可以在浏览器开发工具中被拦截和查看。我的理解是应用程序的秘密保存在服务器上,永远不会发送给客户端。

标签: javascript angularjs kinvey


【解决方案1】:

简短版 - 你不能。

更长的版本 - 你不能。它不应该给您带来压力,因为它不会对您的设置或数据构成安全风险。

说明:

Kinvey 应用程序密钥和应用程序密钥本身只允许执行少数操作,例如 - Ping 您的 Kinvey 应用程序(确认网络/移动应用程序设置和后端连接) - 用户登录/注册(建立用户会话)

对于可以查看或修改您的设置或数据的所有其他操作(例如,集合访问、业务逻辑执行、触发推送通知等),需要在应用密钥之上的用户会话。

因此,即使您公开了应用程序机密,也不会有任何问题/威胁。

【讨论】:

  • 我们的解决方案是在客户端强制登录,即没有任何服务器的客户端身份验证
猜你喜欢
  • 2020-04-19
  • 2019-07-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多