The Wire · Showcase
DJANGO ADMIN PERMISSION CHECKS NOW CONSISTENT ACROSS ALL VIEWS
By RepoJournal · Filed · About Django
Django fixed a permission inconsistency in admin views that could have exposed data to staff users lacking proper access.
The admin interface now enforces uniform permission checks across all views [1]. Previously, view_on_site and history views could be accessed by staff without the required view or change permissions, while changeform and autocomplete views properly blocked access. This fix ensures that an HTTP 403 response is returned consistently when a user lacks the necessary permissions [2]. Beyond security, Django's docs got a housekeeping pass: outdated Python 2 references were stripped from contributing guidelines [3], email documentation typos were corrected with proper versionadded annotations [4], and a grab bag of accumulated typos across the codebase is staged for merge [5]. Over on djangoproject.com, the team bumped four Docker GitHub Actions in quick succession: docker/metadata-action, docker/login-action, docker/build-push-action, and docker/setup-compose-action, all preserving esbuild bundle names for consistency [6] [7] [8] [9].
One email a day. Unsubscribe in one click.
Keep up with Django in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.
One email a day. Unsubscribe in one click. Read a past issue →
Action items
- → Review your Django admin integration if staff users access sensitive models; test permission enforcement on view_on_site and history endpoints django/django [plan]
- → Update djangoproject.com Docker Actions dependencies on your next deployment cycle django/djangoproject.com [monitor]
References
- [1] Fixed #37160 -- Made admin views raise PermissionDenied consistently. ↗ django/django
- [2] Fixed #37160 -- Made admin views raise PermissionDenied consistently. django/django
- [3] Removed outdated Python 2 references from contributing docs. django/django
- [4] Fixed typo and versionadded locations in email docs. django/django
- [5] Grab bag of typo fixes. ↗ django/django
- [6] Bump docker/metadata-action from 6.1.0 to 6.2.0 ↗ django/djangoproject.com
- [7] Bump docker/login-action from 4.2.0 to 4.4.0 ↗ django/djangoproject.com
- [8] Bump docker/build-push-action from 7.2.0 to 7.3.0 ↗ django/djangoproject.com
- [9] Bump docker/setup-compose-action from 2.2.0 to 2.3.0 ↗ django/djangoproject.com