我有以下问题:
我有 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 吗?