我尝试了下面的代码,但是我一直得到“指定的属性不存在”错误。 kSecValueRef已检查,且不是空
let attributes: [String: Any] = [kSecClass as String : kSecClassCertificate,
kSecValueRef as String : certificateRef!,
kSecAttrApplicationTag as String : tag]
let osStatus = SecItemAdd(attributes as CFDictionary, nil)
您可以在此处找到描述KSecClassCertificate
类型的可用属性的资源。 您应该将KSECattrApplicationTag
更改为KSECattrLabel
,这样可以解决问题。 应用程序标记不是证书的有效参数。
附注。 在Apple developer documentation页面上,每个类都有一个描述这些属性的文档,或者您也可以查看源代码。