Oracle Apex Active Directory auth via LDAP

Аутентификация средствами AD возможна как для разработчиков в Workspace, так и в приложениях. Простой способ настройки интегрирован в Apex, проверено на версиях 19.х – 21.х

1. Аутентификация через AD в Workspace, включая административный интерфейс workspace “INTRENAL”

ВАЖНО. Предварительно необходимо создать пользователя с административными правами и именем учетной записи из службы каталогов. Для этого перейти “Manage Workspaces” -> “Existing Workspaces” выбрать административную рабочую область “Internal” и добавить пользователя.

Для создания пользователя обязательно указать Username = Active Directory Username, Email и пароль в соответствии с настроенными парольными политиками. Обязательно отключить смену пароля при входе.

Открываем Workspace INTERNAL, переходим в раздел “Manage Instance” -> “Security” -> “Show All”

Прокручиваем вниз до “Development Environment Authentication Schemes”, выбираем редактирование схемы “LDAP Directory”

Заполняем

Host = адрес контроллера домена, можно реплику

Use Exact Distinguished Name (DN) = YES

Distinguished Name (DN) String(Value Required) = шаблон имени пользователя, например DOMAIN\%LDAP_USER% где DOMAIN – имя домена

Port = 389 (стандартный LDAP)

Далее нажимаем “Apply Changes” и “Make Current Scheme”, после нажатия Apply Changes только сохранятся настройки, после нажатия “Make Current Scheme” все рабочие пространства Workspace будут доступны только с аутентификацией через службу каталогов.

Если что-то пошло не так, вернуть встроенную схему аутентификации по-умолчанию следующей процедурой, выполнить в контексте пользователя под которым установлен Apex:

begin
apex_instance_admin.set_parameter('APEX_BUILDER_AUTHENTICATION','APEX');
end;
/ 

2. Аутентификация приложений Apex через AD

Готовое приложение можно также встроенными средствами настроить на аутентификацию с использованием AD. Для этого необходимо добавить схему аутентификации. Заходим в приложение, далее “Shared Components” -> “Authentication Schemes” -> “Create”

Создать на основе имеющейся схемы аутентификации, внести настройки аналогичные настройкам для аутентификации рабочих пространств

При создании необходимо сразу проверить работоспособность настроек “Test Ldap”, затем нажать “Create Authentication Scheme”

После создания схема аутентификации станет действующей для приложения. Для изменения требуется зайти в схему аутентификации и нажать “Makr Current Scheme”

Для добавления пользователей перейти в “Shared Components” -> “Application Access Control” -> “Add User Role Assignment”, указать имя пользователя и роль, после этого пользователь сможет войти в приложение с использованием учётной записи AD

Для управления пользователями использовать API Apex:

APEX_APPL_ACL_USERS
APEX_APPL_ACL_USER_ROLES
APEX_APPL_ACL_ROLES

Close Menu