API - список всех внешних адресов ОО
Для получения данных необходимо произвести GET запросы к web-серверу.
/extoo/<логин>
/extooall/
Вывод данных происходит в формате JSON.
По-умолчанию выводятся ссылки с доступом к API.
Для доступа к ресурсам используется PAM авторизация.
При наличии работающего сервиса vasd на запускаемом сервере будет использоваться доменная авторизация.
Реализована простая защита от DDOS-атак ограничивающая частоту запросов к сервису.
pip install -r requrements.txt
Либо вручную установить пакеты (остальные будут установлены как зависимости):
- Flask
- envparse
- psycopg2 (psycopg2-binary, если проблемы со сборкой)
- ldap3
- python-pam
Настройка производится в конфигурационном файле ".env" Используемые параметры:
* Общие
LOG_LEVEL
APPNAME
API_HOST
API_PORT
OLD_DAYS_LOGINS : просматривать количество дней, если логин не в сети
DISABLE_REAL_NAMES : отключить добавление названий
PREFIX_OO : список префиксов ОО для обработки, по-умолчанию все существующие
REST_TIME : время "отдыха" между запросами. Для предотвращения DDOS-атаки
* Для подключения к БД
DB_HOST
DB_PORT
DB_BASE
DB_USER
DB_PASS
* Для подключения к LDAP
LD_SERVER
LD_USER
LD_PASS
LD_BASE_DN
LD_PAGE_SIZE
Запуск реализован через start.sh Но также можно использовать любой WSGI-сервер, либо нативно (стартовый скрипт: runner.py)