powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / APEX и Active Directory
24 сообщений из 24, страница 1 из 1
APEX и Active Directory
    #36986662
Я только начал изучать APEX и передомной стоит такая задача:
К существующей БД Oracle 10g подключен APEX 4.0 в котором реализовали интерфейс по управлению справочниками.
Доступ к справочникам должен осуществляться через Active Directory по схеме, ввели логин и пароль, APEX обращается к Active Directory сверяя логин и пароль, если таковой пользователь в Active Directory имеется то доступ предоставлен можно забирать данные.

Как получить из APEXа логины и пароли Activ Directory не представляю, просьба к людям ранее решавшим такую проблемму дать ссылки на документацию по теме.
...
Рейтинг: 0 / 0
APEX и Active Directory
    #36988312
lokift
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Создаете страницу для входа, заходите Shared Components - Authentication Schemes - Application Express - Current

Во вложении мои настройки. Указываете сервер, домен и можно работать...

Подробную информацию поищите на форуме.

Вот еще пара ссылок:

http://wheatfield.wordpress.com/2008/12/10/apex-ldap-and-oracle-login/

http://www.oracle.com/technetwork/developer-tools/apex/how-to-ldap-authenticate-099256.html
...
Рейтинг: 0 / 0
APEX и Active Directory
    #36992197
Шангеев_ВладимирКак получить из APEXа логины и пароли Activ Directory не представляю, просьба к людям ранее решавшим такую проблемму дать ссылки на документацию по теме.
если в качестве веб-сервера апач, то ничего получать не нужно. поможет модуль авторизации mod-auth-sspi . апач в сотрудничестве с браузером всё сделают сами. Вам только нужно будет вязть переменную окружения REMOTE_USER и реализовать Page Sentry функцию в собственной схеме авторизации. если интересно - приведу работающий пример.
...
Рейтинг: 0 / 0
APEX и Active Directory
    #36992577
lokift, большое спасибо. Настроили. :)
...
Рейтинг: 0 / 0
APEX и Active Directory
    #36993745
В продолжении темы по настройке LDAP соединения APEX с Active Directory, появилась необходимость вытаскивать данные о пользователях в AD.

Кусок скрипта:
DECLARE
--Инициализация
l_ldap_host VARCHAR2(256) := 'ххх.хх.х.х';
l_ldap_port VARCHAR2(256) := '389';
l_ldap_user VARCHAR2(256) := 'apex';
l_ldap_passwd VARCHAR2(256) := '(тут пароль)';
l_ldap_base VARCHAR2(256) := 'cn=apex, dc=ххх.хх.х.х';

l_retval PLS_INTEGER;
l_session DBMS_LDAP.session;
l_attrs DBMS_LDAP.string_collection;
l_message DBMS_LDAP.message;
l_entry DBMS_LDAP.message;
l_attr_name VARCHAR2(256);
l_ber_element DBMS_LDAP.ber_element;
l_vals DBMS_LDAP.string_collection;

BEGIN
-- Разрешаем поднимать исключения.
DBMS_LDAP.USE_EXCEPTION := TRUE;

-- Соединение с сервером
l_session := DBMS_LDAP.init(hostname => l_ldap_host,
portnum => l_ldap_port);

l_retval := DBMS_LDAP.simple_bind_s(ld => l_session,
dn => l_ldap_user,
passwd => l_ldap_passwd);

DBMS_OUTPUT.PUT_LINE('Коннект к AD под пользователем верный.');

-- Получаем все атрибуты
l_attrs(1) := '*'; -- все свойства
l_retval := DBMS_LDAP.search_s(
ld => l_session,
base => l_ldap_base,
scope => DBMS_LDAP.SCOPE_SUBTREE,
filter => 'objectclass=*',
attrs => l_attrs,
attronly => 0,
res => l_message);
DBMS_OUTPUT.PUT_LINE('Ура получены атрибуты.');
END;


И тут я голову сломал скрипт падает на DBMS_LDAP.search_s, скорее всего из за строки l_ldap_base.

Выдается сообщение об ошибке:
ORA-31202: DBMS_LDAP: LDAP client/server error: LDAP Referral Error. 0000202B: RefErr: DSID-031006E0, data 0, 1 access points
ref 1: 'xxx.xxx.xxx.xxx' -Скрыто.
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 86
ORA-06512: at "SYS.DBMS_LDAP", line 1455
ORA-06512: at "SYS.DBMS_LDAP", line 234
ORA-06512: at line 34

Подскажите как правильно сформировать строку l_ldap_base, скрипт выполняется PLSQL Developer Вместо ххх.хх.х.х вписан IP сервера LDAP.
...
Рейтинг: 0 / 0
APEX и Active Directory
    #36993792
