使用Spring Boot使用API​​-Key进行无状态REST API安全性的方法?

sou*_*ick 6 spring-security stateless api-key spring-boot

Spring Security是一个非常灵活的框架,当然可以创建无状态每请求身份验证的实现来保护Business-2-Business REST API.

但是,最好的方法是什么?

OAuth和OAuth2超出了此问题的范围.

特别感兴趣的是基于API-Key和API-Secret对的解决方案,其中:

  1. 假设API-Secret已提前交换,不会在请求中传输
  2. API-Key和API-Secret用于对每个请求进行签名
  3. API-Key和API-Secret对与想要使用API​​的企业相关联并提供给它

有关实现和配置详细信息,实现每个请求身份验证并启用基于GrantedAuthorities的后续访问控制的方法是什么?

这是一篇博客文章,其中有一个值得注意的建议,但这看起来非常具体且相当复杂.

http://www.future-processing.pl/blog/exploring-spring-boot-and-spring-security-custom-token-based-authentication-of-rest-services-with-spring-security-and-pinch-的弹簧-java的配置和 - 弹簧集成测试/