【问题标题】:Security in iPhoneiPhone 中的安全性
【发布时间】:2011-03-21 19:41:32
【问题描述】:

我的问题是: 1. 我正在开发一个 iPhone 应用程序,我是这样处理的: 用户身份验证,使用用户名和密码(在使用 Web 服务验证后),我的问题是它如何在我的应用程序中存储用户名和密码。是否有安全或我是否已着手实施安全机制?

感谢您的回答

【问题讨论】:

    标签: iphone objective-c keychain


    【解决方案1】:

    我正在使用SFHFKeychainUtils。它使用苹果的安全框架。 它易于使用,保存用户名和密码:

    [SFHFKeychainUtils storeUsername:userNameString andPassword:passwordString forServiceName:@"YourServiceName" updateExisting:TRUE error:&error]; 
    

    并检索用户名的加密密码

    [SFHFKeychainUtils getPasswordForUsername:userNameString andServiceName:@"YourServiceName" error:&error];
    

    【讨论】:

      【解决方案2】:

      使用钥匙串:Keychain iphone

      【讨论】:

        【解决方案3】:

        保存:

        NSUserDefaults *userNamePrefs = [NSUserDefaults standardUserDefaults];
        NSUserDefaults *passwordPrefs = [NSUserDefaults standardUserDefaults];
        
        [userNamePrefs setObject:@"username" forKey:@"username"];
        [passwordPrefs setObject:@"password" forKey:@"password"];
        

        检索

        NSUserDefaults *userNamePrefs = [NSUserDefaults standardUserDefaults];
        NSUserDefaults *passwordPrefs = [NSUserDefaults standardUserDefaults];
        
        NSString *savedUsername = [prefs stringForKey:@"username"];
        NSString *savedPassword = [prefs stringForKey:@"username"];
        

        UITextbox 用户输入的其他内容只匹配字符串,如

        if ((usernameTextBox.Text isEqualToString(savedUsername)) && (passwordTextBox.Text isEqualToString(savedPassword)) ){
            // pass authentication
        }
        else{
          // show alert view fail authetication
        }
        

        【讨论】:

        • 您将密码保存为用户默认的纯文本?!我真的很希望我拥有并且永远不会使用您的应用程序
        • 不,我只是推荐,这并不是说你强行使用它。我只是有一个可选的建议,事实上我为了安全目的在我的应用程序中使用 SFHFKeychainUtils...这很简单,这就是为什么,如果你介意的话,对不起
        猜你喜欢
        • 2013-12-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-02-22
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多