Python-коннектор
Описание
Python-коннектор Пассворк — это инструмент, который упрощает программистам и DevOps-инженерам интеграцию Пассворка с инфраструктурой компании. Коннектор позволяет быстро и безопасно автоматизировать работу с записями, сейфами и доступами, не погружаясь в детали низкоуровневого взаимодействия с API и криптографией.
Основные задачи и преимущества
- Упрощение интеграции: Коннектор избавляет от необходимости вручную реализовывать работу с API, шифрованием и сессиями. Все основные операции сведены к простым методам.
- Безопасность на клиенте: Вся клиентская криптография (шифрование, расшифровка, работа с мастер-ключом) реализована внутри коннектора. Ваши секреты всегда защищены — даже при работе с открытым API.
- Управление сессией: Коннектор позволяет сохранять и восстанавливать сессию, чтобы не проходить авторизацию заново при каждом запуске скрипта.
- Гибкость: Для всех методов API, которые не покрыты отдельными функциями коннектора, реализован универсальный метод call. С его помощью можно обращаться к любым конечным точкам API Пассворка, сохраняя при этом безопасность и удобство работы.
Требования
- Python 3.11+
requests>=2.31,<3.0python-dotenv>=1.0,<2.0cryptography>=48.0.1,<49pbkdf2>=1.3,<2.0horcrux==1.3.0
Установка
Основной способ — установить пакет pw-connector из PyPI. Исходники и ручная сборка из git — на gitVerse:
- PyPI
- gitVerse (SSH)
- gitVerse (HTTPS)
pip install pw-connector
pip install git+ssh://git@gitverse.ru:2222/passwork-ru/passwork-python.git
pip install git+https://gitverse.ru/passwork-ru/passwork-python.git
Возможности
- Клиентское шифрование с поддержкой мастер-пароля;
- Ротация API-токенов: полная смена пары, обновление только
accessTokenили толькоrefreshToken; - Зашифрованное хранение и восстановление сессий;
- Многоуровневое шифрование (PBKDF2, RSA, AES);
- Гибкая SSL-проверка: системные сертификаты, пользовательский путь к CA bundle/директории или отключение проверки;
- Работа с вложениями;
- Управление пользователями и ролями;
- Управление хранилищами (vault);
- Совместное использование записей через «входящие»;
- Поддержка пользовательских полей;
- Система тегов;