我有以下问题:
我有JAX-RS服务,其get
操作:
@Path("/unsecure/")
@Produces("application/json")
public class MyUnsecureService {
public MyUnsecureService() {
}
@GET
@Path("/get/{id}")
@Produces("application/json")
public User get(@PathParam("id") String id) {
return User.get(id);
}
}
现在,我打算为移动设备打开这个API,我需要身份验证和授权机制来访问API。
我的问题是我有可信赖的应用程序(内部作业,在我的主机上运行的网站)应该能够根据需要公开此API,没有任何限制,移动设备应该能够公开这个API仅当它们具有使用真实用户的加密登录/通过形成的令牌时才可以在服务端使用以确定:
这可以使用OAuth1或OAuth2吗?
答案 0 :(得分:0)
这是一个非常有效的问题。
你可能想看一下Oz(backgroud),AFAIU会对你的用例有很大帮助。就个人而言,我有兴趣解决Java问题并跟踪Eran使用Java实现的工作(jiron,hawkj)。最后用Java做Oz(或something like it)。
现在很难发布,但如果你愿意,可以联系我们。
现在JAX-RS的具体问题似乎是SecurityContext。
答案 1 :(得分:0)
答案是:
使用客户端凭据和资源所有者授权授权,这些授权在Apache CXF的OAuth2实现中实现。