我有一个HTTPS
WebService需要从Mobile(iPhone)应用程序访问。两者都是由我们开发的。
我们需要确保移动访问此服务。所以我们使用了用户名/密码凭证。
我们知道OAuth,但我们需要一个更简单的身份验证方案。
我们的想法如下:
移动应用程序向用户/资源所有者显示登录表单。
资源所有者输入移动应用程序行为的登录凭据。
移动应用程序通过特殊的WS方法(例如“ValidateLogin”)连接到服务器,该方法将用户名/密码 - 可能是哈希 - 作为输入并返回HTTP Session Id
。
移动应用持续此HTTP Session Id
- 这是服务器端的唯一密钥,可能是安全的? - 与后续请求的服务器(调用业务方法)。
如果客户端未与服务器通信(例如30分钟),服务器将发送{{3} (移动可能会移除持久的HTTP Session Id
以向自己表明他无法再访问服务器资源 - 并且可能会选择这样做如果需要结束与服务器的通信)
在这种情况下,移动需要再次使用资源所有者从服务器获取新的会话ID并获得对服务器资源的访问权限。
问题是:
EDIT
:这是一个HTTPS WebService
答案 0 :(得分:0)
这个问题非常开放,我认为很难回答那些针对您特定需求的一般性问题。
回答一些具体问题: 如何保护您的应用免受未经授权的客户? 查看SSL和Client side certificates。
如何安全地管理用户凭据? 请查看iOS中的Keychain API。