Как получить чтение секретного ключа django? Рекомендуется ли использовать get_random_secret_key()?
<# settings.py
from django.core.management.utils import get_random_secret_key
SECRET_KEY = get_random_secret_key()
рекомендуется ли это или это плохая практика?
Это вызовет get_random_secret_key()
при каждой загрузке настроек, таким образом, каждый раз устанавливая разные SECRET_KEY
, что не очень хорошо. Из документации:
Секретный ключ используется для:
- Всех сессий, если вы используете любой другой бэкенд сессий, кроме django.contrib.sessions.backends.cache, или используете по умолчанию get_session_auth_hash().
- Все сообщения, если вы используете CookieStorage или FallbackStorage.
- Все токены PasswordResetView.
- Любое использование криптографической подписи, если не предоставлен другой ключ.
Если вы измените свой секретный ключ, все вышеперечисленное будет недействительным. Секретные ключи не используются для паролей пользователей, и поворот ключа не не влияет на них.
Секретный ключ обеспечивает криптографическую подпись, Если вы измените свой секретный ключ, все следующие будут недействительны (за исключением паролей пользователей), поэтому это плохая практика, чтобы они генерировались в каждом запросе.
- Все сессии, если вы используете любой другой бэкенд сессий, кроме django.contrib.sessions.backends.cache, или используете стандартную функцию get_session_auth_hash().
- Все сообщения, если вы используете CookieStorage или FallbackStorage.
- Все токены PasswordResetView. Любое использование криптографической подписи, если не предоставлен другой ключ.