Apache Shiro,@ RequiresRoles,401错误代码

时间:2016-03-28 16:40:27

标签: java apache shiro jaas

我已使用REST注释标记了我的@RequiresRoles("role")方法,我确实希望返回401403错误代码(当主题没有时)指定或未经过身份验证的角色,

org.apache.shiro.authz.UnauthorizedException包含在javax.servlet.ServletException:已过滤的请求失败500错误代码被返回。

如何根据例外情况配置要返回的错误代码?

THX。

1 个答案:

答案 0 :(得分:0)

根据JAX-RS规范,将ServletException包含在内是可以的。

由异常映射提供程序将org.apache.shiro.authz.UnauthorizedException映射到具有正确状态的响应。您应该在实现中添加一个。

我建议将org.apache.shiro.authz.UnauthorizedException映射到Response.Status.FORBIDDEN的回复。