Opened 23 months ago

Closed 23 months ago

Last modified 23 months ago

#33712 closed New feature (wontfix)

Changing a default auth implementation to use email instead of username.

Reported by: Chathura Madusanka Owned by: nobody
Component: contrib.auth Version: 4.0
Severity: Normal Keywords: auth allauth
Cc: auth, allauth Triage Stage: Unreviewed
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description (last modified by Chathura Madusanka)

As of now(2022/5/16) almost all websites that gives login functionality to users Use Email + password method. But Django uses username + password method. I feel like that is wrong .
So I think,

1) default method should be email + password.
2) Email verification methods should also be included and managed by settings
3) method should be changeable by settings(uName+password , email+password , uName , password ,any other)
4) if possible Allauth default integration (with methods like :- normal auth(without admin) , normal+admin auth )

should be .

Change History (2)

comment:1 by Mariusz Felisiak, 23 months ago

Has patch: unset
Resolution: wontfix
Status: newclosed
Summary: Auth with EmailChanging a default auth implementation to use email instead of username.
Type: Cleanup/optimizationNew feature

Thanks for this ticket, however, it is a set of various proposition, some duplicates, some are "wontfix" without a proper discussion and reaching a consensus on the DevelopersMailingList.

1) default method should be email + password.
2) Email verification methods should also be included and managed by settings
3) method should be changeable by settings(uName+password , email+password , uName , password ,any other)

Django has pluggable authentication backends and you can achieve this by following the docs, it's duplicate of #7591.

Changing a default implementation would be backward incompatible, so first we have to reach a strong consensus on the DevelopersMailingList. A clear deprecation path is also required ("wontfix".)

4) if possible Allauth default integration (with methods like :- normal auth(without admin) , normal+admin auth )

Using django-allauth is already possible and I don't see any advantages in including it in Django itself ("wontfix".)

comment:2 by Chathura Madusanka, 23 months ago

Description: modified (diff)
Note: See TracTickets for help on using tickets.
Back to Top