JAX-RS访问控制

Adh*_*hir 3 jax-rs

有人能为我提供一些关于JAX-Rs Web服务中访问控制的指示.例如,基于用户凭证或名称或任何其他标准来限制访问.在太阳手册中找不到任何有用的信息.

先谢谢,Adhir

Lar*_*ann 5

我个人使用Spring安全来实现这一目标.Spring安全性允许轻松使用各种身份验证和授权方案(例如,通过从数据库或LDAP服务器的HTTP请求中检查基本/摘要头).使用JAX-RS并不难设置,并且还有一个非常好的基于方面的权限系统,您可以在其中执行类似的操作

@PreAuthorize("hasRole('ROLE_ADMIN')或order.customer.username == user.username)deleteOrder(Order order);

这可确保经过身份验证的用户必须位于ROLE_ADMIN组中,或者是允许删除它的订单的所有者.

当此配置的所有你在你做的JAX-RS的资源是从春天处理安全异常,并采取适当的行动(FX,通过投掷WebApplicationException描述这里)