SSecurity » 11.08.2004 (Ср) 13:31
Вся суть проблемы заключается вот в чем,
сначала о проекте:
Запускается клиент;
В нем есть ссылка на компонент безопасности, компонент подкгружается (это мостик соединяющий клиента с данными)
в данном компоненте 3 класса:
- служба безопасности (работает с клиентом на предмет авторизации и выделения маркера доступа)
- доступ к базе данных безопасности (скрытый класс, доступен только из первого класса)
- доступ к общей базе (открытый класс), но ни один запрос до БД не проходит, если маркер службы безопасности не соответствует маркеру, предложенному клиентом при запросе.
Дабы осуществить воистину безопасный коннект с базой данных
запрос должжен проходить через компонент доступа, следовательно все запросы от клиента идут на него а потом просто передаются далее к БД и по цепочке обратно.
Все ДЛЛ-ки обращаются со своими запросами к Клиенту, клиент обращается к системе безопасности, система безопасности к БД, и резкультат запроса через значение RECORDSET передается по обратной цепочке, вызов на маршруте "клиент" - "система безопасности" это не проблема, а вот сам сбор инфы от DLL это бич программы.
Не могу организовать опрос ДЛЛ, здесь получается что ДЛЛ - это не библа с набором функций, а полнофункциональная программа с интерфейсом и набором функций.
Конечно, как вариант можно создать множество клиентов, но тогда каждому надо будет авторизовываться при запуске, а за это меня на работе съедят (хотя я и ухожу с работы, но всёже), при этом будет создано множество экземпляров компонентов доступа, что приведет увеличению количества подключений к БД, а это растранжирит ресурсы.
У меня даже мелькала идея ч/з винсок организовать связь, слава богу решил не эксперементировать в этой области, хотя кто знает:)
Программист - это маленький Бог, а все его ошибки - это самостоятельные творения:)
Так задумано:)