django / django/new-features

Deprecate the current User model for authentication and authorization

Open
#4 9 comments 50 reactions 0 assignees View on GitHub
Authentication/Users
Dominant language
No language data
Stars
188
Forks
7
PR merge metrics
No merged PRs in 30d

Description

### Code of Conduct

- [x] I agree to follow Django's Code of Conduct

### Feature Description

- Introduce a simpler `User` that does not have groups or permissions (as in permission model)
- keep the abstract User model without `username` or `email`
- start new projects with either a subclass of that base model that has basic role (`user` and `admin` could be it)
- keep the Permission classes
- enable the current user model as an option
- provide an entrypoint (and simple implementation) for 2FA

### Problem

For a lot of cases, the current user model is not adequate, being either too complex (project requires only "user" and "admin" roles) or too simple (no notion of record-level ownership or hierarchy). It is also missing a unified 2FA mechanism

### Request or proposal

proposal

### Additional Details

_No response_

### Implementation Suggestions

_No response_

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.