【问题标题】:How to make a secure call to a RestFul Service using RestTemplate如何使用 RestTemplate 对 RestFul 服务进行安全调用
【发布时间】:2017-06-04 14:55:12
【问题描述】:
我有一个第三方 RESTful 服务,它将许可密钥作为查询参数值
e.g. www.samplerestservice.com?key=azcfdfdfxcvcsdasdassds
一旦您在他们的页面上注册,他们就会为您提供许可证密钥。
我的疑问是直接传递密钥是否可以,否则我如何保护对 API 的调用。
非常感谢!
【问题讨论】:
标签:
java
spring
rest
restful-authentication
resttemplate
【解决方案1】:
实际上,作为第三方 API 的客户,您在选择安全措施方面是有限的。您需要接受服务所需的所有安全规则,例如使用带有 TLS 的 HTTPS - 而不是 HTTP,安全存储您的许可证密钥等等。
为每个请求发送许可证密钥就像通过 Internet 发送每次密码一样。这当然不是安全的通信方式,应该从服务端执行额外的措施。它可以是带有 TLS 的 HTTPS、IP 地址限制、许可证密钥过期策略、带有错误密钥的请求的时间限制、安全存储许可证密钥(散列)等。在选择第三方服务时,您应该考虑这些因素。