Исходный код app.mod_auth_ldap.mod_api

# -*- coding: utf-8 -*-
import os
from .driver import Driver


[документация]class ModApi: _class_file = __file__ _debug_name = 'LDAPAuthAPI' def __init__(self, _ext_pth_logs=''): self._orig = None # экземпляр класса выполняющего авторизацию в системе self._logs_ext_path = '' # директория которю может назначить пользователь API if _ext_pth_logs: self._logs_ext_path = str(_ext_pth_logs) _pth = os.path.join(os.path.dirname(__file__), 'cfg') if os.path.exists(_pth): self._orig = Driver(_pth) # теперь надо придумать как получить директорию внешнюю для логирования # в каком виде хранить логи и как группировать принимает решение данный драйвер _log_pth = '' # хорошо бы хранить логи в app/data path!!! if self._logs_ext_path: _log_pth = self._logs_ext_path else: try: from app import app_api _log_pth = app_api.get_logs_path() except: pass self._orig.set_logs_dir(_log_pth)
[документация] def login(self, login, auth_secret): flg = False try: flg = self._orig.login(login, auth_secret) except Exception as ex: print(self._debug_name + '.login.Exception: ', ex) flg = False return flg
[документация] def logout(self): pass
[документация] def get_user(self, login): user = None try: user = self._orig.get_user(login) except Exception as ex: print(self._debug_name + '.get_user.Exception:', ex) user = None return user pass
[документация] def set_external_logs_path(self, _pth): """ Метод устанавливает внешнюю директорию для логов :param _pth: :return: """ if _pth and os.path.exists(_pth) and os.path.isdir(_pth): self._logs_ext_path = str(_pth) if self._orig is not None: self._orig.set_logs_dir(self._logs_ext_path)