Spring Data REST中的身份验证和授权

Rod*_*rra 29 spring authorization spring-mvc spring-security spring-data-rest

我正在实现一个基于Spring Data REST的应用程序,我想知道是否有一种优雅的方法来使用此框架或相关框架实现身份验证和授权规则.

对REST服务器的所有HTTP请求都必须带有身份验证标头,我需要检查它们并决定是否根据HTTP方法以及经过身份验证的用户与所请求资源的关联进行授权.例如,(应用程序是电子学习系统的REST服务器),教师只能访问自己的课程部分,学生只能访问他们订阅的课程部分等.

我想知道是否有一种默认方式在Spring Data REST中实现授权.如果答案是否定的,你能否就我的问题提出建议?我在考虑:

  • Servlet过滤器
  • 春季安全
  • Spring Data REST Handler(如何访问HTTP头?)

Rak*_*ela 14

最好的选择是Spring Security.这将有助于您实现授权更简单的方式.

Spring Security需要一个查看请求标头的实现,并以编程方式执行登录操作.

请参考这里接受的答案..我已经遵循相同的原则并在我的休息服务(使用RestEasy构建)之前实现了安全层

通过Spring进行RESTful身份验证

还有另一种方法.请参阅 http://www.baeldung.com/spring-security-authentication-provider

在这两种情况下,您都可以通过在spring security中声明无状态身份验证来禁用会话创建,这将有助于您在对无状态REST服务进行大量命中时显着提高性能.

  • -1.问题是关于"Spring Data REST"和实体级别授权,因此您提供的常规解决方案不适用于此处. (7认同)