← Back to team overview

openstack team mailing list archive

Re: Change user password (not admin)

 

I've had this fight with Joe Heck and Termie before. They rejected my attempts to modify the Keystone code to allow a user to change their own password. I believe their grounds were a combination of it being an "admin" activity, and that adding it to the "user" API would change the API contract and couldn't be done in until v.next of the API.

Feel free to have at it with them again. ;-)


-          Gabriel

From: openstack-bounces+gabriel.hurley=nebula.com@xxxxxxxxxxxxxxxxxxx [mailto:openstack-bounces+gabriel.hurley=nebula.com@xxxxxxxxxxxxxxxxxxx] On Behalf Of Guillermo Alvarado
Sent: Wednesday, June 06, 2012 9:24 AM
To: openstack@xxxxxxxxxxxxxxxxxxx
Subject: [Openstack] Change user password (not admin)

Hi everyone!

I am trying to develop a new feature to horizon, I want to users can update their own password.
I used this:

from horizon import api

api.user_update_password(
    request,
    request.user.id<http://request.user.id>,
    form.cleaned_data['new_password'],
    admin=True
)

But  the user is logged out because in keystone.py there is this:

if not user.is_admin():
            raise exceptions.NotAuthorized

So, Only the user admin can use that method.

How can I be able to use this method with a normal user, or do you recommend to query the database directly to modify the password in the user table.

Thanks in advance!

Follow ups

References