Django auth.models.py изменить - PullRequest
       16

Django auth.models.py изменить

0 голосов
/ 16 сентября 2010

Я пытаюсь внести изменения в файл auth.models.py, чтобы заставить функцию хеширования пароля (get_hexdigest()) не использовать соль при передаче ша1.Таким образом, изменение будет:

auth.models.py line 33

до:

return sha_constructor(salt+raw_password)

после:

return sha_constructor(raw_password)

Однако, когда я изменяю и сбрасываю сервер, онне признаетсяСтарый способ шифрования поддерживается, и ничто не отличается.

Кто-нибудь знает, почему изменения не загружаются django?

Заранее спасибо.

1 Ответ

2 голосов
/ 16 сентября 2010

Во-первых, не стоит так менять внутреннюю функцию Django.

Во-вторых, существует ряд возможных причин, по которым это может иметь место.

Если выУстановив Django в вашу систему как обычный пакет Python, вы не можете просто внести изменения в исходные тексты, и они будут распознаны, если только ваша установка Django не является исходной и выполняется через символическую ссылку.Вам придется пересобрать и установить модифицированную версию.

Django sha_constructor() - это просто удобный интерфейс для сборщиков ша через модули hashlib или sha (это модули Python).Так что выясните, какой из них используется на вашем сервере, и посмотрите на hashlib.sha1 или sha.new, чтобы увидеть, как эти методы работают.

Наконец, остановитесь и переоцените то, что вы делаете.Не модифицируйте Django.Вместо этого напишите свой собственный метод, который выполняет хеширование так, как вы хотите, чтобы он выполнялся, и внесите все необходимые изменения в приложение / проект, чтобы использовать собственное хеширование.Изменение внутреннего хеширования в Django вызовет у вас головную боль, когда вы захотите обновить Django.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...