Apple has increased security around iCloud and how apps and devices can access your data. One of the newest forms of iCloud security is the use of app-specific passwords. Essentially, any apps that don't support two-step verification, if you have it enabled, will instead need an app-specific password in order to link up to your iCloud account. This ensures that your primary Apple ID password isn't collected or stored by any third party apps. Luckily, generating app-specific passwords and managing them is easy enough!
How to generate and manage your app-specific passwords in iCloud
Go to appleid.apple.com from any web browser and sign in to the Apple ID you use for iCloud.
Verify your identity using two-step authentication when asked in order to proceed.
Once you're fully logged on, click on Password & Security in the left-hand navigation.
Click on Generate an App-Specific Password.
Give your app-specific password a name and click Generate — a good rule of thumb is to use the app or service name as the label so you can later tell them apart easily if you need to remove it.
Copy the app specific password that was generated to your clipboard and then switch back to the app you need to use it with and use this generated password instead of your normal iCloud password — this can be on your Mac or on any device that needs access to your iCloud account.
For anyone familiar with using app-specific passwords through Google, the process for using them through iCloud is very similar. You can have up to 25 app-specific passwords at a time and can revoke access at any time through your Apple ID.
If and when you need to view all your app-specific passwords, you can easily do so under the same Privacy & Security section by clicking View History. You can also revoke access to an app anytime you'd like. You will need to do this if you restore your device and need to authorize access again, which is why it's always important to give your app-specific passwords good names so you can easily pick out which ones are used for what.