veil-aio-au
Установка
Проект доступен в PyPi, можете воспользоваться поддерживаемым пакетным менеджером, например, pip
pip install veil-aio-au
Использование
Команды для запуска на системе
Настоятельно не рекомендуется использовать напрямую системные команды, т.к. для корректной работы требуется возможность запуска команды с sudo без подтверждения пароля. В качестве примера в разделе bash размещены bash-скрипты с интерфейсами вызова.
Настройки
Учитывая особенности вызова команд, предусмотрена дополнительная валидация аргументов и исполняемых команд. Если пользовательский ввод исключен, можно отключить валидацию аргументов параметром validate.
Перечень аргументов
task_timeout: время ожидания выполнения команд (5 сек по умолчанию)
user_add_cmd: полный путь до команды создания пользователя (например, adduser)
group_add_cmd: полный путь до команды создания группы (например, addgroup)
user_edit_cmd: полный путь до команды редактирования пользователя (например, usermod)
user_set_pass_cmd: полный путь до команды задания пароля (например, chpasswd)
user_check_in_group_cmd: полный путь до команды проверки нахождения в группе (например, id -Gn)
user_remove_group_cmd: полный путь до команды удаления из группы (например, gpasswd -d)
sudo_cmd: полный путь до команды sudo (например, /usr/bin/sudo). Если пустой - команды запускаются без доп.префикса sudo.
kill_cmd: полный путь до команды которой будут завершаться процессы (например, kill). Обязателен в случае заполнения sudo_cmd, может быть пустым.
validate: включить или отключить дополнительную валидацию аргументов (вкл по умолчанию)
show_stdout: выводить stdout для процессов или нет. (выкл по умолчанию)
#### Примеры
```
auth_class = VeilAuthPam(task_timeout=5,
user_add_cmd='bash/adduser_bi.sh',
group_add_cmd='bash/addgroup_bi.sh',
user_edit_cmd='bash/edituser_bi.sh',
user_set_pass_cmd='bash/set_pass_bi.sh',
user_check_in_group_cmd='bash/check_in_group_bi.sh',
user_remove_group_cmd='bash/remove_user_group_bi.sh',
sudo_cmd='/bin/sudo'
)
auth_result = await auth_class.user_authenticate(username='user', password='qqq')
# >>> return code: 7, msg: Authentication failure
create_result = await auth_class.user_create_new(username='user', password='qwe123')
# >>> return code: 0, msg: None
create_result = await auth_class.user_create_new(username='user; /bin/rm -rf /home/devalv/tmp', password='peka')
# >>> return code: 1, msg: Unknown arguments: /bin/rm
check_in_group_result = await auth_class.user_in_group('devalv', 'vdi-web-admin', use_sudo=False)
# >>> True
# Disable as_sudo class attr for user_create_new cmd.
create_result = await auth_class.user_create_new(username='user', password='qwe123', as_sudo=False)
# On default system you`ll need to run cmd with sudo prefix.
# >>> return code: 1, msg: sudo: a terminal is required to read the password; either use the -S option to read from standard input or configure an askpass helper
```
### Документация
Готовые примеры можно посмотреть в main.py репозитория, более подробное доступна через help, например,
help(VeilAuthPam.user_authenticate).
### Запуск тестов
### Сборка
rm -rf dist/ build/ && python setup.py sdist bdist_wheel
## Как принять участие в проекте
Сделайте форк, внесите свои изменения в отдельной ветке, внесите свои изменения, запустите тесты и разместите PR/MR.
Release files for veil-aio-au 0.1.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| veil-aio-au-0.1.4.tar.gz | 7.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| veil_aio_au-0.1.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 16.9 kB
Release files / veil-aio-au-0.1.4.tar.gz
| Download URL | veil-aio-au-0.1.4.tar.gz |
|---|---|
| Size | 7.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
29d982b011bb5192ea900212d8ce445bb7388d77b54e80f299d2670eaf91672f
|
|
BLAKE2b-256 checksum How to use checksums |
4fd06c0f21aa7892c8789595d5fb9d398e6ab61388f690098b1e658ea60e667b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.15.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.3.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.5.9
|
Release files / veil_aio_au-0.1.4-py3-none-any.whl
| Download URL | veil_aio_au-0.1.4-py3-none-any.whl |
|---|---|
| Size | 9.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d88a97561ad3fb53ea8585d76588b2783d2808889d3eae5020c5b30fd5af4afe
|
|
BLAKE2b-256 checksum How to use checksums |
fc6f6045f1e932f9aa1bd14a7f9b2f283dadc96835583bf9a4da0f6d1081887b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.15.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.3.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.5.9
|