使用Symfony2保护RESTful Web服务

时间:2013-06-16 02:34:05

标签: rest symfony security

我们正在规划一个iOS应用程序,在这个应用程序中,用户需要进行身份验证授权,然后才能与Symfony2 Web服务提供的数据进行交互。

授权将使用ACL实现,这是我不确定的身份验证。

从我在研究中发现的,有几种方法可以实现身份验证部分,但由于没有任何第三方访问数据,这听起来像基本的HTTP身份验证与SSL证书配对是通往走。 这是正确的吗?

此外,是一个足够安全的简单用户名和密码,还是最好添加某种API密钥进行识别?

如果需要密钥并且考虑到我们的用户将成为群组的一部分,是否应该将密钥单独绑定到每个用户或整个群组?

最后,稍微偏离主题,Symfony2有FOSRestBundle是否有适用于iOS的事实REST库?

2 个答案:

答案 0 :(得分:1)

为了保护symfony中的REST应用程序,FOSOAuthServerBundle非常有用。有了它,您可以为您的应用实施简单的OAuth身份验证。 OAuth是保护REST Web服务的事实标准。

答案 1 :(得分:0)

由于https / ssl非常安全,您可以使用基本的http身份验证和/或api密钥解决方案。

使用密钥和/或用户名/密码是您个人的选择。 如果以某种方式请求以明文形式获取,则任何一方都会受到损害。

除用户名/密码auth之外的密钥可以具有分离即用户特遣队的优势。

主要使用基本的http身份验证,因此您的客户端已经有可能从他的方面集成它的机会很高。

您应该始终为每个用户分配唯一的密钥或用户名/密码,以便能够记录究竟是谁做了什么。

我对iOS的了解不多。抱歉。