有哪些方法可以保护REST API?

时间:2014-07-15 23:16:33

标签: java ios security rest oauth

我遇到iPhone客户端与Google / Facebook签约的情况

                   step 1
iPhone Client   --------——> Google/Facebook

经过身份验证后,客户端需要从我的REST API中获取数据

                   step 1
iPhone Client   --------——> Google/Facebook
      |
      | step 2
      |
      V
  GET /transactions

问题

  1. 由于服务器不知道客户端是否经过身份验证(理想情况下客户端已通过身份验证),我可以通过哪些方法保护我的REST API以确保其可以合理地抵御恶意攻击?

  2. 另外,我不想在服务器上维护用户/密码

2 个答案:

答案 0 :(得分:0)

您需要查看OAuth2,它是为了授权用户并允许访问受保护资源而创建的。以下是相同的一些有用链接:

RFC:

http://tools.ietf.org/html/rfc6749

可以引导您到任何地方的链接:

http://oauth.net/2/

答案 1 :(得分:0)

您可以为响应中的每个客户端生成密钥,并在客户端再次访问服务器(在请求中提供密钥)时,比较密钥是否为密钥池中的有效密钥。