Not retaining sync login between launches
I use CCleaner Pro to tidy up my PC before powering off every night. When I turn the PC on the next day, it has forgotten that I logged into my Firefox account to sync bookmarks.
I have added *.firefox.com and *.mozilla.com to CCleaner's exclude list so that it won't delete any of those cookies, but that doesn't help. I am using Standard content blocking in Firefox.
I have added accounts.firefox.com to the exclude lists of Adblock Plus and Disconnect.
Additional System Details
Adblock Plus, Disconnect, NoScript
- User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Firefox/68.0
Does it still work properly when you disable CCleaner ?
Firefox uses the Password Manager to store the credentials of the Firefox Sync account (chrome://FirefoxAccounts). If you are asked to login again to Sync or another service then this means that this data isn't stored in the Password Manager.
Yes, Firefox works fine if I don't use CCleaner.
I have other computers that do not use the Password Manager built into Firefox, and they do not forget the sync login like this PC does. They are all running 68.0.1. The one difference I know of is that the working systems are running Windows 10 1803 and this problematic one is running Windows 10 1903.
I use RoboForm for password management. I have never used Firefox's password manager, and don't wish to start. There is something different about this PC--I have several others that have CCleaner and Firefox never gets bothered about it.
Firefox may still be using the builtin Password Manager to store this data silently. That is the only way that Sync can work properly. CCleaner might be wiping this data.
Do you have a logins.json file in the profile folder?
I will respectfully point out again that you are disregarding the fact that at least three other PCs running the same version of Firefox for Windows sync perfectly well without using the built-in password manager and are also cleaned nightly with CCleaner.
Nonetheless, you pointed out a logins.json file that I was not aware of. This file exists only when logged in to Firefox for syncing. I was able to exclude that file from cleaning by CCleaner. This allowed me to sync in between launches of Firefox even though CCleaner has deleted cookies in the meantime.
By preserving the logins.json file, I have proven that it is not necessary to use the Firefox password manager to save sync credentials. The logged in state for syncing appears to be stored in the logins.json file. Preventing it from being deleted by CCleaner achieves my goal.
We still don't know why this one machine is different than the rest other than the fact it is running the May 2019 update of Windows. Perhaps there is a subtle difference in how Firefox runs on that version compared to 1803.
I consider this question closed and am grateful for your assistance.
logins.json stores the passwords that you see in the Password Manager. The Sync credentials are probably hidden from showing in the Password Manager, but that doesn't mean that the Password Manager isn't active. You only disable the user interface if you remove the checkmark on "Ask to save logins and passwords for websites". This doesn't affect stored passwords. Only if you remove the logins.json and possibly key4.db as well then it isn't possible for the Password Manager back-end to work properly.