【问题标题】:Securing mobile REST Api with spring Security enough?使用 Spring Security 保护移动 REST Api 足够了吗?
【发布时间】:2015-02-26 14:43:40
【问题描述】:

我正计划制作一个依赖于 java (spring-spring mvc) REST API 的小型移动应用程序。 API 将具有如下所示的路径,例如:

/rest/account POST(会新建一个账号(账号由用户名+密码+邮箱组成)

/rest/photo/like 例如修改行为并将内容添加到数据库...

我还计划使用 Spring Security 来处理身份验证/授权。 因此,在进行任何授权调用之前的移动应用程序(例如到 /rest/photo/like)它必须登录(所以基本上到 /security_check?j_username=username&password

从现在开始,每个请求都必须在 cookie 中包含 JSESSIONID。

我的问题是,这是否足够安全?我必须使用 OAUTH2 吗?还是太过分了?

额外问题:由于您不需要经过身份验证即可进行 /rest/account 调用来创建帐户,因此避免用户创建 1000000 个帐户的最佳方法是什么? Apache/IP 过滤器?或者我应该在 spring-mvc 的一些拦截器中处理这个?

【问题讨论】:

    标签: api security rest spring-security


    【解决方案1】:

    1) 是的,根据您的需求描述,我会说 Spring Security 可以。 (REST 服务通常是无状态的,而不是使用会话,但 Spring Security 可以同时处理这两者。)

    2) 除非您想从用户的 Google 或 Facebook 帐户或类似的东西中提取信息,否则您不需要使用 OAuth2。

    3) 奖金问题并非微不足道。一种常见的方法是使用CAPTCHA。例如,您可以使用 OAuth 将用户限制为他们拥有的每个 Google/Facebook/X 帐户的一个帐户。

    【讨论】:

      猜你喜欢
      • 2014-02-21
      • 2014-12-06
      • 2014-07-29
      • 2018-08-11
      • 2015-12-09
      • 1970-01-01
      • 2012-11-20
      • 2016-03-04
      • 1970-01-01
      相关资源
      最近更新 更多