iCloud sometimes spontaneously turns off permissions for certain cloud services. Usually it’s Keychain, which is an easy problem to spot because you’re suddenly locked out of everything. Worse still, getting the SMS verification code required to fix it can be a pain. Here’s a possible solution…
Security at the expense of usability
iCloud has a password, and also a security code. To re-enable Keychain, you need to enter the password and then the security code. Ostensibly, this allows you to set up iCloud Keychain on new devices and re-enable it on existing ones. But it doesn’t. It only grants the privilege of asking to verify via another device or by SMS text message.
This irritates me, especially on my iPhone since it has fingerprint ID. Prior to asking to turn Keychain back on I’ve (1) provided fingerprint identification, (2) entered a password, and (3) entered a security code.
Then I’m being asked to verify via another device or an SMS message. Grateful as I am that GCHQ will have trouble pinching my Pizza Hut login, this is rather a pain in the arse.
Verification messages that never arrive
To ice the cake, the SMS verification messages never arrive and I always have to wait until I can get hold of another device. Judging from support forums, this isn’t an uncommon problem, and I think I’ve finally worked out why.
You set your verification phone number in OS X Preferences only after selecting your country (and its international dialling code) from a drop-down menu.
Most people know that, when using international dialling codes, you omit the preceding zero. So I don’t feel like too much of an idiot for doing exactly that.
Only after my most recent Keychain fiasco did I come to wonder about this and try re-entering it with the preceding zero.
And behold, I’m now getting verification texts… and when I go back into Preferences, I see it’s removed that preceding zero for me. So it seems it doesn’t want the preceding zero, but you do have to enter it. I think.
TL;DR: In Preferences in OS X, ignore the country code and enter your full phone number – preceding zero and all. Preferences will then remove it, but stuff should work.