【发布时间】:2018-08-12 12:40:51
【问题描述】:
我在 tomcat 下部署了一个 JAX-RS 应用程序和一个移动应用程序。 我想知道如何使 web 服务只能由移动应用程序使用,换句话说,只允许给定应用程序访问
【问题讨论】:
标签: jax-rs restful-authentication
我在 tomcat 下部署了一个 JAX-RS 应用程序和一个移动应用程序。 我想知道如何使 web 服务只能由移动应用程序使用,换句话说,只允许给定应用程序访问
【问题讨论】:
标签: jax-rs restful-authentication
当请求通过 Internet 传入时,并没有真正安全的方法来确定是哪个应用程序发送了请求。应用程序可以根据需要识别自己。如果您愿意,您可以尝试以某种方式在您的应用程序中隐藏凭据,并让它使用这些凭据登录。但是,如果有人发现了这些凭据,他们可以编写一个程序,使用它们来伪装您的应用程序。问题是您不能指望对客户端系统进行任何控制。客户端系统总是可以被改变以假装它不是。
【讨论】:
在我看来,你可以在调用请求中添加用户名/加密密码,然后与保存在服务器端的进行比较
【讨论】:
如果您真的想要,您可以实现某种形式的加密。例如,JAX-RS 服务可以发送 401 禁止并提供一个 nonce 供客户端使用其私钥签名,然后在 Authorization 标头中发送回服务器。否则,请坚持使用 HTTP 身份验证。如果您通过 HTTPS 进行通信,您应该可以使用基本身份验证。
【讨论】: