【问题标题】:Authenticate REST API services in java [duplicate]在java中验证REST API服务[重复]
【发布时间】:2014-06-05 05:33:50
【问题描述】:

我在 java 中使用 jersey 创建了一个 restful 服务。API 也使用 HTTP 客户端进行了测试。它工作正常。我需要使用用户名和密码保护我的 API。任何人都可以帮助我做到这一点.. 在此先感谢。

【问题讨论】:

  • 我不明白 .. 我是这个网络服务的新手。我需要设置没有 ssl 的凭据。我的意思是只有 HTTP。
  • 您可以通过不带 SSL 的 HTTP 通过 HTTP 发送基本身份验证,但由于它是 Base64,如果点击有效凭据,则可以对称地重新计算。
  • 是的。我可以通过 HTTP 发送身份验证。我已经做到了。如何在 API 中处理它。我需要在 API 中配置或编码以设置身份验证。我想学习和做。感谢您的回复。
  • 您基本上必须处理 Basic Auth 标头(如许多地方所述)并检查您的数据库/用户凭据存储。
  • 请自己检查一下,然后回来询问具体的代码问题,这里没有教程的地方。

标签: java authentication jira-rest-api facebook-rest-api


【解决方案1】:

无需每次都发送用户名和密码。只需第一次登录 api 将用户名和密码发送到服务器,然后服务器返回密钥,该密钥作为会话密钥存储在服务器端的数据库中。

您需要在标头中的每个 api 调用上发送此密钥,因此服务器端他们首先在每个 api 调用上验证用户,然后仅继续。

这意味着您需要发送一个密钥(可能是自动生成的字母数字字符串),该密钥由服务器响应登录 api 提供。

【讨论】:

  • 感谢您的回答。首先,我不知道如何创建经过身份验证的 API。所以我想知道如何使用身份验证创建 API。
猜你喜欢
  • 1970-01-01
  • 2013-06-22
  • 2014-07-10
  • 2018-05-09
  • 2014-01-10
  • 2016-01-17
  • 2019-04-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多