Java 确保网站和RESTful web服务之间的通信安全
我们将有一个由外包公司创建的网站,该网站将以JSON有效载荷的形式向我们的RESTful web服务发送一些信息。用户将在该网站上进行登录和身份验证,因此我们不想知道用户的用户名和密码。我们需要的是确保发送的JSON是可信的网站,然后我们会发回另一个JSON负载,包括我们的一些信息Java 确保网站和RESTful web服务之间的通信安全,java,json,rest,tomcat,restful-authentication,Java,Json,Rest,Tomcat,Restful Authentication,我们将有一个由外包公司创建的网站,该网站将以JSON有效载荷的形式向我们的RESTful web服务发送一些信息。用户将在该网站上进行登录和身份验证,因此我们不想知道用户的用户名和密码。我们需要的是确保发送的JSON是可信的网站,然后我们会发回另一个JSON负载,包括我们的一些信息 我在安全领域是个新手,所以我在谷歌上搜索了一下,发现我们可以使用认证来加密/解密信息。但是,如果我们能够首先识别黑客请求并拒绝该请求,那么解决方案将是什么呢 保护restful服务的一种简单方法是基本身份验证。进行r
我在安全领域是个新手,所以我在谷歌上搜索了一下,发现我们可以使用认证来加密/解密信息。但是,如果我们能够首先识别黑客请求并拒绝该请求,那么解决方案将是什么呢 保护restful服务的一种简单方法是基本身份验证。进行rest调用的应用程序将提供如下请求头
Authorization: Basic ZWx1c3VhcmlvOnlsYWNsYXZlde
这不是一个基于用户的解决方案,而是一个webapp到webapp的解决方案。所有其他请求都是未经授权的
根据你的描述,我马上想到两件事:
嗯,你自己回答了。如果你能检测到它,就拒绝它。简单,使用HTTPS。因此Http头基本身份验证+SSL认证来加密有效负载对于我们的案例来说似乎是一个很好的组合。只是想知道http基本身份验证使用Base64对用户名和密码进行编码,这样安全吗?我的意思是黑客仍然可以劫持请求并解码它。不一定。基本身份验证通常使用Base64编码完成。但是如果你想,你可以随意加密。例如,MD5或任何你想到的东西。您可以将所有内容都放在请求头中。你越是做自己的事情,攻击者就越难劫持你的队伍。希望有帮助:汉克斯·安德烈亚斯,这很有帮助。