Шангеев_Владимир Подскажите как правильно сформировать строку l_ldap_base, скрипт выполняется PLSQL Developer Вместо ххх.хх.х.х вписан IP сервера LDAP.
Вот пример
Код: plaintext
l_ldap_base VARCHAR2( 256 ) := 'dc=company, dc=com, dc=ru';
дальше думайте сами
...
Рейтинг: 0 / 0
APEX и Active Directory
    #36994156
не удержался...дальше думайте сами
Спасибо... пример натолкнул на правильную мысль.

Теперь возникла другая проблемма с лимитом сессии, судя по теме...
http://www.sql.ru/forum/actualthread.aspx?tid=649510
обойти ее можно, но это проблемма сисадмина.
...
Рейтинг: 0 / 0
APEX и Active Directory
    #36994168
Шангеев_ВладимирТеперь возникла другая проблемма с лимитом сессии, судя по теме...
http://www.sql.ru/forum/actualthread.aspx?tid=649510
обойти ее можно, но это проблемма сисадмина.
обойти её можно и без сисадмина. фильтрами :)
т.е. по частям. вот и всё...
...
Рейтинг: 0 / 0
APEX и Active Directory
    #36996751
[quot не удержался...]Шангеев_Владимиробойти её можно и без сисадмина. фильтрами :)
т.е. по частям. вот и всё...
Я никогда не видел AD в живую и т.к. сервер AD находится в другом городе и не выделен человек из IT с кем можно было бы обсудить фильтрацию.

Без информации от IT какие стандартные фильтры я могу попробовать задать?
...
Рейтинг: 0 / 0
APEX и Active Directory
    #36997287
Шангеев_ВладимирЯ никогда не видел AD в живую и т.к. сервер AD находится в другом городе и не выделен человек из IT с кем можно было бы обсудить фильтрацию.

Без информации от IT какие стандартные фильтры я могу попробовать задать?
вот пример:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
l_retval := DBMS_LDAP.search_s(
ld => l_session,
base => l_ldap_base,
scope => DBMS_LDAP.SCOPE_SUBTREE,
filter => '&(objectclass=user)(cn=A*)',
attrs => l_attrs,
attronly =>  0 ,
res => l_message);
в результате будете иметь всех пользователей, имя которых начинается на "A"
в 90% случаев это будет меньше умолчательного SizeLimit в 1500 (если не ошибаюсь)
думаю, подход Вам ясен?
...
Рейтинг: 0 / 0
APEX и Active Directory
    #36999029
не удержался......подход Вам ясен?
Да, спасибо... сначала все ошибки с конвертацией символов да ограничением сессии выходили, но потом нашел удачную комбинацию фильтра по атрибутам и стало ясно, что он возвращает.

В моем случае надо было ограничивать по наименованию компании в атрибуте company, плюс есть необходимость перечислять возвращаемые атрибуты т.к. иначе в неких атрибутух возникает ошибка с недопустимыми символами.

Вот в таком варианте работает, хотя не всех пользователей находит, но это уже связано с тем, что в AD пользователи были заведены абы как.

автор l_attrs(0) := 'name';
l_attrs(1) := 'objectClass';
l_attrs(2) := 'cn';
l_attrs(3) := 'sn';
l_attrs(4) := 'givenName';
l_attrs(5) := 'distinguishedName';
l_attrs(6) := 'instanceType';
l_attrs(7) := 'displayName';
l_attrs(8) := 'mailNickname';
l_attrs(9) := 'mail';
l_attrs(10) := 'objectCategory';
l_attrs(11) := 'legacyExchangeDN';
l_attrs(12) := 'company';
l_retval := DBMS_LDAP.search_s(ld => l_session,
base => l_ldap_base,
scope => DBMS_LDAP.SCOPE_SUBTREE,
filter => '(&(objectclass=user)(company=компания))',
attrs => l_attrs,
attronly => 0,
res => l_message);
DBMS_OUTPUT.PUT_LINE('соед2:');
...
Рейтинг: 0 / 0
APEX и Active Directory
    #37489395
vadokx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня такой вопрос - у меня есть стандартный путь к APEX
http://host:7777/pls/apex/ - который отркывает страницу авторизации к апексу

Как сделать что бы вместо стандартного пригласительного окна с вводом workspace, user, pass, выводилась моя страница, к которой я сделаю свой логин через свою authentication scheme через Active Directory
...
Рейтинг: 0 / 0
APEX и Active Directory
    #37491487
vadokxУ меня такой вопрос - у меня есть стандартный путь к APEX
http://host:7777/pls/apex/ - который отркывает страницу авторизации к апексу

Как сделать что бы вместо стандартного пригласительного окна с вводом workspace, user, pass, выводилась моя страница, к которой я сделаю свой логин через свою authentication scheme через Active Directory
http://host:7777/pls/apex/f?p=app
где app - номер Вашего приложения, в котором делаете какую захотите авторизацию...
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
APEX и Active Directory
    #38139726
