I have been unable to find an explicit answer to this in the official documentation.
Does the kSecAttrAccessible affect the behavior of how a keychain item of class kSecClassGenericPassword is backed up or not?
Only kSecAttrAccessibleWhenPasscodeSetThisDeviceOnly explicitly states that the item is not backed up. AFAICS, the only reason why kSecAttrAccessibleWhenPasscodeSetThisDeviceOnly makes it explicit is because it's by design.
Does this mean that whether a kSecClassGenericPassword is backed up or not is an implementation detail and as such subject to change?
Emphasis mine.
iCloud Backup acts like an iTunes backup without a password: the keychain items are included in the backup but they are wrapped with a device-specific key. Thus, they can only be restored to the device that originally backed them up, which means that they get lost when you restore the backup to a different device
Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware
Ref: https://forums.developer.apple.com/message/282490#282490
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With