iOS 8 Beta Keychain用户访问控制

时间:2014-07-21 10:58:48

标签: keychain ios8 touch-id

我正在通过在访问钥匙串时引入Touch ID来查看新的用户访问控制功能。

这是场景......

  • 我在Keychain查询中使用新的访问控制对象为密钥链编写了一个用户密码。
  • 下次我尝试返回此秘密时,我会按预期看到Touch ID / Passcode界面。
  • 下次我尝试将相同的数据写入钥匙串时,我想首先检查它是否已经存在。
  • 即使我将返回数据属性指定为false,也会显示Touch ID界面。但这不是我想要的。

这是预期的行为还是我错过了禁用Touch ID界面的特定属性?

1 个答案:

答案 0 :(得分:0)

我认为通过做类似的事情可以实现你想要实现的目标:

// --- Add this code to your save method

// Adds a new keychain item
let status: OSStatus = SecItemAdd(keychainQuery as CFDictionaryRef, nil)

if status == errSecSuccess {
    println("Keychain Add: \(KeychainResultCode(rawValue: status)?.description)")
    return true
} else if status == errSecDuplicateItem {
    // perform an update
    return self.update(key, data: data)
} else {
    return false
}

以上是否适合您的需求?