Для ограничения прав доступа зарегистрированных пользователей в Django, необходимо использовать систему разрешений и групп пользователей.
Для того чтобы пользователям были запрещены права администратора, можно использовать предварительно созданную группу без привилегий администратора и присваивать эту группу зарегистрированным пользователям.
Для ограничения доступа к функции удаления категории только для администратора, можно использовать декораторы доступа, такие как `@login_required` для ограничения доступа к определенным представлениям только для аутентифицированных пользователей. Например, можно создать декоратор `@admin_required`, который будет проверять, является ли пользователь администратором, и в случае отрицательного результата перенаправлять его на страницу с ошибкой или другое представление.
Необходимости создания собственного конфигурационного файла для управления правами доступа нет, так как Django предоставляет механизмы для управления этими правами встроенно. Для удобства и лучшей организации кода можно создать отдельный файлы, например `decorators.py`, где будут храниться декораторы доступа.
Пример декоратора `@admin_required`:
```python
from django.contrib.auth.decorators import user_passes_test
def admin_required(function):
def wrap(request, *args, **kwargs):
if not request.user.is_superuser:
return HttpResponse("Access forbidden")
return function(request, *args, **kwargs)
return wrap
```
Использование декоратора в представлении:
```python
from .decorators import admin_required
@admin_required
def delete_category(request, category_id):
# Ваш код удаления категории
```
Этот подход позволит ограничить доступ к функции удаления категории только для администратора.