我们正在使用Spring Security @PreAuthorize
注释来检查基于Jersey的REST API的正确角色和权限。我们担心的是我们从某种方法中忘记了注释,使其不安全。
有没有办法确保所有API都有注释,即使它只是@PreAuthorize("permitAll")
(即明确允许所有内容)?
我们设想如果API不使用注释,请求被阻止(以便不能使用API)会记录错误(以便我们快速注意到错误)。
一种方法是创建一个自定义表达式,将表示请求的请求属性添加为" secured"。然后,Web过滤器可以检查请求属性是否到位,如果不是,则记录错误。
有没有更干净的方法呢?例如,将"denyAll"
设置为未注释方法的默认策略,并要求在适当时覆盖它?
答案 0 :(得分:0)
我最后通过添加Jersey ResourceFilterFactory
来解决这个问题,它检查每个方法或类是否都有注释:
<div><iframe src="assets/videos/example.mp4" type="video/mp4" frameBorder="0" width="1280" height="720" allowfullscreen ></iframe></div>