【发布时间】:2016-12-07 10:19:21
【问题描述】:
我为移动平台开发了聊天应用程序,它使用在我的公共 Ubuntu 机器中配置的 eJabberd xmpp 聊天服务器。
为了建立服务器连接,我使用了 https://mydomainname.com:5280/http-bind 那么如何保护它只能由我的客户端应用程序访问,而不是其他人访问。
现在任何客户端(如 pidgin、adium 等)都可以访问我的服务器。如何阻止它。
【问题讨论】:
我为移动平台开发了聊天应用程序,它使用在我的公共 Ubuntu 机器中配置的 eJabberd xmpp 聊天服务器。
为了建立服务器连接,我使用了 https://mydomainname.com:5280/http-bind 那么如何保护它只能由我的客户端应用程序访问,而不是其他人访问。
现在任何客户端(如 pidgin、adium 等)都可以访问我的服务器。如何阻止它。
【问题讨论】:
您可以修改 ejabberd 以具有自定义身份验证,该身份验证集成了规范的变体并在您的客户端中实施。这样,未经修改的标准客户端将无法读取它。
但是,由于您的客户端是 Javascript 并且代码是可见的,因此仍然可以修补现有客户端以实现您的变体,但没有办法解决这个问题。 “共享秘密”的方式意味着如果找到秘密,其他客户端可以找到连接的方式。当你的代码是公开的(即使被混淆了)时,这个秘密就更不容易被发现了。
【讨论】: