Перейти к основному содержимому
Версия: 7.0

Примеры

Репозиторий с примерами

Готовые к использованию рецепты собраны в репозитории на gitVerse:

https://gitverse.ru/passwork-ru/passwork-integration-examples

Что внутри

CLI-рецепты (cli/)

ФайлЧто описывает
shamir_split_recover.mdОфлайн-деление и сборка секрета: shamir split / shamir recover
shamir_holder_rsa.mdКлючи держателей и шифрование долей: rsa gen-keys, rsa encrypt, rsa decrypt
create_service_account_shamir.mdСоздание сервисного аккаунта восстановления с делением мастер-ключа
recovery_grant_admin.mdЦеремония выдачи доступа: recovery grant-admin
shamir_audit.mdЛокальный журнал восстановления, права доступа к файлам, коды завершения

Также стоит свериться с содержимым файлов перед использованием: часть рецептов была написана до недавнего ужесточения CLI (--token-file вместо --token в grant-admin, выпуск API-токена сервисного аккаунта только через веб-интерфейс) — актуальное поведение флагов см. в разделах Настройка и Восстановление при инциденте этой документации.

Рецепты shamir_split_recover.md и shamir_holder_rsa.md — это офлайн-примитивы, не привязанные к сервисному аккаунту: они пригодятся и для упрощённого варианта. Остальные рецепты в этом списке (create_service_account_shamir.md, recovery_grant_admin.md, shamir_audit.md) специфичны для варианта на сервисном аккаунте.

Python-рецепты (python/)

ФайлЧто описывает
shamir_primitives.mdИспользование split, recover и функций RSA держателя из SDK
create_service_account_shamir.mdСоздание сервисного аккаунта восстановления через PassworkClient
recovery_grant_admin.mdВызов grant_admin из кода — восстановление доступа программно

Требования

  • Python 3.11+ (используется зависимость horcrux для примитивов Шамира).
  • passwork-python версии не ниже 0.2.0.
  • Включённое клиентское шифрование на инстансе Пассворка.

Быстрый старт

git clone https://gitverse.ru/passwork-ru/passwork-integration-examples.git
cd passwork-integration-examples

export PASSWORK_HOST="https://passwork.example.com"

Дальше — по конкретному рецепту из таблиц выше: офлайн-примитивы shamir/rsa не требуют PASSWORK_HOST и токенов, настройка сервисного аккаунта — сессии администратора, а recovery grant-admin — только токена сервисного аккаунта.

Поделитесь своим рецептом

Если у вас есть удачный сценарий использования схемы Шамира в Пассворке, пришлите pull request в passwork-integration-examples — укажем вас автором рецепта.