powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / внешняя аутентификация PB+ORACLE
11 сообщений из 36, страница 2 из 2
внешняя аутентификация PB+ORACLE
    #33506382
Геннадич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2SergeyGor
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Присоединен к:
Oracle8i Enterprise Edition Release  8 . 1 . 5 . 0 . 0  - Production
With the Partitioning and Java options
PL/SQL Release  8 . 1 . 5 . 0 . 0  - Production

SQL> SELECT SYS_CONTEXT('USERENV','IP_ADDRESS') FROM DUAL;

SYS_CONTEXT('USERENV','IP_ADDRESS')
-----------------------------------------------------------
 192 . 168 . 10 . 59 

SQL>

ФилиппДля не умеющих читать повторю ещё раз: ...
Хорошо, буду учиться.
...
Рейтинг: 0 / 0
внешняя аутентификация PB+ORACLE
    #33507206
alexis glinski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот пример обращений к AD без API функций:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
lole_ADSI = CREATE OLEObject
ll_Rtn = lole_ADSI.ConnectToNewObject( "ADSystemInfo")
gnv_app.of_SetDebug( 'ADSI.ConnectToNewObject = [' + string( ll_Rtn ) + ']' )

IF ll_Rtn =  0  THEN
	TRY
		ls_user = lole_ADSI.UserName
		ls_computer = lole_ADSI.ComputerName
		ls_site = lole_ADSI.SiteName
		ls_domain = lole_ADSI.DomainDnsName

		ls_username = Mid( ls_user,  4 , Pos( ls_user, 'OU=' ) -  5  )
		ls_username = gnv_App.inv_Str.of_GlobalReplace( ls_username, '/', '' )

	CATCH (Exception e)
		gnv_App.of_SetDebug( 'ADSI.Exception = [' + e.Text + ']' )
	CATCH (OLERuntimeError re)
		gnv_app.of_SetDebug( 'Runtime Error = [' + re.Text + ']' )
	END TRY

	lole_LDAP = CREATE OLEObject
	ll_Rtn = lole_LDAP.ConnectToObject( "LDAP://" + ls_User )
	gnv_app.of_SetDebug( 'LDAP.ConnectToObject = [' + string( ll_Rtn ) + ']' )

	IF ll_Rtn =  0  THEN
		TRY
		 	ls_LoginName = string( lole_LDAP.Get( 'sAMAccountName' ) )
			ls_Dept = string( lole_LDAP.Department )
			ls_User = string( lole_LDAP.Description )
			ls_Computer = string( lole_LDAP.Name )

			gnv_app.of_SetDebug( 'LDAP.sAMAccountName = [' + ls_LoginName + ']' )
		CATCH (Throwable t)
			gnv_app.of_SetDebug( 'LDAP.Exception = [' + t.Text + ']' )
		END TRY
	END IF

	ll_Rtn = lole_LDAP.DisConnectObject()
	gnv_app.of_SetDebug( 'LDAP.DisConnectObject = [' + string( ll_Rtn ) + ']' )
	DESTROY lole_LDAP

END IF

ll_Rtn = lole_ADSI.DisConnectObject()
gnv_app.of_SetDebug( 'ADSI.DisConnectObject = [' + string( ll_Rtn ) + ']' )
DESTROY lole_ADSI
...
Рейтинг: 0 / 0
внешняя аутентификация PB+ORACLE
    #33507446
Фотография PL99
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergeyGorА роли кто нибудь пробовал подключать
в функциях,процедурах или пакетах?Динамический SQL поможет. Рекомендую поискать в соответствующем форуме
SergeyGorА так в серьезных системах, наверно не только вход
но и ответственные команды должны
подтверждаться паролем, ключом или глазом. Как в фильмах.А зачем?
Если пользователь вошел в систему, то он уже подтвердил свои полномочия в рамках предоставленных ему прав.

SergeyGor ГеннадичВсё это изобретение велосипеда.
Лучше плодите пользователей(пусть пользователь будет даже иметь вид: 'пользователь'+'домен'+'группа Windows' ) - ничего не прийдётся перекомпиливать - всё решается простым администрированием БД.

Когда за несколько сотен пользователей и 3 сотни таблиц и вьюшек,
то администратор конечно же ничего не решит.Система с такими параметрами весьма средняя.
SergeyGorИ вобще то за информацию отвечает не администратор БД,
а за ответственное лицо подразделения.За информацию - ответственное лицо подразделения, а за доступ к ней - администратор БД.
...
Рейтинг: 0 / 0
внешняя аутентификация PB+ORACLE
    #33507690
zuzu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
насчет идентификайии по IP, по моему нехорошо,
разве что у вас юзеров 20,
так как обычно юзеров в системе больше 300,
и еще: юзеры приходят и уходят
и обычно IP в сети динамические.

а если уж хочется не вводить пароль
то ставть устройство типа ключа - тоесть карточные,
правда тут затраты на эти устройства и карточки (которые тоже могут терятся),
но зато не надо будет вводить пароль )
...
Рейтинг: 0 / 0
внешняя аутентификация PB+ORACLE
    #33507732
Pasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zuzuнасчет идентификайии по IP, по моему нехорошо,
разве что у вас юзеров 20,
так как обычно юзеров в системе больше 300,
и еще: юзеры приходят и уходят
и обычно IP в сети динамические.

