Oracle Application Express

Веб-среда разработки программного обеспечения
Оракул АПЕКС
Разработчик(и)Корпорация Оракул
Стабильный релиз
24.2 / 15 января 2025 г. ( 2025-01-15 )
Операционная системаWindows , Linux , Oracle Solaris, HP-UX, IBM AIX [1]
ЛицензияТехническая сетевая лицензия Oracle ( собственная [2] )
Веб-сайтapex.oracle.com

Oracle APEX (Oracle Application Express) — это платформа разработки приложений с низким кодом, разработанная корпорацией Oracle . APEX используется для разработки и развертывания облачных , мобильных и настольных приложений . Он имеет веб- интегрированную среду разработки (IDE), которая включает в себя такие инструменты, как мастера , конструкторы макетов с функцией перетаскивания и редакторы свойств.

Фон

APEX — это функция Oracle Database . Это часть Oracle Cloud в Autonomous Database Cloud Services и автономная служба разработки приложений APEX. [3]

С момента своего создания в 2000 году название Oracle APEX менялось, в том числе:

  • Потоки [4]
  • Платформа Oracle [5]
  • Проект «Чудо» [6]
  • HTML-база данных [7]
  • Application Express (APEX) также известный как Oracle APEX [7]

История

APEX был создан разработчиком Oracle Майклом Хичвой после его более раннего проекта WebDB. При создании внутреннего веб-календаря Хичва сотрудничал с коллегой-сотрудником Oracle Джоэлом Каллманом для разработки Flows. Вместе они совместно разрабатывали веб-календарь, добавляя функции в Flows по мере необходимости для разработки календаря. Ранние сборки Flows не имели интерфейса, поэтому все изменения в приложении вносились в SQL Plus с помощью команд вставки, обновления и удаления. [8]

В версии 5.2 система нумерации была изменена для приведения ее в соответствие с годом и кварталом выпуска, и она была переименована в 18.1. Это изменение соответствует изменению Oracle в номенклатуре нумерации.

Среда с низким кодом

Oracle APEX — это платформа разработки с малым объемом кода, тип среды, берущий свое начало от языков программирования четвертого поколения и инструментов быстрой разработки приложений (RAD).

APEX позволяет пользователям создавать веб-приложения с графическим пользовательским интерфейсом " без кода ". Однако, когда требования более сложные, APEX позволяет расширять объекты с низким кодом через декларативный фреймворк. Этот фреймворк позволяет разработчику определять пользовательскую логику, бизнес-правила и пользовательские интерфейсы. Разработчик может сделать это посредством включения SQL , PL/SQL , HTML , JavaScript или CSS , а также подключаемых модулей APEX. [9] [10]

Безопасность

Приложения APEX подвержены тому же уровню рисков безопасности приложений , что и другие веб-приложения, созданные на основе более прямых технологий, таких как PHP , ASP.NET и Java . Однако, начиная с APEX 4.0, интерфейс Application Builder включает утилиту под названием Advisor, которая обеспечивает базовую оценку состояния безопасности приложения.

Две основные уязвимости, влияющие на приложения APEX, — это SQL-инъекции и межсайтовый скриптинг (XSS) . [11]

SQL-инъекция

Приложения APEX по своей сути используют конструкции PL/SQL в качестве базового языка на стороне сервера и получают доступ к данным через блоки PL/SQL. [12] Приложение APEX будет использовать PL/SQL для реализации авторизации и условного отображения элементов веб-страницы. Из-за этого приложения APEX могут пострадать от SQL-инъекции, когда эти блоки PL/SQL некорректно проверяют и обрабатывают вредоносный пользовательский ввод. [13]

Oracle реализовал специальный тип переменных для APEX, называемый Substitution Variables (с синтаксисом "&NAME."); однако они небезопасны и могут привести к SQL-инъекциям. Когда инъекция происходит в блоке PL/SQL, злоумышленник может внедрить произвольное количество запросов или операторов для выполнения. Экранирование специальных символов и использование переменных связывания может уменьшить, но не устранить уязвимости XSS и SQL-инъекций.

Межсайтовый скриптинг (XSS)

Уязвимости XSS возникают в приложениях APEX, как и в других языках веб-приложений . Чтобы противостоять этому, Oracle предоставляет функцию htf.escape_sc() для замены буквенных символов на имена сущностей HTML и избегания нежелательного поведения. [14]

