Russian Qt Forum

Qt => Базы данных => Тема начата: Пантер от Июль 16, 2008, 12:43



Название: Firebird 2.1 как извлечь данные о пользователе?
Отправлено: Пантер от Июль 16, 2008, 12:43
В общем на сервере в птице создал юзверя. Коннекчусь с клиента под данной учеткой.
Вопрос: как после коннекта узнать данные пользователя, т.е. FirstName, LastName, Description, UID, GID? Ведь эти данные хранятся не в моей БД, а в собственной БД птицы.  ???


Название: Re: Firebird 2.1 как извлечь данные о пользователе?
Отправлено: crossly от Июль 16, 2008, 16:09
select current_user from rdb$database


Название: Re: Firebird 2.1 как извлечь данные о пользователе?
Отправлено: Tonal от Июль 16, 2008, 20:46
current_user возвращает только логин.
Для всего остального пока нужно использовать функции Service Api.
Обещают вынести это в SQL но вроде в версии 3.


Название: Re: Firebird 2.1 как извлечь данные о пользователе?
Отправлено: Пантер от Июль 17, 2008, 07:10
:( Спасибо за объяснение. Буду значит свою таблицу юзверей заводить. :(


Название: Re: Firebird 2.1 как извлечь данные о пользователе?
Отправлено: Alex03 от Июль 17, 2008, 11:26
:( Спасибо за объяснение. Буду значит свою таблицу юзверей заводить. :(
Оно иногда и полезно, как то доподнительные поля, ссылки на пользователя из других таблиц и т.д.


Название: Re: Firebird 2.1 как извлечь данные о пользователе?
Отправлено: Пантер от Июль 17, 2008, 11:45
:( Спасибо за объяснение. Буду значит свою таблицу юзверей заводить. :(
Оно иногда и полезно, как то доподнительные поля, ссылки на пользователя из других таблиц и т.д.
Но коннект всех клиентов приходится делать под одной учеткой (сейчас это SYSDBA), что не есть хорошо, и нельзя на сервере отследить кто приконектился. :(


Название: Re: Firebird 2.1 как извлечь данные о пользователе?
Отправлено: Tonal от Июль 17, 2008, 16:24
Под SYSDBA не надо. Создай пользователя и дай ему права на всё что нужно.
Создать можно в процессе инсталляции, или если ещё нет.


Название: Re: Firebird 2.1 как извлечь данные о пользователе?
Отправлено: Пантер от Июль 18, 2008, 07:22
Да это понятно. Только вот все будут только под ним входить, а хотелось по нормальному.
Ну и ладно, думаю топик можно закрыть.


Название: Re: Firebird 2.1 как извлечь данные о пользователе?
Отправлено: Alex03 от Июль 18, 2008, 11:52
Ну при желании то можно и на каждого пользователя завести по аккаунту, а по имени аккаунта уже искать в своей табличке чего надо, но тут конечно надо следить за синхронностью изменения данных и там и там.
С другой стороны если юзеры в БД лезут только из самописанных программ (АРМов), как это сейчас у меня, то для каждого типа АРМа прописан свой аккаунт, а авторизация юзера идёт уже по своей табличке с юзерами, их правами, паролями (точнее хэшами паролей).
Но в моём случае великой секьюрности не надо.


Название: Re: Firebird 2.1 как извлечь данные о пользователе?
Отправлено: crossly от Июль 21, 2008, 11:08
а действительно что тебе мешает... логины на сервере... вся остальная инфа сопосталенная логинам в отдельной таблице... я к примеру при необходимости всегда так делал..


Название: Re: Firebird 2.1 как извлечь данные о пользователе?
Отправлено: Пантер от Июль 21, 2008, 11:17
Гемор это лишний. Лучше уж тогда свою таблицу завести, чем состыковывать.
В общем пока ничего не изменится буду поддерживать свою таблицу пользователей.


Название: Re: Firebird 2.1 как извлечь данные о пользователе?
Отправлено: crossly от Июль 21, 2008, 11:29
Гемор это лишний. Лучше уж тогда свою таблицу завести, чем состыковывать.
В общем пока ничего не изменится буду поддерживать свою таблицу пользователей.
лично я лишнего гемора не вижу.... это тоже самое что работать с системной таблицей.... реально ты же права проверяеш только при входе...