我的任务是将现有的JSF应用程序拆分为JAX-RS Web服务和JSF Web客户端。分割应该在业务层完成。客户端和服务器都应该运行在不同的JBoss AS7.1上。现在,双方都在使用容器管理的身份验证。对于角色为CUST的用户,JSF客户端仅授予对uri-path/customers/*的访问权限,对于角色为ADMIN的用户授予对/ admin/*的访问权限。当然,网络服务也保护他的资源(角色:CUST & AMDIN)。我明白Web服务部分的身份验证。所以我的问题是如何为JSF客户端提供适当的身份验证。对我来说,有三种可能性:JAX-RS客户端和会话管理
- 双方都管理着自己的身份验证(难以同步)有没有办法在两个JBoss应用服务器之间的身份验证的用户同步?
- 双方管理自己的身份验证凭据和,JSF客户端与每个请求
UsernamePasswordCredentials
到Web服务 - 容器管理的认证仅在网络服务端进行发送。在JSF的客户端尝试请求信息,并像一个响应的情况下:“同行不认证”的JSF客户端强制用户输入他的证件,与
UsernamePasswordCredentials
我真的有再次执行rquest没有(或者)这三种方法之一是否可行的想法。我已经在网上搜索了最佳实践方法,但不幸没有取得任何成功。
是否有任何已知的最佳实践方法解决这个问题,或者你能否告诉我如何解决这个问题。
很好的答案,THX! OAuth似乎是最合适的解决方案。 JBoss为[使用OAuth进行身份验证]提供了一个很好的文档(http://docs.jboss.org/resteasy/2.0.0.GA/userguide/html_single/#d0e2687) –