Защита БД Access используя *.MDW (модераторы - не удаляйте!)

Работа VB и СУБД (Access, MSSQL, MySQL, Oracle и пр.)
Правила форума
При создании новой темы не забывайте указывать используемую СУБД.
mainAlex
Начинающий
Начинающий
 
Сообщения: 13
Зарегистрирован: 11.04.2005 (Пн) 19:07
Откуда: Красноярск

Защита БД Access используя *.MDW (модераторы - не удаляйте!)

Сообщение mainAlex » 22.04.2005 (Пт) 7:57

Всем привет!

Есть такая проблема! надо создать системную БД с определёнными аккаунтами (формат *.mdw) на лету (т.е. исключительно в коде), а затем защитить уже созданную БД (также в коде) используя эту системную БД!

Заранее большое спасибо!

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 22.04.2005 (Пт) 11:25

открой справку по Access, там все подробно рассписано как надо делать и примеры на DAO есть

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 22.04.2005 (Пт) 11:27

Я в свое время предпочел один раз просто создать MDW-файл "ручками" и в дальнейшем просто использовать его копию для создания новой базы...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

mainAlex
Начинающий
Начинающий
 
Сообщения: 13
Зарегистрирован: 11.04.2005 (Пн) 19:07
Откуда: Красноярск

Сообщение mainAlex » 22.04.2005 (Пт) 11:52

Да вот что-то не могу я найти в справке к Access пример создания MDW из кода!

Я вот сейчас так и делаю, создал MDW и использую его для всех остальных баз данных, но всё-таки хотелось бы создать его в коде..

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 22.04.2005 (Пт) 11:54

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

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 22.04.2005 (Пт) 13:03

А если так:

Код: Выделить всё
sysDbPath="C:\new.mdw"
adx.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
  sysDbPath & ";Jet OLEDB:System database=" & _
  sysDbPath & ";Jet OLEDB:Create System Database=True;")
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

Igor_123
Осторожный Баянист
Осторожный Баянист
Аватара пользователя
 
Сообщения: 1325
Зарегистрирован: 21.07.2004 (Ср) 13:00
Откуда: Днепропетровск

Сообщение Igor_123 » 22.04.2005 (Пт) 15:45

