2

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

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

根据我在研究中发现的情况,有几种方法可以实现身份验证部分,但由于不会有任何第三方访问数据,听起来基本的 HTTP 身份验证与 SSL 证书配对是可行的方法。这个对吗?

此外,简单的用户名和密码是否足够安全,或者添加某种 API 密钥进行识别是否更好?

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

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

4

2 回答 2

1

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

于 2013-06-16T11:30:12.597 回答
0

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

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

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

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

您应该始终向每个用户提供唯一的密钥或用户名/密码,以便能够记录谁做了什么。

抱歉,我不太喜欢 iOS。

于 2013-06-16T10:41:46.563 回答