在Java EE中保护和验证+授权REST API调用

时间:2012-06-06 03:40:17

标签: authentication rest java-ee authorization

我在服务器端和客户端的不同应用服务器中有单独的WAR。与服务器端的UI交互是通过REST API进行的。

现在的问题是REST服务托管在8080端口上,我看到如果我只是给出了URL,我可以看到结果XML。现在这很危险。除了来自客户端WAR的请求之外,我不希望任何人实际看到结果。客户端身份验证和授权在那里,但我如何将其传播到服务器端WAR。为了解释工作流程,让我举一个示例用例:1。用户请求他需要查看他的所有订单。现在,userid和发送的post请求以及相应的REST API被调用,它返回该userrid的所有订单。现在我担心的是,知道该URL的任何人都可以获得任何用户的所有订单列表。如何停止此未经授权且可能未经过身份验证的请求?在这种情况下,如何最好地集成授权和身份验证,以便在不同容器中部署的客户端和服务器端的两个不同WAR。

1 个答案:

答案 0 :(得分:1)

用户登录时生成令牌 保存在服务器端以及在客户端设置cookie

现在当任何请求都被提升到服务器时 令牌cookie自动与该请求一起使用 你可以在@CookieParam的服务器端获取该cookie 因此,您可以轻松验证用户是否经过身份验证。