diff options
Diffstat (limited to 'PYTHON/Password & key = PATH.md')
| -rw-r--r-- | PYTHON/Password & key = PATH.md | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/PYTHON/Password & key = PATH.md b/PYTHON/Password & key = PATH.md new file mode 100644 index 0000000..a5dc455 --- /dev/null +++ b/PYTHON/Password & key = PATH.md @@ -0,0 +1,94 @@ +```python +# Пример куска программы: +from django.conf import settings + +def webhook(request): + ''' Обработчик вебхука от платежной системы ''' + api_token = settigs.MY_API_KEY # ключ берем из файла settings.py + add_mailchimp_email_with_tag(email=request.POST.get('email', + audience_name='DONATES', + tag='DONATE') +``` +==`vim config/settings.py`== +```sh +#.......... + +MY_API_KEY = os.getenv('MY_API_KEY') + +#.......... +``` + +### Уровни переменных окружения: + +##### - OS (операционная система) +```sh +sudo vim /etc/environment +#-------------- +THIRD_VAR="123" +# будет видна после перезагрузки +``` +##### - USER (пользователь) +```sh +vim ~/.bashrc +#-------------- +export USER_VAR=123 +# exit +echo $USER_VAR +``` +##### - SESSION (сессия) +```sh +export SESSION_VAR=777 +echo $SESSION_VAR +# после выхода из сессии переменная пропадает +``` +##### - APPLICATION (приложение) +```sh +vim setenv.sh +#-------------- +#!bash/bin/env python3 + +export VAR1=123 +export VAR1=12345 +export VAR1=123567hbkjbjk +#-------------- + +# запустим скрипт: +. ./setenv.sh + +# или +source ./setenv.sh + +# Также можно сразу запускать приложение с установкой переменных, +> PYTHON_ENV=123 VAR=435 VAR2=jfhfg3 python testenv.py + +``` + +```python +# Использование модуля < python-dotenv > +pip install python-dotenv + +nvim .env +API_KEY='my_secret_key' +# Сразу добавляем этот файл в .gitignore !!! + +# Программа: +from dotenv import load_dotenv + +load_dotenv() + +key = os.getenv('API_KEY') +print(key) + +#################### +# Скрытие пароля при вводе: +from getpass import getpass +import pyAesCrypt + +password = getpass(promt='Пароль для расшифровки') +pyAesCrypt.decryptFile( + "secret_data.aes", + "secret_data.txt", + password +) +``` + |
