Обработка групповых разрешений Django auth
Я использую Django auth groups. Группы содержат разрешения(https://docs.djangoproject.com/en/4.1/ref/contrib/auth/#group-model). Теперь группы назначаются пользователям на основе их фактической роли. В моей тестовой установке одна группа содержит разрешение (market.xyz). Эта группа назначена вошедшему в систему пользователю.
В отладчике я вижу, что групповое разрешение назначено (строка 88)
Но если я вызываю user.has_perm(per1), то получаю False (строка 87)
Я не могу понять смысл этого результата. Необходимо ли активировать механизм auth group? Должен ли я добавить какое-то дополнительное Middleware?
Выше я уже подозревал, что не хватает какого-то Middleware для активации auth-групп. Очень близко! После некоторых проб и ошибок я обнаружил, что ModelBackend заставляет все это работать. IMHO в документации по группам авторизации можно было бы сделать замечание по этому поводу!
AUTHENTICATION_BACKENDS = [
"foo.bar.MyOwnAuthBackend",
"django.contrib.auth.backends.ModelBackend",
]