如何删除应用程序可访问的所有钥匙串项目? [英] How to delete all keychain items accessible to an app?
本文介绍了如何删除应用程序可访问的所有钥匙串项目?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在iOS上有一些需要删除的流浪钥匙串物品(可能是由旧版本的应用程序编写的).有一个简单的方法可以做到这一点吗?
I have stray keychain items on iOS (probably written by old version of app) that I need to delete. Is there an easy way to achieve this?
推荐答案
对所有课程都使用
NSArray *secItemClasses = @[(__bridge id)kSecClassGenericPassword,
(__bridge id)kSecClassInternetPassword,
(__bridge id)kSecClassCertificate,
(__bridge id)kSecClassKey,
(__bridge id)kSecClassIdentity];
for (id secItemClass in secItemClasses) {
NSDictionary *spec = @{(__bridge id)kSecClass: secItemClass};
SecItemDelete((__bridge CFDictionaryRef)spec);
}
对于Swift:
let secItemClasses = [kSecClassGenericPassword, kSecClassInternetPassword, kSecClassCertificate, kSecClassKey, kSecClassIdentity]
for itemClass in secItemClasses {
let spec: NSDictionary = [kSecClass: itemClass]
SecItemDelete(spec)
}
这篇关于如何删除应用程序可访问的所有钥匙串项目?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文