我使用curl post在我的三个网站之间交换数据。我需要通过确认从我的三个站点之一发送的POST请求来确保数据交换。
现在我已经实现了请求标头检查,但也可以操作请求标头。是否有一种万无一失的方法来实现这一目标?
答案 0 :(得分:0)
我正在开发RESTful服务,并考虑如何确保服务与授权客户之间的通信。经过长时间的研究,我决定采用以下解决方案。
每个客户端(应用程序)都有一个公共ID和一个私钥。公共ID可以启动。私钥,只有客户端和服务才知道。
对于每个请求,客户端必须使用HTTP基本身份验证对其进行身份验证。用户名是公共ID。密码是SHA1令牌。令牌由公共ID,传输的参数和私钥的组合生成。
当服务收到请求时,他通过用户名知道哪个客户端发出了此请求。它使用相同的方法生成令牌,并将其与密码进行比较。 两个令牌是否相同,客户端有权提出请求。此外,确保不操纵参数。