Как организовать смену пароля пользователя при первом входе?
Как вариант:
1. Сервис регистрации пользователя генерит новый временный пароль и шлет по почте + у этого пользователя выставляется флаг PwdChangeRequired = true.
2. Пользователь входит в систему с тем временным паролем, система знает кто вошел и проверяет флаг на true и редиректит его на форму смены пароля.
PS: Я не знаком с Django
Обычно реализовывается через password expiration.
То есть нужно хранить дату смены пароля.