如何在iOS中管理密码?

时间:2013-06-12 11:13:15

标签: ios ipad passwords keychain

开发一个应用程序,该应用程序将有多个用户使用同一设备并具有脱机功能。 找到钥匙串包装。但真正的问题是如何在钥匙串中管理多个用户密码?我有一个sqlite数据库用于存储所有已登录的用户名。管理密码的最佳方法是什么?以及如何?

3 个答案:

答案 0 :(得分:0)

您可以将密码存储在钥匙串中。

创建一个字典,其中包含用户名作为键,密码作为值。您可以将此词典存储到钥匙串项目以安全地存储所有密码。

答案 1 :(得分:0)

您可以使用包装器SFHFKeychainUtils,并为不同的服务存储不同的密码。

您将每个服务的用户保存在NSUserDefaults中,然后使用serviceName参数存储和提取密码。

     [SFHFKeychainUtils storeUsername:name andPassword:secret forServiceName:serviceName updateExisting:YES error:&error];

答案 2 :(得分:0)

在github上查看这个开源项目SSKeyChain 与包装器非常相似,但也提供对帐户的访问,获取密码,设置密码和删除密码。

密钥链的密码输入:

NSError *error;
[SSKeychain setPassword:@"password"
             forService:@"example_name"
                account:@"account1"
                  error:&error];

在您的情况下,我会更改第二个密码的帐户变量。

要检索密码:

  NSError *error;
  NSLog(@"password1 is %@", [SSKeychain passwordForService:@"example_name" account:@"account1" error:&error]);
  NSLog(@"password2 is %@", [SSKeychain passwordForService:@"example_name" account:@"account2" error:&error]);