【问题标题】:Keychain access in iOS for OAuth tokensiOS 中用于 OAuth 令牌的钥匙串访问
【发布时间】:2015-10-17 11:12:17
【问题描述】:

我想为 iOS 使用 Keychain Services 来存储我的应用执行 Web 服务请求所需的 OAuth 访问令牌和刷新令牌。我一直在阅读Keychain Services Programming Guide 并下载了GenericKeychain 示例代码,但我很困惑:

  1. 文档中提供的代码与示例代码不同...我应该遵循哪种方法?
  2. 我在某处读到您需要在会员中心为 App ID 及其关联的配置文件启用 Data Protection。但是,我没有阅读任何关于在 Xcode 中为目标功能启用 Data Protection 的信息,而且似乎我无论如何都可以访问钥匙串......这很奇怪,但我想我应该在 Xcode 项目中启用 Data Protection也是,对吧? Apple 文档中描述的 Data Protection 内容在哪里?是否有地方说我需要为Keychain 管理启用它?我没找到...
  3. 我发现的示例使用kSecClassGenericPassword 类作为钥匙串项。由于我想管理 OAuth 相关信息,有没有更好的类我应该使用?也许kSecClassInternetPassword?和kSecClassGenericPassword有什么区别?
  4. 是否建议实例化一种KeychainWrapper类,还是将keychain相关的方法作为类方法访问更好?

提前致谢

【问题讨论】:

  • 那里有一堆钥匙串包装器,你可以利用它们来为你消除很多这种复杂性。其中一些就像使用 NSUserDefaults 一样简单。
  • @BeauYoung 谢谢,我目前正在测试另一个。但我仍然无法弄清楚问题 2 和 3...

标签: ios oauth keychain data-protection keychainitemwrapper


【解决方案1】:

第三季度: 根据苹果
documentation

您使用 Internet 密码通过 Internet 访问服务器和网站,并使用通用密码访问任何其他受密码保护的服务(例如数据库或调度应用程序)。

【讨论】:

    猜你喜欢
    • 2012-05-05
    • 1970-01-01
    • 2015-03-07
    • 1970-01-01
    • 2016-01-17
    • 2016-10-29
    • 1970-01-01
    • 2015-05-21
    • 2013-11-19
    相关资源
    最近更新 更多