powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Авторизация и создание пользователей
25 сообщений из 28, страница 1 из 2
Авторизация и создание пользователей
    #36608434
Marianna-sec
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, прошу помочь разобраться со следующей проблемой.

При первом запуске программа должна просить ввести пароль администратора (логин которого будет, например, "Admin" всегда). Администратор при входе в систему будет иметь возможность создавать других пользователей c логинами и паролями. Например, создаст пользователя "Вася".
И при последующих запусках программы будет появляться окно для ввода логина и пароля, куда в поле логин будут соответственно писать "Вася" или "Admin".
Хотелось бы, конечно, чтобы имена "Вася" или "Admin" были доступны по CurrentUser.

Я правда не совсем понимаю, что хочу, но в общем, наверное, чтобы локально создавался mdw файл со всеми пользователями, который был бы привязан только к текущему mdb файлу. Admin соответственно в группе Admins. Пользователь Вася в группе USers.
А администратор мог через пользовательский интерфейс файла mdb работать с файлом mdw, добавлять и удалять пользователей и пароли.

Спасибо.
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36608514
Marianna-sec
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Неужели никто не сталкивался с данной необходимостью? :(
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36608528
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Marianna-secЯ правда не совсем понимаю, что хочу, но в общем, наверное, чтобы локально создавался mdw файл со всеми пользователями, который был бы привязан только к текущему mdb файлу.
Создать mdw программно, наверно, можно. Но указывать его все равно надо вручную при запуске базы.

Всё остальное - вполне реально и естественно.
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36608534
Marianna-sec
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
По данному вопросу нашла в справке только
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
'This example creates a new workgroup file in the specified directory with the specified user information. If a workgroup file for this user already exists in the specified directory, Microsoft Access replaces it.

Application.CreateNewWorkgroupFile _
    Path:="C:\Documents and Settings\Wendy Vasse" _
    & "\Application Data\Microsoft\Access", _
    Name:="Wendy Vasse", _
    Company:="Microsoft", _
    Replace:=True

и вот это

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
'The following example sets the default workgroup file to the file system.mdw in the directory C:\Documents and Settings\Wendy Vasse\Application Data\Microsoft\Access.

Application.SetDefaultWorkgroupFile _
    Path:="C:\Documents and Settings\Wendy Vasse\" _
    & "Application Data\Microsoft\Access\system.mdw"
		


но как работать с этим mdw? как создавать пользователей и пароли, добавлять их в группу,я, к сожалению, так и не нашла :(
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36608552
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Вот что я нашел у себя:

создать юзера:
Set u = DBEngine(0).CreateUser(sUser, <какой-нибудь уникальный стринг>)
u.Password = sPassword
DBEngine(0).Users.Append u

удалить юзера:
DBEngine(0).Users.Delete sUser

занести юзера в группу:
Set u = DBEngine(0).Users(sUser)
u.Groups.Append u.CreateGroup(sGroup)

удалить юзера из группы:
Set u = DBEngine(0).Users(sUser)
u.Groups.Delete sGroup
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36608558
Marianna-sec
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а где при этом будут храниться вводимые данные?
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36608594
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Какие данные? Данные - в таблицах.

Или Вы имеете в виду имя юзера и имя группы? Я-то думал, что у Вас интерфейс уже придуман и не хватает только того синтаксиса, который я привел. Если Вы еще не придумали, как будете вводить имя юзера, то мы тут вряд ли поможем. Здесь никто не знает Вашу задачу лучше, чем Вы сами.
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36624175
Marianna-sec
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Извиняюсь за долгую паузу. вопрос по-прежнему остается для меня актуальным.
формы для ввода имени пользователя и пароля я разрабатывать не хочу, хочу использовать стандартные аксесовские, работающие с mdw файлом, прикрепленным к моему mdb-приложению.

меня интересует как реализовать процесс создания/удаления пользователей (см. картинку).
то есть как получить весь список пользователей для начала.
Владимир Саныч, то, что вы написали про создание и удаление пользователей и групп, относится mdw файлу или же где-то в ином месте хранится? я, к сожалению, не в курсе принципов работы :(
Это важно, поскольку надо решить, самостоятельно ли создавать форму для ввода пароля.
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36624609
alvk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Marianna-sec,

Чего-то не в ту степь вы полезли. Где здесь mdw? Как создадите mdw, так сразу и сможете смотреть, добавлять, удалять и т.д. пользователей. В справке всё есть.
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36624887
Фотография Ёжик`
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В аксе все есть встроенное
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36625311
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Marianna-secто есть как получить весь список пользователей для начала.
DBEngine(0).Users

Marianna-secВладимир Саныч, то, что вы написали про создание и удаление пользователей и групп, относится mdw файлу или же где-то в ином месте хранится?
По-моему, именно в mdw.
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36626970
Marianna-sec
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ёжик`,
к сожалению, пользоваться стандартными средствами из меню сервис я не могу, потому что в программе свое главное меню вместо меню "Файл". Если вы подскажете, как можно эти окна программно вызвать, это будет, конечно, наилучшим, вариантом.
а пока, создав пользователя через DbEngine, наткнулась на неприятную вещь :(
создаю пользователя
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Private Sub UserDefinition()
Dim wrkDefault As Workspace
Set wrkDefault = DBEngine.Workspaces( 0 )
Dim u As Variant
Set u = wrkDefault.CreateUser("Qwe")
u.PID = "AAA123123"
u.Password = "qwe"
wrkDefault.Users.Append u
Set usrTemp = wrkDefault.Groups("Admins").CreateUser("Qwe")
wrkDefault.Groups("Admins").Users.Append usrTemp
Set usrTemp = wrkDefault.Groups("Users").CreateUser("Qwe")
wrkDefault.Groups("Users").Users.Append usrTemp
End Sub

перезапускаю программу, захожу под пользователем Qwe, появляется ошибка (см. картинку)
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36626975
Marianna-sec
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
видимо, помимо определения в группу, нужно еще какие-то права раздать, подскажите пожалуйста, как сделать права все на все? :)
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36626993
Фотография Ёжик`
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1
Просто открыть акцес, без базы.
Создать новый файл рабочих групп.
Создать ярлык на запуск акцеса с использованием нового файла рабочих групп
Просто открыть акцес с созданного ярлыка, без базы.
Запаролить admina.
Создать новую базу.
Импортировать все объекты из старой базы (не забыть про меню и панели).
Создать новых пользователей с паролями, группы, распределить пассажиров согласно купленных билетов.

2
Открыть базу под админом с шифтом
Создать группы, пользователей, распределить, наделить правами, разрешить группам использовать раннее созданные объекты БД - таблицы, макросы, прочее.
Перелогиниться.
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36627016
Marianna-sec
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ёжик`,
mdw есть, остается только программно писать пользователей туда. Заранее создать пользователей не получится.
например, Admin имеет возможность создавать и удалять пользователей через интерфейс, будь то мой интерфейс, будь то аксесовский, что вы привели.
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36627089
alvk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Marianna-sec,

У вас нет пакета MS Office на компьютере? Нет Акцесса? Что тут про "неполучится"?
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36629402
Marianna-sec
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
не получится, потому что я не знаю, каких пользователей будут создавать люди, использующие мою программу. Окно программы (см рис.)
под меню "Управление пользователями" должен быть либо мой интерфейс, либо стандартный аксессовский. подскажите, мне, пожалуйста, по вопросу создания пользователей (листинг выше) и про то, есть ли возможность открывать из моей программы стандартное аксессовское окно для управления пользователями?
заранее спасибо
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36629449
Marianna-sec
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Неужели никто подобную глупость никогда не реализовывал? :) обидно даже как-то :(
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36629520
Фотография Ёжик`
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Marianna-secесть ли возможность открывать из моей программы стандартное аксессовское окно для управления пользователями?
Конечно можно.
Открыть базу с шифтом (если нет защиты от шифта), перейти в режим настройки меню, мышой перетащить стандартные менюхи в свое меню.
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36629627
Marianna-sec
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ёжик`,
да, действительно, ответ лежал на поверхности Спасибо, Вам огромное. (получилось так см. рис)
в принципе это подходит до тех пор пока кто-нибудь не догадается удалить панель инструментов :(
меню генерится в AutoExec, интересно, можно как-нибудь сгенерить эти кнопки?
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36629632
Фотография Ёжик`
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Генерить мень - поиск по CommandBars\
У меня (и не только) меню пользовательское меню генериться по таблице.
Для админа меню не генерится, оно уже ранее создано, просто включается, а для других - нет.


Потом насчет - "кто нибудь напортачит" у каждого свой файл оболочки, который еще и закачивается при старте или обновлении версии. Соответственно портачить можно при наличиии прав и только до перезапуска программы.
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36629962
Marianna-sec
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ёжик`,
Спасибо, все получилось, чтобы перетащить кнопки из стандартного меню, необходимо использовать их ID при создании
Код: plaintext
1.
2.
3.
4.
    Set cbr = cbrMain.Controls.Add( 10 , , , , True)
    cbr.Caption = "Дополнительно"
    Set c = cbr.Controls.Add(,  1816 , , , True) '1816 - id кнопки "Пользователи и группы"
    Set c = cbr.Controls.Add(,  572 , , , True) '572 - id кнопки "Разрешения"

еще интересная функция позволяет копировать целые разделы меню из стандартного в собственное
Код: plaintext
1.
2.
3.
    Dim MyControl As Object
    Set MyControl = CommandBars("Menu Bar").Controls( 14 ) ' 14-й контрол - меню "Сервис"
    MyControl.Copy Bar:=cbrMain, Before:= 4  'cbrMain - собственное меню

только одно непонятно... действительно только сам пользователь может поменять свой пароль? :) или как можно создать пользователя стандартными средствами Аксес да еще и с паролем :(
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36629975
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Marianna-secили как можно создать пользователя стандартными средствами Аксес да еще и с паролем :(
Давно было отвечено.
Владимир Санычсоздать юзера:
Set u = DBEngine(0).CreateUser(sUser, <какой-нибудь уникальный стринг>)
u.Password = sPassword
DBEngine(0).Users.Append u
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36630008
Marianna-sec
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не, это если я буду сама создавать интерфейс для создания пользователей.
остановилась на стандартных средствах аксес (см. Рис), можно ли при помощи них как-нибудь Admin'у создать пользователя с паролем?
или я, наверное, что-то недопонимаю :(
...
Рейтинг: 0 / 0
Авторизация и создание пользователей
    #36630022
Marianna-sec
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И еще один последний вопрос... хотя уже не в тему.
в общем по аналогии хотела в меню "Дополнительно" пихнуть кнопку "Резервная копия базы данных...", у нее id 10003.
в код генерации меню пихаю строку по аналогии
Код: plaintext
1.
Set c = cbr.Controls.Add(,  10003 , , , True) '10003 кнопки "Резервная копия БД"
появляется ошибка см. рис
...
Рейтинг: 0 / 0
25 сообщений из 28, страница 1 из 2
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Авторизация и создание пользователей
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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