我正在实现一个JAX-WS Web服务,它将由外部Java和PHP客户端使用。

客户端必须使用每个客户端存储在数据库中的用户名和密码进行身份验证。

最好使用哪种身份验证机制来确保杂项客户端可以使用它?

最佳答案

基本WS-Security可以与插入JAAS的Java和PHP客户端(以及其他客户端)一起使用,以提供数据库后端。如何实现这种依赖于您的容器。使用@RolesAllowed注释对Web服务方法进行注释,以控制调用用户必须具有的角色。所有J2EE容器都将提供某种机制来指定应针对哪些JAAS领域用户进行身份验证。例如,在Glassfish中,您可以使用管理控制台来管理领域,用户和组。然后,在application.xml中,指定领域和组到角色的映射。

Here是有关如何在Glassfish上实现此功能的一些详细信息

在JBoss中使用JBoss WS甚至更容易。

您在哪个容器中使用哪种JAX-WS实现?

08-26 14:53