我正在为机器人应用程序创建一个appstore。设置如下:
- 机器人运行Linux和Python
- appstore运行Django的API
- Web站点与appstore通过jQuery与API通信
当用户在网站上安装应用程序时,会调用Django的API。然后,我需要Django向机器人发出推送通知,告诉他新的应用程序已经准备好安装了。然后Robot应该调用API来检索新应用并安装它。
我认为websockets将是解决这个问题的最好方法。我需要服务器和客户端都是用Python编写的。
更复杂的事情是API使用密钥认证。它是可能的和安全的发送密钥从API到机器人使用websockets?我应该只使用HTTPS和WSS吗?考虑到无数的websocket实现,你有什么可以推荐的吗?
你的主要问题,如果你应该使用HTTPS/WSS来增加安全性可以很容易地回答:是的,你应该。
问题的另一部分有点隐藏,如果API密钥以明文形式发送时将被泄露,则取决于您如何使用API密钥。安全api将对密钥和有效负载使用加密散列,而不是明文的密钥。