Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Objective-C iOS应用程序中创建用户身份验证的最佳方法_Ios_Json_Api_Login - Fatal编程技术网

在Objective-C iOS应用程序中创建用户身份验证的最佳方法

在Objective-C iOS应用程序中创建用户身份验证的最佳方法,ios,json,api,login,Ios,Json,Api,Login,我目前正在用自己的应用程序开发自己的服务。该服务有一个后端JSON API,应用程序使用该API进行通信 现在,由于iOS应用程序没有会话或cookie,我想知道如何为我的应用程序创建用户身份验证/登录。我应该简单地在本地加密密码/用户名,然后针对每个操作(例如发布新条目),将用户/密码与请求一起发送(这似乎不安全),使用基于令牌的系统(应用程序在验证时从服务接收令牌,将其保存在本地加密,然后与请求一起发送),还是其他什么?我应该尝试为我的服务实现OAuth吗 我正在为后端使用CodeIgnit

我目前正在用自己的应用程序开发自己的服务。该服务有一个后端JSON API,应用程序使用该API进行通信

现在,由于iOS应用程序没有会话或cookie,我想知道如何为我的应用程序创建用户身份验证/登录。我应该简单地在本地加密密码/用户名,然后针对每个操作(例如发布新条目),将用户/密码与请求一起发送(这似乎不安全),使用基于令牌的系统(应用程序在验证时从服务接收令牌,将其保存在本地加密,然后与请求一起发送),还是其他什么?我应该尝试为我的服务实现OAuth吗

我正在为后端使用CodeIgniter Rest API


谢谢

我的偏好包括两者。我通常将oauth2与承载令牌设置一起使用(如果我没记错的话)。我要求输入用户名/电子邮件+密码,在客户端加密密码,并通过基本身份验证将其发送到服务器,作为我可以在所有连续呼叫中发送的访问令牌的回报。这样,我就可以通过使访问令牌无效来撤销对后端的访问。Oauth2比OAuth1.0a更容易实现,并且通过遵循规范,以后可以很容易地为第三方应用程序打开api


Oauth2访问令牌可以作为GET参数发送,但最近我开始认为将其作为头发送可能更可取,为了更好地区分元参数(如访问令牌)和数据参数(如访问令牌或模型的实际数据)。

通常,您可以先在登录调用中返回userToken/authToken,然后所有后续api调用都可以将此令牌作为头参数之一,以标识其是经过身份验证的会话。我就是这样做的。但我很好奇是否有人能给出更好的答案。这就是我计划要做的,但我也很好奇是否有什么事情可以在服务器端完成,因为我并不总是信任客户端(我知道这是一个iOS应用程序,但安全性仍然很重要)。关于实现细节,有一个现有的线程