DanJa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть проблема с аутентификацией через AD.
Работаю на крупном заводе, структура AD сложная, Exact DN в схеме использовать не получится, вместо %LDAP_USER% в CN'ке хранится Ф.И.О. сотрудника, нормальный %LDAP_USER% лежит в sAMAccountName.
Теперь пробую настроить схему.
Хост, порт, no SSL, в DN пишу DC=******,DC=ru, Use Exact - NO, в Search Filter пишу sAMAccountName=%LDAP_USER% - не прокатывает.
Зато прокатывает, если я из LDAP-браузера копипасчу полный distinguishedName пользователя (CN=USER_FIO,OU=*****,OU=*********,OU=*****,DC=*****,DC=ru), записываю его в настройках схемы в поле DN, Use Exact - YES, и логинюсь этим пользователем.
Как мне преодолеть эту фигню?
...
Рейтинг: 0 / 0
APEX и Active Directory
    #38139750
DanJa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DanJaЕсть проблема с аутентификацией через AD.
Работаю на крупном заводе, структура AD сложная, Exact DN в схеме использовать не получится, вместо %LDAP_USER% в CN'ке хранится Ф.И.О. сотрудника, нормальный %LDAP_USER% лежит в sAMAccountName.
Теперь пробую настроить схему.
Хост, порт, no SSL, в DN пишу DC=******,DC=ru, Use Exact - NO, в Search Filter пишу sAMAccountName=%LDAP_USER% - не прокатывает.
Зато прокатывает, если я из LDAP-браузера копипасчу полный distinguishedName пользователя (CN=USER_FIO,OU=*****,OU=*********,OU=*****,DC=*****,DC=ru), записываю его в настройках схемы в поле DN, Use Exact - YES, и логинюсь этим пользователем.
Как мне преодолеть эту фигню?
Нашел решение в следующей теме по поиску - 6054811
Получилось так - в DN написал %LDAP_USER%@*******.ru и поставил Use Exact
...
Рейтинг: 0 / 0
APEX и Active Directory
    #38140229
aeugen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не удержался....... mod-auth-sspi . апач в сотрудничестве с браузером всё сделают сами. ....
что то я не увидел у них в описании названия ОС на которой крутится Apache...
...
Рейтинг: 0 / 0
APEX и Active Directory
    #38519739
JeckFS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DanJa, с прошедшими праздниками, вопрос есть. Вот мы все делаем так же как вы, но аутентификация не проходит ни под каким видом :( APEX 4.2, AD - Win2k8R2. Создается стойкое впечатление, что simple bind не пашет. Не сталкивались с таким?
...
Рейтинг: 0 / 0
APEX и Active Directory
    #38519741
JeckFS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
да, забыл, Oracle 11g2
...
Рейтинг: 0 / 0
APEX и Active Directory
    #38523888
aeugen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JeckFS,

1. А через LDAP-browser проверяли как аутентификация проходит??? (например JXplorer)
2. Еще можно попробовать через глобальный каталог (там порт другой) - смотреть тут .
...
Рейтинг: 0 / 0
APEX и Active Directory
    #38532979
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JeckFS,

Ключевое слово: ACL
...
Рейтинг: 0 / 0
APEX и Active Directory
    #38535882
JeckFS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDev копаем как раз в этом направлении, как сделаем отпишусь
...
Рейтинг: 0 / 0
APEX и Active Directory
    #38573815
ДенискаИ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как проще в APEX реализовать сквозную аутотентификацию в AD, если пользователь на компе уже зашел в домен и у него уже не надо лишний раз спрашивать имя и пароль.
Может для этого есть специальный плагин?
...
Рейтинг: 0 / 0
APEX и Active Directory
    #38577111
Рустамка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ДенискаИКак проще в APEX реализовать сквозную аутотентификацию в AD, если пользователь на компе уже зашел в домен и у него уже не надо лишний раз спрашивать имя и пароль.
Может для этого есть специальный плагин?
Выше уже определили нужное направление ;-)
не удержался...если в качестве веб-сервера апач, то ничего получать не нужно. поможет модуль авторизации mod-auth-sspi . апач в сотрудничестве с браузером всё сделают сами. Вам только нужно будет вязть переменную окружения REMOTE_USER и реализовать Page Sentry функцию в собственной схеме авторизации. если интересно - приведу работающий пример.
...
Рейтинг: 0 / 0
APEX и Active Directory
    #38577267
AlexProOra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДенискаИКак проще в APEX реализовать сквозную аутотентификацию в AD, если пользователь на компе уже зашел в домен и у него уже не надо лишний раз спрашивать имя и пароль.
Может для этого есть специальный плагин?
Интересная тема!
Тоже очень интересно, зачем юзеру 2 раза пароли вводить?
Возможно такое на WebLogic (ApexListener) сделать?
...
Рейтинг: 0 / 0
24 сообщений из 24, страница 1 из 1
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / APEX и Active Directory
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]