GNOME Bugzilla – Bug 616703
Changing the user password through gnome doesn't change the password for the login keyring
Last modified: 2012-08-23 10:12:27 UTC
Changing the user password through gnome doesn't change the password for the login keyring. Instead, the next time you log in, you get a rather cryptic message about "the keyring password no longer matches your user password", which prompts for the old password. Changing the keyring password requires the user to know about the gnome-keyring program and manually change the old password there as well. Since the user password changing process requires the user to type his old password, it should be quite easy to use it to unlock the login keyring and update the password for it.
Created attachment 167225 [details] [review] Tranfer environment variables to passwd and set locale
The 'about-me' dialog doesn't transfer the user environment variables to the spawned 'passwd' (it transfers a void environment). The PAM keyring module therefore can not connect to GNOME Keyring.
Will need to make sure that accountdialog doesn't suffer from the same bug.
Moving open accountsdialog tickets from the deprecated and closed "accountsdialog" product to gnome-control-center/User Accounts. Reporter: Retesting the reported problem against GNOME 3.2 or 3.4 and adding a comment here is highly welcome.
I've just tested it on Gnome 3.2.1 (Arch Linux, stock packaged version). Unfortunately, the problem is still there, exactly as it was before.
This bug has been around since 2009 and still is present in GNOME 3.4, just tested on gnome-control-center 3.4.0.
(In reply to comment #2) > The 'about-me' dialog doesn't transfer the user environment variables to the > spawned 'passwd' (it transfers a void environment). The PAM keyring module > therefore can not connect to GNOME Keyring. Correct. But calling g_setenv() overriding the locale in the middle of execution is really not something you want to do (unless you want to end up with random parts of the UI in C language for example).
Created attachment 222170 [details] [review] user-accounts: Fix login keyring password not getting updated By passing the environment down to passwed rather than an empty one. This means that passwd's PAM modules will be able to access the session D-Bus, for the gnome-keyring PAM module to change the keyring password for example.
Attachment 222170 [details] pushed as af8a644 - user-accounts: Fix login keyring password not getting updated