SuperAPI AI 工具集

axiom-keychain-diag

通用与其它

查看项目

更新于 10-16 05:02

技能介绍

用途:当 SecItem 调用返回错误时,提供系统化的钥匙串排障流程,按概率排查唯一性约束、查询属性、数据保护时机、访问组权限、Mac 行为及更新后项目丢失等问题。核心原则是先导出已有项目并比对属性,再改动钥匙串代码。

主要能力:内置多种诊断决策树,包括 errSecDuplicateItem(含各类别主键属性说明)、errSecItemNotFound、errSecInteractionNotAllowed、errSecMissingEntitlement、应用更新后项目消失、Mac 特有问题与 errSecNoSuchAttr。列出常见症状与可能原因对照表,并强调常见误判(如“包装器会处理”“直接删除重加”“errSecItemNotFound 就是不存在”)。

必要用法:先运行诊断步骤——用 SecItemCopyMatching 配合 kSecMatchLimitAll、kSecReturnAttributes、kSecReturnRef 导出同类项目;将属性与查询比对;检查 kSecAttrAccessible 与设备锁状态;用 codesign -d --entitlements - /path/to/YourApp.app 2>&1 | grep keychain-access-groups 验证访问组权限。修改可访问性需删除后重加,但设备锁定下删除成功而添加失败会丢失凭据。

适用场景:iOS/macOS 应用钥匙串读写异常排查、后台访问失败、多应用共享访问组、应用更新或团队变更后凭据丢失。

限制:资料未提供具体版本要求、安装命令、收费信息或完整代码示例,部分细节(如各平台差异的完整清单)暂未提供。