﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
23896	set_password	Roman	nobody	"Recently I've implemented LDAP auth backend by myself and was confused by not being able to add change_password/set_password functionality without adding custom User model. Actually I think it is very common to delegate password validation to some external service, like LDAP, SMTP, HTTP, etc. while keeping User model as is. Also, providing custom user model will force all applications to reference settings.AUTH_USER_MODEL which is definitely correct, but forcing to do even correct thing does not look nice for me.

So, the thing I want to discuss is support of some special methods on auth backends like

{{{#!python
"""""" user is for User model instance here, not username string """"""
def set_password(user, new_password):
    pass

"""""" user is for User model instance here, not username string """"""
def change_password(user, old_password, new_password):
    pass
}}}

User model to call auth backend methods if defined.

So do I miss anything? Is my proposal correct?"	New feature	new	contrib.auth	1.7	Normal				Unreviewed	0	0	0	0	0	0