Разработчик может использовать схемы авторизации для управления доступом к ресурсам, таким как страницы и элементы в приложении APEX. Для обеспечения надлежащей безопасности эти схемы должны последовательно применяться ко всем соответствующим ресурсам. Примером непоследовательного управления доступом является случай, когда схема авторизации применяется к элементу кнопки, но не к процессу, связанному с этой кнопкой. Эта непоследовательность может позволить пользователю запустить процесс напрямую через JavaScript, полностью минуя кнопку.

Сторонние библиотеки

Разработчики могут улучшать и расширять приложения APEX, используя сторонние библиотеки. Среди них JQuery Mobile (пользовательский интерфейс на основе HTML 5), [15] JQuery UI (пользовательский интерфейс для веб-сайта), [16] AnyChart ( диаграммы JavaScript / HTML 5 ), [17] CKEditor (веб-текстовый редактор), [18] и другие. Oracle утверждает, что применение последних исправлений APEX гарантирует, что внешние библиотеки, входящие в комплект платформы, обновляются в тандеме, что теоретически повышает стабильность и безопасность приложения. [19] Однако многие библиотеки обновляются чаще, чем выпускаются исправления APEX, что требует от разработчиков отслеживать и вручную применять обновления по мере необходимости для поддержания совместимости и безопасности. [20] [21]

APEX и Oracle Database Express Edition (XE)

Oracle APEX может быть запущен внутри Oracle Database Express Edition (XE), бесплатной базы данных начального уровня. Хотя функциональность APEX не ограничена намеренно при запуске в XE, ограничения ядра базы данных могут помешать работе некоторых функций APEX. Кроме того, Oracle XE имеет ограничения на использование ЦП , памяти и диска. [22]

Смотрите также

Ссылки

  1. ^ "Oracle Application Express - Загрузки". Oracle . Получено 10 декабря 2015 г. .
  2. ^ "Документация Oracle Application Express". Центр справки Oracle.
  3. ^ "Oracle Application Express (APEX): Обзор" (PDF) . Корпорация Oracle .
  4. ^ "Добро пожаловать в Flows для APEX". apex-flowsforapex . Получено 24 сентября 2021 г. .{{cite web}}: CS1 maint: url-status ( ссылка )
  5. ^ "Внедрение Oracle API Platform Cloud Service". Packt . Получено 24 сентября 2021 г.
  6. ^ "как я получаю выгоду от проекта мрамор". forums.oracle.com . 17 сентября 2002 г.{{cite web}}: CS1 maint: url-status ( ссылка )
  7. ^ ab "Приложение: Oracle APEX". docs.oracle.com . Получено 26 января 2025 г. .
  8. ^ "Michael Hichwa". Apress . Майкл Хичуа — оригинальный разработчик и архитектор Oracle Application Express (APEX), также известного как HTML DB. Майкл создал APEX как 100% переписанный им же более ранний инструмент разработки приложений на основе браузера, который он также создал, называемый Oracle WebDB. Он получил неоценимую техническую помощь и руководство от Тома Кайта и Джоэла Каллмана в качестве соразработчика. Майкл и Джоэл возглавляли разработку APEX с 1999 года
  9. ^ Каллман, Джоэл. «От низкого кода к высокому контролю» . Получено 27 ноября 2017 г.
  10. ^ "Low Code with Oracle Application Express". apex.oracle.com . Получено 27 ноября 2017 г. .
  11. ^ "Защита уязвимостей от эксплойтов с помощью Apex – Часть 3". content.dsp.co.uk . Получено 8 октября 2024 г. .
  12. ^ Альперн, Д.; Агравал, С.; Баер, Х.; Каслдайн, С.; Чанг, Т.; Ченг, Б.; Дани, Р.; Деккер, Р.; Айер, К. «Обзор PL/SQL». Справочный центр Oracle . Получено 24 января 2025 г.
  13. ^ "Использование Oracle APEX". enterprisearchitecture.harvard.edu . Получено 24 января 2025 г. .
  14. ^ "Fusion Middleware PL/SQL Web Toolkit Reference". docs.oracle.com . Получено 8 октября 2024 г. .
  15. ^ «Создание мобильного веб-приложения с использованием Oracle Application Express 5.0». Oracle.
  16. ^ "Руководство пользователя Application Express Application Builder". Oracle.
  17. ^ "Oracle APEX: Использование продуктов AnyChart с Oracle Application Express (APEX)". AnyChart.
  18. ^ "Oracle выбирает FCKeditor для Application Express". CKEditor.com.
  19. ^ "Oracle Application Express (APEX) Patches". Oracle Base . Получено 30 декабря 2024 г.
  20. ^ "Goodies - APEX 4.2.2 включил библиотеки". Блог Dimitri Gielis. 8 мая 2013 г. Получено 10 декабря 2015 г.
  21. ^ "APEX 5 первый взгляд". Grassroots Oracle. 17 марта 2014 г. Получено 10 декабря 2015 г.
  22. ^ "Ограничения Express Edition". Oracle Corporation . Получено 22 мая 2013 г.

