
5) Варианты защиты
• Настройка защиты приложений
Рис.
Настройка защиты приложений в API
• Низкая (процесс IIS) Приложение ISAPI (впрочем, и другие приложения также) в режиме защиты Low (IIS Process) работает в том же пространстве процесса (т.е. Inetinfo.exe), что и сам IIS. Если происходит отказ приложения и нарушение доступа к памяти у IIS или серьезный сбой другого важного серверного процесса, то IIS и все другие Web-приложения тоже могут завершиться аварийно.
• Средняя (объединенная) При использовании режима Medium (Pooled) Application Protection приложение запускается со всеми другими связанными с ним приложениями в процессе Dllhost.exe. как и при режиме защиты Low (IIS Process), если одно из приложений, использующее способ защиты Medium (Pooled) выходит из строя, это может послужить причиной сбоя всех приложений, запущенных в той же рабочей области.
• Высокая (изолированная) Каждое высокозащищенное приложения запускается в отдельной копии Dllhost.exe, и если происходит сбой приложения, это не станет причиной останови для других приложений.
6) Создание api в Delphi
• Особенности создания API в Delphi Генерируемый мастером Delphi DB Web Application Wizard исходной код библиотеки ISAPI/NS API очень похож на код приложения CGI. Отличается он только тремя экспортируемыми функциями API, благодаря которым Web-сервер может обращаться с библиотекой как с собственным расширением. Блок Unit1.pas будет полностью аналогичен этому блоку в CGI-приложении. Размеры обоих приложений, создаваемых в Delphi, примерно 600 Кбайт.
• Пример программы API
Library MyISAPI; Uses WebBroker. HTTPApp, ISAPIAPP; Unit1 in ‘Unit1.pas’ {WebModule1: TWebModule}; {$R*.RES} Exports GetExtensionVersion; // сообщает серверу версию спецификации HttpExtensionProc; // обеспечивает обмен данными между расширением и сервером TerminateExtension; // освобождает ресурсы перед выгрузкой ISAPI из памяти Begin Application.Initialize; Application.CreateForm(TWebModule1, WebModule1); Application.Run; End.