偏好设置保存用户信息

偏好设置保存用户信息.

{

<1>如果用户登陆成功,就保存用户信息.下次直接从偏好设置中读取用户信息,以此做到用户只需要输入一次账号和密码,以后登陆就可以不用再次输入.

1>.登陆成功,保存用户信息(偏好设置)

2>.再次进入,直接显示用户之前保存的信息.避免用户重复输入.

// 偏好设置存储用户信息

-(void)savaUserInfo

{

// 实例化偏好设置对象(单例)

NSUserDefaults *User = [NSUserDefaults standardUserDefaults];

// 保存用户名

[User setObject:self.userName.text forKey:kITUSERNAMEKEY];

// 保存用户密码

[User setObject:pass forKey:kITUSERPASSKEY];

// 同步保存用户信息

[User synchronize];

}

// 加载偏好设置中的用户信息

- (void)loadUserInfo

{

NSUserDefaults *User = [NSUserDefaults standardUserDefaults];

if ([User objectForKey:ITUSERNAMEKEY]) {

self.userName.text = [User objectForKey:ITUSERNAMEKEY];

}if ([User objectForKey:ITUSERPASSKEY]) {

self.password.text = [User objectForKey:ITUSERPASSKEY];

};

}

<2> 用户登陆业务逻辑

{

// <1> 用户登陆需要一个单独的控制器,因为只需要登陆一次(Login.storyboard). 应用程序需要有一个入口:main.storyboard: app 主页面

// <2> 判断用户是否登陆成功过(通过偏好设置中存储的用户信息判断)

// 1> 如果偏好设置中存有用户信息(说明之前登陆成功过),直接进入 app 主页面 :main.storyboard

// 2> 如果偏好设置中不存在用户信息(第一次登陆或者之前注销了用户信息),进入登陆界面 :Login.storyboard

// <3> 如果用户登陆成功,跳转到 app 主页面:main.storyboard.并且在偏好设置中保存用户信息.

// <4> 如果用户点击注销按钮,注销用户信息,返回到登陆页面.

}

<3> 问题: 用户密码不能以明文的形式保存,需要对用户密码加密之后再保存!

密码的安全原则:

1> 本地和服务器都不允许保存用户的密码明文.

2> 在网络上,不允许传输用户的密码明文.

现代密码学趣闻! 中途岛海战(AF)

<4> 数据加密算法:

1> 对称加密算法:加密和解密使用同一密钥.加密解密速度快,要保证密钥安全.适合给大数据加密.

2> 非对称加密算法:使用公钥加密,私钥解密.或者使用私钥加密,公钥解密.更加安全,但是加密解密速度慢,适合给小数据加密.

<5> 小技巧:

openssl :是一个强大的安全套接字层密码库,囊括主要的密码算法,常用的密钥和证书封装管理功能以及 SSL 协议.提供丰富的应用程序测试功能.

终端命令:

echo hello |openssl md5

echo hello |openssl sha1

echo hello |openssl sha -sha256

echo hello |openssl sha -sha512

}

时间: 2024-10-07 12:05:42

偏好设置保存用户信息的相关文章

.net中保存用户信息的九种方法

.net中保存用户信息的九种方法 在ASP.NET中,有几种保持用户请求间数据的途径--实际上太多了,使没有经验的开发者对在哪个特定的环境下使用哪个对象很困惑.为了回答这个问题,需要考虑下面三个条件: .谁需要数据? .数据需要保持多长时间? .数据集有多大? 通过回答这些问题,你能决定哪个对象为保持ASP.NET应用程序请求间数据提供了最佳的解决方案.图1列出了不同的状态管理对象并描述了什么时候使用它们.ASP.NET中添加了四个新的对象:Cache.Context.ViewState和Web

登录保存用户信息

做项目时,可能会将某些信息保存在session中,如登录等信息,这样方便在某些页面使用这些保存的信息. 要想保存这些信息,需要创建一个类,该类里面定义需要保存的变量等信息,当登录后就通过new一个该类来保存登录等信息,然后放在session中,需要用到这些信息时直接用例如EL表达式等取出来就OK了.例子如下: 1.保存用户信息的类 [java] view plain copy print? <span style="font-size:14px;"><span sty

Asp.NET MVC 使用 SignalR 实现推送功能二(Hubs 在线聊天室 获取保存用户信息)

简单介绍 关于SignalR的简单实用 请参考 Asp.NET MVC 使用 SignalR 实现推送功能一(Hubs 在线聊天室) 在上一篇中,我们只是介绍了简单的消息推送,今天我们来修改一下,实现保存消息,历史消息和用户在线 由于,我这是在一个项目([无私分享:从入门到精通ASP.NET MVC]从0开始,一起搭框架.做项目 目录索引)的基础上做的,所以使用到的一些借口和数据表,不详细解析,只是介绍一下思路和实现方式,供大家参考 用户登录注册信息 当用户登录之后,我们注册一下用户的信息,我们

利用偏好设置保存必要的数据

---恢复内容开始--- 偏好设置只要用于保存用户名.密码.自动登录等功能,适合一些应用的登陆界面保存数据,使用的简单步骤如下 1.读取上次保存的设置 NSUserDefaults * defaults = [NSUserDefaults standardUserDefaults]; // 直接访软件的偏好设置 [defaults  setObject:@"haha"  forKey:@"userName"];  // 存储数据 [defaults  setObje

iOS-偏好设置保存数据

两个按钮 - (IBAction)save:(id)sender { // [NSUserDefaults standardUserDefaults]可以直接操作偏好设置文件夹 NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; // 自动帮我们生成一个plist文件存放在偏好设置的文件夹 [defaults setObject:@"hm" forKey:@"account"]; //

shiro登陆成功保存用户信息到session

我们经常会需要把登录成功后的用户信息保存到session中,但是如果我们使用shiro做权限管理,该怎么去实现呢?其实很简单 第一步:写一个类CustomFormAuthenticationFilter继承FormAuthenticationFilter,并重写onLoginSuccess方法,以下是我的实现 @Override protected boolean onLoginSuccess(AuthenticationToken token, Subject subject, Servlet

Laya怎么保存用户信息到本地(相当于cookie)

laya.net.LocalStorage.setItem("name","guifa"); //存储用户信息到本地上,相当于cookie laya.net.LocalStorage.setItem("name","guifa2014"); //修改本地用户信息 var name =laya.net.LocalStorage.getItem("name"); //获取本地用户信息 不需要new,直接操作lo

php使用session和Cookie保存用户信息

计应134(实验班)詹加全 php中session的用法 PHP中的session默认情况下是使用客户端的Cookie.当客户端的Cookie被禁用时,会自动通过Query_String来传递. Php处理会话的函数一共有11个,我们详细介绍一下将要用到几个函数. 1. session_start 函数功能:开始一个会话或者返回已经存在的会话. 函数原型:boolean session_start(void); 返回值:布尔值 功能说明:这个函数没有参数,且返回值均为true.最好将这个函数置于

iOS: 偏好设置的详解和使用

偏好设置的详解: 用途:主要用来存储用户系统的设备信息,但有的时候也可以在程序的任何地方用来存储数据,作为全局数据来访问,例如视图切换需要进行登录时. 偏好设置的写入: •很多iOS应用都支持偏好设置,比如保存用户名.密码.字体大小等设置,iOS提供了一套标准的解决方案来为应用加入偏好设置功能 •每个应用都有个NSUserDefaults实例,它是一个单例对象,通过它来存取偏好设置,设置信息都是键值对的形式. •例如:保存用户名.字体大小.是否自动登录 NSUserDefaults *defau