我正在使用jersey
. 我想为此 Web 服务实现基于角色的授权。
现在假设我有一种方法getUsers()
:
@RolesAllowed("ADMIN")
@Path("\Users")
@GET
public void getUsers() {
// some code.
}
getUsers()
将针对GET \Users
请求调用。
收到请求后,我将使用它的凭据对客户端进行身份验证并确定他的角色,然后我必须决定让请求通过还是拒绝。
获取凭据和验证用户不是问题,我需要一种方法来引用将为请求执行的方法。
这样我就可以检查其@RolesAllowed 注释以授予或拒绝访问权限。
在RestEasy
我们有PreProcessInterceptor
具有以下方法的接口:
preProcess(HttpRequest request, ResourceMethod methodInvoked)
ResourceMethod's
getMethod()
给我们引用在我们的案例中被调用的方法getUsers()
。使用这个Method
参考,我可以检查注释并做一些事情。
现在我的问题是我该怎么做Jersey
?
RestEasy的Jersey替代品是什么? PreProcessInterceptor