将自定义身份验证提供程序与JAX-RS服务器集成

时间:2014-12-01 08:59:26

标签: authentication jax-rs

我正在开发一个简单的JAX-RS服务器,我需要实现身份验证和授权。我在其他帖子中发现,标准方法是使用标准Java EE Web servlet容器安全性,将角色映射与OAuth,基于表单的身份验证或基本身份验证结合使用。

我的问题是我的公司有一个EJB客户端可以访问的自定义身份验证提供程序。身份验证提供程序在输入中获取用户名和密码,并返回具有与之关联的一系列权限的UserObject。如果权限列表包含与我的REST服务器关联的权限列表,则还授权用户请求资源,否则将引发CustomAuthorizationException。实际上这是一次性授权',所以我可以通过附加的servlet容器标准授权来强制执行它。

这是一个例子:

String username = //acquire username;
String password = // acquire password;

UserObject user = null;

try {
    user = authenticationClient.login(username, password);
    if(user == null){
       //erro message and forward to login page
    }

    verifyAuthorization(user);

} catch (CustomAuthorizationException e1) {
    //manage exception
} catch (CustomAuthenticationException e2) {
    //manage exception
}

如何将其与JAX-RS标准集成?

0 个答案:

没有答案