客户端 - 服务器用户认证

时间:2013-03-08 03:21:56

标签: ios security rest https spring-security

更新:我之前没有提到我们想要的解决方案是灵活的,可以在我们的数据库中对用户进行身份验证,也可以要求其他服务器告诉我们用户是否经过身份验证。还值得一提的是,这些其他服务器不受我们控制,因此我们无法强制执行特定的用户模型。

我对OAuth和OpenID进行了长时间的阅读,但它们对我们的情况来说都不是一个合适的解决方案,并且会让用户更难以理解这个过程。这已经解决了一千次,但我找不到解决方案。

我们正在寻找的是一个可以在REST服务服务器中使用的框架,用于使用用户名和密码对用户(不涉及第三方客户端)进行身份验证。 除了第一次登录时,解决方案不得传递用户名和密码,并使用令牌进行进一步的身份验证。尽管OAuth确实使用令牌,但它旨在允许第三方客户端访问服务提供者资源。这不是这种情况,服务仅适用于我们自己的应用程序,唯一需要的是用户身份验证。

您认为最合适的解决方案是什么?

配置:
-Spring服务器提供RESTful服务,我们的想法是将Spring Security与一些用户管理和令牌管理框架结合使用。
-iOS将对服务器进行HTTPS调用的设备。

我们最终想要的是让设备发送登录请求并在登录成功时接收令牌,稍后使用该令牌发出请求。就像Facebook一样,不包括第三方参与。

我们的服务器中是否有可以配置的东西?或者我们应该考虑构建自己的令牌管理,比较和生成软件? 将Spring-Security与iOS应用程序一起使用而不涉及存储cookie或重定向到可能的页面吗?

1 个答案:

答案 0 :(得分:0)

OpenStack提供了许多与开源云相关的项目...... Keystone项目。这几乎完全符合你的要求。

您可能需要在此处查看:

http://docs.openstack.org/developer/keystone/