我正在一个Grails应用程序中托管一个REST web服务,使用Spring Security,即:
@Secured(['IS_AUTHENTICATED_REMEMBERED'])
def save = {
println "Save Ride REST WebMethod called"
}
我正在从一个Android应用程序中调用它。(调用未经安全保护的服务运行良好。)
为了调用服务,我手动构建请求(HttpUriRequest
),并使用HttpClient
执行它。
我想知道最佳实践是什么,以及如何实现它们... 具体来说,我应该:
- 登录一次,检索JSESSION_ID,然后将包含它的标头添加到每个后续请求的HttpUriRequest中吗?
- 或者(不确定我该如何做)直接在每个请求上包含登录和密码,放弃Cookie/服务器端会话
我认为我可以使选项1工作,但不确定Spring Security是否允许(2),如果那是正确的方式... 谢谢!
-- 另外,我是否漏掉了任何可以为我完成所有这些工作的库? :)