Як отримати список всіх зареєстрованих користувачів
Як отримати список всіх зареєстрованих користувачів?
Майстри, підкажіть будь ласка.
На сервері зареєстровано кілька користувачів.
Перед входом в програму потрібно видавати запит на ім'я ползователей і пароль.
Так ось, яким чином можна отримати список всіх цих користувачів. Є якийсь спосіб, окрім як коннектіться безпосередньо до isc4.gdb?
Є. Зберігати список користувачів в якомусь файлі.
> Зберігати список користувачів в якомусь файлі
Тоді це майже те ж саме, що і isc4.gdb.
Але тоді при кожному оновленні списку користувачів в isc4.gdb доведеться робити ті ж зміни і в цьому файлі.
> Dens (13.09.03 17:07) [2]
Природно. А чи так уже взагалі потрібно отримувати цей список. Може просто, нехай користувач сам вводить своє ім'я.
Воно то звичайно можна, але зручніше вибрати зі списку.
А то дурний юзер як-небудь не так введе.
Якщо вже немає іншого способу, то нехай тоді юзер сам вводить.
Я ж запитав про всяк випадок, може як-небудь і можна.
Якщо по іншому не можна, тоді можна як небудь по імені сервера дізнатися шлях до isc4.gdb.
Я пробував копатися в реєстрі.
На локальній машині начебто знайшов шлях до каталогу, в котой встановлений IB:
HKEY_LOCAL_MACHINE \ SOFTWARE \ InterBase Corp \ InterBase \ CurrentVersion
і в рядку RootDirectory - шлях до каталогу.
Але це на локальній машині.
А як це дізнатися на сервері?
> Dens (13.09.03 17:30) [4]
> А як це дізнатися на сервері?
На скільки я знаю - в загальному випадку ніяк. І я б порадив все-таки окремий файл зі списком, хоча б тому, що на сервері може бути кілька БД, а навіщо тобі в списку користувачі, що не мають до твоєї БД ніякого відношення.
Ну що ж. Ні так ні.
Дякую і на цьому.
Взагалі-то сервер IB надає спеціальний API, за допомогою якого можна отримати список всіх користувачів (так само, як це робить IBConsole). Ну а найпростіше скористатися компонентою IBSecurityService (палітра Interbase Admin), яка через цей API може дати тобі список користувачів
треба просто підключитися до isc4.gdb і все.
стандартні функції, якщо я не помиляюся, не надають інформації про користувачів. Там є функції додавання, видалення і модифікації користувачів.
Підключився до isc4.gdb і отримав список
SELECT DISTINCT USER_NAME, FIRST_NAME, MIDDLE_NAME, LAST_NAME, "+
"FULL_NAME, GROUP_NAME, SYS_USER_NAME, UID, GID, COMMENT" +
"FROM USERS ORDER BY USER_NAME
Тааааааааааааааакккккк. треба спробувати, сенк та цікаві думки.