Библиография

  • Бекманн, Ральф (1 октября 2013 г.), Oracle Application Express in der Praxis: Mit APEX datenbankbasierte Webanwendungen entwickeln (1-е изд.), Carl Hanser Verlag , стр. 416, ISBN 978-3446438965
  • Чимолини, Патрик (12 сентября 2011 г.), Agile Oracle Application Express (1-е изд.), Apress , стр. 200, ISBN 978-1-4302-3759-4
  • Маттамал, Радж; Нильсен, Антон (28 июля 2011 г.), Expert Oracle Application Express Plugins: Building Reusable Components (1-е изд.), Apress , стр. 300, ISBN 978-1-4302-3503-3
  • Фокс, Тим; Скотт, Джон; Спендолини, Скотт (29 июня 2011 г.), Pro Oracle Application Express 4 (2-е изд.), Apress , стр. 700, ISBN 978-1-4302-3494-4
  • Zehoo, Эдмунд (15 июня 2011 г.), Oracle Application Express 4 Recipes (1-е изд.), Apress , стр. 300, ISBN 978-1-4302-3506-4
  • Ланкастер, Марк (28 мая 2011 г.), Oracle Application Express 4.0 с Ext JS (1-е изд.), Packt Publishing , стр. 392, ISBN 978-1-84968-106-3
  • Ауст, Дитмар; Д'Суза, Мартин Гиффи; Голт, Дуг; Гиелис, Дмитрий; Хартман, Роэл; Хичва, Майкл; Кеннеди, Шэрон; Кубичек, Денес; Маттамал, Радж; МакГэн, Дэн; Миньо, Фрэнсис; Нильсен, Антон; Скотт, Джон (16 мая 2011 г.), Expert Oracle Application Express (1-е изд.), Apress , стр. 500, ISBN 978-1-4302-3512-5
  • Голт, Дуг; Каннелл, Карен; Чимолини, Патрик; Д'Суза, Мартин Гиффи; Хилэр, Тимоти Ст. (31 марта 2011 г.), Начало Oracle Application Express 4 (1-е изд.), Apress , стр. 440, ISBN 978-1-84968-134-6
  • ван Зост, М.; ван дер Плас, Марсель (14 декабря 2010 г.), Поваренная книга Oracle APEX 4.0 (1-е изд.), Packt Publishing , стр. 328, ISBN 978-1-4302-3147-9
  • Геллер, Ари; Лион, Мэтью (1 июня 2010 г.), Oracle Application Express 3.2 – The Essentials and More (1-е изд.), Packt Publishing , стр. 520, ISBN 978-1-84719-452-7
  • ван ден Бос, Дау Питер (29 июля 2009 г.), Oracle Application Express Forms Converter (1-е изд.), Packt Publishing , стр. 172, ИСБН 978-1-84719-776-4
  • Гринвальд, Рик (22 декабря 2008 г.), Начало Oracle Application Express (1-е изд.), Wrox , стр. 384, ISBN 978-0-470-38837-2
  • Скотт, Джон; Спендолини, Скотт (16 сентября 2008 г.), Pro Oracle Application Express (1-е изд.), Apress , стр. 700, ISBN 978-1-59059-827-6
  • Официальный сайт
Взято с "https://en.wikipedia.org/w/index.php?title=Oracle_Application_Express&oldid=1273129882"