我想知道在嘗試向iOS鑰匙串中添加證書身份時,SecItemAdd
方法的狀態碼errSecDuplicateItem
的確切含義。在iOS Keychain中保存證書身份時的重複項
閱讀iOS文檔時,它只是說這個狀態碼錶示該項目在鑰匙串中是重複的,但是確定身份是否重複的標準是什麼?發行人姓名?截止日期?都?
如果你讀了Mac OSX的文件,爲a similar方法的討論部分說以下內容:
如果證書已經被添加到指定的鑰匙圈, 該函數返回errSecDuplicateItem和不添加另一個拷貝 到鑰匙串。該功能查看證書數據,而不是 的證書對象,以確定證書是否爲 重複。它認爲兩個證書是重複的,如果它們的 具有相同的主鍵屬性。
我知道有一個區別,我試圖將證書標識保存在鑰匙串中,並且這個討論是針對保存證書的SecCertificateAddToKeychain
方法的;但我相信有一個聯繫。
"primary keys attributes"
是什麼意思?
我試過兩次添加相同的身份,當然我得到的是errSecDuplicateItem
,但是我恐怕如果用戶想在某種程度上更新證書,我不會考慮用戶可能會收到錯誤。
有什麼想法?
在此先感謝
從keychain值中刪除dublicate證書!錯誤發生,因爲你使用相同的身份保存另一個證書,嘗試更改身份名稱,然後安全地刪除舊的! – iphonemaclover