Django: Безопасен ли пользователь без пароля?
Я пытаюсь создать интерактивный сайт на Django для чат-бота. У меня есть модель, которая хранит журналы чата, ChatLogs. В ней есть два поля: sender и message. sender, как можно предположить из названия, является внешним ключом, указывающим, кто является отправителем message. Это может быть либо бот, либо пользователь. Вот как я его настроил:
class ChatLogs(models.Model):
sender = models.ForeignKey(User, on_delete=models.CASCADE)
message = models.CharField(max_length=255)
Поскольку отправителем может быть бот или пользователь, я решил создать запись в таблице User для бота:
$ python3 manage.py shell
>>> from django.contrib.auth.models import User
>>> User.objects.create_user("Bot")
Я создал пользователя без пароля, потому что, согласно документации Django для createsuperuser, созданная таким образом учетная запись не может быть использована для входа в систему. Что, как мне кажется, является безопасным способом решения этой проблемы. Мой вопрос в том, есть ли причины, по которым я не должен этого делать?
Из документации Django (для createsuperuser):
При неинтерактивном запуске можно задать пароль, установив переменную среды DJANGO_SUPERUSER_PASSWORD. В противном случае пароль не будет установлен, и учетная запись суперпользователя не сможет войти в систему, пока пароль не будет установлен для нее вручную.