а если уж хочется не вводить пароль
то ставть устройство типа ключа - тоесть карточные,
правда тут затраты на эти устройства и карточки (которые тоже могут терятся),
но зато не надо будет вводить пароль )

2 zuzu
идентифицировать по IP не есть гуд.
Необходимо по специальной метке в windows Мне админы подсказывают что это Sid, его подменить не возможно
...
Рейтинг: 0 / 0
внешняя аутентификация PB+ORACLE
    #33507900
npoil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Оракл предоставляет штатные средства для интеграции с каталогами, в том числе Microsoft AD.
А называется все это DIP %)
Для того чтобы заработало это решение нужно установить Oracle Internet Directory (OID) - аналог AD.
Далее есть много вариантов интеграции, на сколько я понял нужна внешняя аутентификация.
Для этого юзают:
External Authentication Plug-in - Используется для аутентификации прользователей Windows , когда пароли хранятся в Аctive Directory

Соответственно у всех этих средств есть API и тд.
...
Рейтинг: 0 / 0
внешняя аутентификация PB+ORACLE
    #33507944
SergeyGor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можно начну снизу.

PL99 SergeyGorИ вобще то за информацию отвечает не администратор БД,
а за ответственное лицо подразделения.За информацию - ответственное лицо подразделения, а за доступ к ней - администратор БД.

У нас стандартная заявка на подключение к БД примерно в таком виде.

Прошу предоставить доступ к БД .....
того ..................... для чтения ............. подпись того
этого ................... для записи/чтения ... подпись этого
и т.д.

Подписи
руководитель подразделения кто просит
администратор домена кто просит

руководитель подразделения у кого просят
администратор домена у кого просят

представитесь СБ

А администратор БД вобще в структуре ИТ, и никакого отношения к этому
не имеет. Все права раздаются не grant -ми, а в удобном интерфейсе
раставлением крестиков для групп и команд, в подразделении кто предоставляет информацию.
Посмотрите как сделано в промышленных системах или приведите пример где
сделано не так. Пример окошечка могу прислать.

И мониторинг наверно должен быть не за таблицами,
а за функциональными операциями с информацией.


PL99 SergeyGorКогда за несколько сотен пользователей и 3 сотни таблиц и вьюшек,
то администратор конечно же ничего не решит.Система с такими параметрами весьма средняя.
Даже маленькая, но уже заложена масштабируемость, как по пользователям
так и контролем доступа к модулям, группам информации и операциям.


PL99 SergeyGorА роли кто нибудь пробовал подключать
в функциях,процедурах или пакетах?Динамический SQL поможет.

Рекомендую поискать в соответствующем форуме
Это сейчас администратор БД и делает.

PL99 SergeyGorА так в серьезных системах, наверно не только вход но и ответственные команды должны
подтверждаться паролем, ключом или глазом. Как в фильмах.А зачем?
Если пользователь вошел в систему, то он уже подтвердил свои полномочия в рамках предоставленных ему прав.

У нас еще до этого не дошло, но пытаются протащить электронную подпись,
думаем что примерно так и должно быть. Насчет глаза конечно шутка.
...
Рейтинг: 0 / 0
внешняя аутентификация PB+ORACLE
    #33508163
zuzu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergeyGorА администратор БД вобще в структуре ИТ, и никакого отношения к этому
не имеет. Все права раздаются не grant -ми, а в удобном интерфейсе
раставлением крестиков для групп и команд, в подразделении кто предоставляет информацию.
Посмотрите как сделано в промышленных системах или приведите пример где
сделано не так. Пример окошечка могу прислать.а никто и не говорит что эти гранты задает админы,
списки грантов создают из такого окна что ты написал,
а сами гранты юзер получает после коннекта.
...
Рейтинг: 0 / 0
внешняя аутентификация PB+ORACLE
    #33508275
PridobreY
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
внешняя аутентификация PB+ORACLE
    #33508287
SergeyGor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
zuzu SergeyGorА администратор БД вобще в структуре ИТ, и никакого отношения к этому
не имеет. Все права раздаются не grant -ми, а в удобном интерфейсе
раставлением крестиков для групп и команд, в подразделении кто предоставляет информацию.
Посмотрите как сделано в промышленных системах или приведите пример где
сделано не так. Пример окошечка могу прислать.а никто и не говорит что эти гранты задает админы,
списки грантов создают из такого окна что ты написал,
а сами гранты юзер получает после коннекта.

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

И пользователям при регистрации, подключают от 1 до 4-х ролей,
в зависимости от их прав.
Как создали 4 роли 5 лет назад, так они остались практически без изменений.
Назначение этих ролей, от грубых ошибок программистов.
...
Рейтинг: 0 / 0
внешняя аутентификация PB+ORACLE
    #33508473
Фотография urvas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дорогой коллега SergeyGor!
Мне кажется Вы мешаете горячее с зелёным - доступ к функционалу клиентского места с правами на объекты БД.
При этом какие бы права на функционал Вы не дали пользователю, без соответствующих прав на объекты БД, работать такое приложение не должно. А вот наоборот, имея статические права на объекты БД, пользователь посообразительней имеет шансы обойти защиту Вашего приложения и напрямую получить доступ к БД.
...
Рейтинг: 0 / 0
11 сообщений из 36, страница 2 из 2
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / внешняя аутентификация PB+ORACLE
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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