А это, подключаешь его(Mdw) и открываешь базу(ну или ещё используешь восстановитель паролей к офису и тогда 100% открываешь базу). :(
Или я со своими пятью копейками не туда влез???
Водки я вам не обещаю, но погуляем хорошо.
И. Сусанин.

Аватара (с) Тёмыч

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 22.04.2005 (Пт) 16:34

Igor_123 писал(а):А это, подключаешь его(Mdw) и открываешь базу(ну или ещё используешь восстановитель паролей к офису и тогда 100% открываешь базу). :(
Или я со своими пятью копейками не туда влез???


А что впустую говорить - открой приложенную базку...
Так и проверим - мне тоже интересно.
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

Igor_123
Осторожный Баянист
Осторожный Баянист
Аватара пользователя
 
Сообщения: 1325
Зарегистрирован: 21.07.2004 (Ср) 13:00
Откуда: Днепропетровск

Сообщение Igor_123 » 22.04.2005 (Пт) 17:36

Значит я действительно не туда влез :oops:

Нашел таблицы:
AppointmentCategories
Appointments
Employees

Нашел пользователей
admin = poiuytrewq
Tester=Asc(Mid$(strText,
Engine
Вот! а данные не посмотрел :oops:
Водки я вам не обещаю, но погуляем хорошо.
И. Сусанин.

Аватара (с) Тёмыч

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 25.04.2005 (Пн) 8:02

Igor_123 писал(а):Вот! а данные не посмотрел :oops:


Неплохо. Точно не помню, но что-то похожее было.

Сие говорит о том что для хранения важной информации локальные СУБД не подходят по своему определению. Только SQL-сервер в комнате доверху заполненной кобрами на какое-то время защитит...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 25.04.2005 (Пн) 15:26

Не, почему же, можно и локальные использовать. Просто файлы данных надо хранить на закриптованных разделах диска (каталогах). Можно PGP юзать, можно виндовый EFS - без проблем. Но как только тот же .mdb вылезет из отведенного ему места - все, хана.

Кстати, вы в курсе, что программы для реально закрытых вещей не должны использовать штатную временную папку и системный механизм работы с временными файлами? По следам в %TMPDIR% можно восстановить данные, следовательно, система будет являться уязвимой к утечке.

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 25.04.2005 (Пн) 15:32

Ennor писал(а):Не, почему же, можно и локальные использовать. Просто файлы данных надо хранить на закриптованных разделах диска (каталогах). Можно PGP юзать, можно виндовый EFS - без проблем. Но как только тот же .mdb вылезет из отведенного ему места - все, хана.


Да ну их. У себя-то явно лучше и проще пользовать нормальный SQL-сервер. MDB-шки это когда какой-то продуктик на продажу, но тогда и криптовать разделы на чужом компе не получится...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

mainAlex
Начинающий
Начинающий
 
Сообщения: 13
Зарегистрирован: 11.04.2005 (Пн) 19:07
Откуда: Красноярск

Сообщение mainAlex » 25.04.2005 (Пн) 16:12

Да, интересная дискуссия!

Ну во-первых, MDB будет использоваться у стороннего USERа, а не у меня на компе, отсюда никаких естественно PGP криптованных разделов, винтов и т.д., и т.п.

Нужна очень простая и в то же время эффективная защита БД! самая простое и довольно эффективное решение, это сделать Аккаунты авторизованных пользователей в MDW.

Если есть предложения или критические высказывания - выскажитесь, обязательно приму к сведению.

mainAlex
Начинающий
Начинающий
 
Сообщения: 13
Зарегистрирован: 11.04.2005 (Пн) 19:07
Откуда: Красноярск

Сообщение mainAlex » 25.04.2005 (Пн) 16:14

Д, чуть не забыл, и БД - НАСТОЛЬНАЯ, а не сетевая!!!!!! Отсюда отпадают все SQL подобные серверы и т.д!

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 25.04.2005 (Пн) 16:15

mainAlex писал(а):Нужна очень простая и в то же время эффективная защита БД! самая простое и довольно эффективное решение, это сделать Аккаунты авторизованных пользователей в MDW.


Ну и пользуй ее, если она достаточна. По крайней мере обычный юзер ее не сломает - для этого нужна хоть какая-то продвинутость в данном вопросе, умение найти вскрывалку в интернете, да и желание все это проделать, в конце концов.
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 25.04.2005 (Пн) 17:10

Зацени Firebird.
Я ее особо не юзал и то что видел мне не понравилось, но слышал отзывы, что СУБД неплохая -- достаточно быстрая и достаточно защищенная.
Lasciate ogni speranza, voi ch'entrate.

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 26.04.2005 (Вт) 9:37

alibek писал(а):Зацени Firebird.
Я ее особо не юзал и то что видел мне не понравилось, но слышал отзывы, что СУБД неплохая -- достаточно быстрая и достаточно защищенная.


А смысл? Любые локальные СУБД ломаются по определению - ибо их файл базы данных доступен. Ну разве что только первое время после выхода под них нет ломалок... Ну и под всяческие редкости ломалки найти сложней, но стоит ли оно того, в данном случае?
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

mainAlex
Начинающий
Начинающий
 
Сообщения: 13
Зарегистрирован: 11.04.2005 (Пн) 19:07
Откуда: Красноярск

Сообщение mainAlex » 28.04.2005 (Чт) 14:10

Да сомневаюсь я что стоит использовать Firebird, хотя тоже слышал про неё. В принципе та защищённость, которая требуется (я имею ввиду уровень) присутствует и в Access базах, при условии использования системной базы юзеров.

А проблема то как раз в том, что я не могу в коде создать эту долбанную MDW!! Да потом ещё и как то надо привязать MDB к ней, также в коде!

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 28.04.2005 (Чт) 14:20

mainAlex писал(а):А проблема то как раз в том, что я не могу в коде создать эту долбанную MDW!! Да потом ещё и как то надо привязать MDB к ней, также в коде!


Если ты внимательно посмотришь то несколько выше я приводил кусочек кода создающего mdw-файл. Ну а дальше уже проще - все есть в Help-e.
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

Igor_123
Осторожный Баянист
Осторожный Баянист
Аватара пользователя
 
Сообщения: 1325
Зарегистрирован: 21.07.2004 (Ср) 13:00
Откуда: Днепропетровск

Сообщение Igor_123 » 28.04.2005 (Чт) 15:03

Сорри за то, что выпал из дискусии

Я работаю с Yaffil(русский брат Firebird)
размер установленного SQL сервера порядка 5Мб, а встроенной версии 300Кб. При этом возможности аналогичные MS SQL и по защите данных в том числе.

Ну и клиент для доступа к данным нужен.

Хотя здесь хозяин барин, и есть особенности работы с базой, т.к. сервер версионный, а не блокировочный.

Удачи
Водки я вам не обещаю, но погуляем хорошо.
И. Сусанин.

Аватара (с) Тёмыч

mainAlex
Начинающий
Начинающий
 
Сообщения: 13
Зарегистрирован: 11.04.2005 (Пн) 19:07
Откуда: Красноярск

Сообщение mainAlex » 29.04.2005 (Пт) 10:25

А точно, что-то я как-то мимо глаз пропустил код создания MDW, всё, получилось, создал в коде системную БД! Также в коде создал и просто БД, которая необходима!

НО, всё же есть у меня ещё одна проблема: Теперь мне необходимо в системной БД создать USERа с определённым именем (с правами администратора) присвоить ему пароль и назначить его администратором БД MDB, но при этом ТОЛЬКО он (созданный пользователь) может работать с БД MDB, а все остальные USERы и т.д. НЕ МОГЛИ бы даже открыть эту MDB!

Я пробовал в коде (DAO) создать новую рабочую группу в этой системной БД, а в ней создать нужного Userа и привязать MDB базу к этой системной бд, всё вроде работает, однако если удалить эту системную БД то MDB начинает спокойно открываться...

Как же всё-таки правильно это всё сделать?

Спасибо за помощь!

mainAlex
Начинающий
Начинающий
 
Сообщения: 13
Зарегистрирован: 11.04.2005 (Пн) 19:07
Откуда: Красноярск

Сообщение mainAlex » 29.04.2005 (Пт) 10:26

А точно, что-то я как-то мимо глаз пропустил код создания MDW, всё, получилось, создал в коде системную БД! Также в коде создал и просто БД, которая необходима!

НО, всё же есть у меня ещё одна проблема: Теперь мне необходимо в системной БД создать USERа с определённым именем (с правами администратора) присвоить ему пароль и назначить его администратором БД MDB, но при этом ТОЛЬКО он (созданный пользователь) может работать с БД MDB, а все остальные USERы и т.д. НЕ МОГЛИ бы даже открыть эту MDB!

Я пробовал в коде (DAO) создать новую рабочую группу в этой системной БД, а в ней создать нужного Userа и привязать MDB базу к этой системной бд, всё вроде работает, однако если удалить эту системную БД то MDB начинает спокойно открываться...

Как же всё-таки правильно это всё сделать?

Спасибо за помощь!

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 29.04.2005 (Пт) 10:42

mainAlex писал(а):Как же всё-таки правильно это всё сделать?


Подключись со своей MDW-шкой, поставь какой-нибудь пароль админу и заодно поотбирай все права у него и стандартных групп...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

mainAlex
Начинающий
Начинающий
 
Сообщения: 13
Зарегистрирован: 11.04.2005 (Пн) 19:07
Откуда: Красноярск

Сообщение mainAlex » 29.04.2005 (Пт) 10:50

Может подскажите как отобрать права?

Я ни разу не сталкивался с этим, и поэтому что-то смутно представляю себе...

Спасибо!

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 29.04.2005 (Пт) 11:07

mainAlex писал(а):Может подскажите как отобрать права?
Спасибо!


Ну примерно так (ADOX):

Код: Выделить всё
cat.Groups("Users").SetPermissions ...  ' См. Help


Для DAO - на память не помню, но тоже должно быть что-то подобное...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

Pantalone
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 687
Зарегистрирован: 12.11.2005 (Сб) 16:46
Откуда: Сапог

Сообщение Pantalone » 16.11.2005 (Ср) 20:03

А зачем вообще весь этот огород нужен? Просто интересно.
Кстати обычный пароль на MDB хорошо снимается посторонними тулзами?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 16.11.2005 (Ср) 20:08

Огород нужен для того, чтобы разные пользователи ходили в разные сортиры по разным концам этого огорода, и не могли бы ни отправить свои надобности в сортире соседа, ни взять его произведения на анализ...
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 16.11.2005 (Ср) 20:55

GSerg
круто загнул :lol:

а потом всех
мочить в своих сортирах


Вернуться в Базы данных

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

    TopList