| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Oracle > работа с сессиями |
| Автор: jsa 1.12.2005, 12:36 |
| Hi All! возможно ли в оракле работать с сессиями клиентов: т.е. записывать в сессию какие либо переменные, типа как в апаче REQUEST_PROTOCOL и др. вообще задача такая: есть уровень БД, уровень приложений, и уровень клиента, между приложением и клентом связь через веб, и своими средствами я могу аутентифицировать и авторизировать клиента, естественно что между приложение общается с БД по другому, и как бы получается что БД не знает ничего о клиенте (приложение ведь конектиться к БД под определенным пользователем), а хотелось бы при конекте передать сведения о клиенте в сессию БД, чтобы в последующем их обрабатывать (в триггере или в процедере), возможно ли такое в прицепе, интересует идиология, а может быть есть уже какие наработки ЗЫЖ сервер Oracle 9i R2 |
| Автор: LSD 1.12.2005, 14:32 |
| Способов достаточно, можно например записывать нужные параметры в CONTEXT, можно использовать PACKAGE переменные, наконец можно использовать PROXY USER. Что в твоем случае лучше подходит сложно сказать, надо поподробнее знать задачу, как то: сколько всего будет пользователей, пользователи добавляются/удаляются динамичиски или DBA, сколько надо хранить параметров для сессии и откуда их надо будет в основном использовать (триггеры или ХП). |
| Автор: Guest 2.12.2005, 05:30 | ||||||
ну package переменные я еще представляю, а остальное, можно плз поподробнее или ссылку на доку
что имелось ввиду?
да хотябы один (табельный номер), и использовать нужно в тригерах |
| Автор: LSD 2.12.2005, 11:27 | ||
http://download-west.oracle.com/docs/cd/B14117_01/network.101/b10773/accessre.htm#DBSEG424, грубо говоря контекст это нечно вроде переменных окружения в ОС. Значения контекста можно использовать в триггерах, хранимых процедурах и вьюерах. Например:
Proxy User это пользователь который не соединяется с базой непосредственно а делает это через другого пользователя. Удобен тем что это полноценный пользователь БД и с ним можно использовать все возможности Oracle по безопасности.http://download-west.oracle.com/docs/cd/B14117_01/network.101/b10773/admnauth.htm#1006366. Как я понял тебе надо идентифицировать сотрудников предприятия, и особых наворотов не требуется. Я думаю тебе будет достаточно контекста и package переменных. |
| Автор: jsa 6.12.2005, 09:26 |
| 2LSD: сенькс большое, буду копать |