面部ID从钥匙串写入和读取值

时间:2017-09-12 20:15:46

标签: ios face-id

我确实理解框架KeychainAccess中的Access with Touch ID kSecAccessControlTouchIDAny是如何工作的,但我无法弄清楚如何在iOS 11中使用Face ID执行此操作。我找不到任何内容解决它的文档(也许文档尚未出来?)。

所以我正在寻找stackoverflow并询问:如何将使用Face ID保护的值写入钥匙串以及如何将它们复制回去?

一个最小的例子就是很好。

2 个答案:

答案 0 :(得分:5)

现在似乎可以在Xcode 9.1中使用(自测试版以来)。

可测试,例如:

https://developer.apple.com/library/content/samplecode/KeychainTouchID/Introduction/Intro.html

尽管此示例尚未针对Face ID进行更新,但它似乎适用于存储受Face ID保护的钥匙串项目。

如上所述,这在Xcode 9.0 GM中不起作用。

答案 1 :(得分:3)

Apple似乎已将Local ID支持添加到Local Authentication API,但尚未添加Keychain ACL。

我计划做的是使用本地身份验证来触发Face ID提示,如果成功,则直接访问keychain。不像我们为Touch ID提供的KeyChain ACL API那么安全,但它是迄今为止我提出的最佳解决方案。

https://developer.apple.com/documentation/localauthentication/localauthentication_constants?changes=latest_minor https://developer.apple.com/documentation/localauthentication/labiometrytype?changes=latest_minor