Может кто подскажет какую локальную базу дынных выбрать для создания локального защищенного хранилища данных(нужно чтобы прога могла читать данные — а пользователи при помощи другого инструментария — нет) ? Я пробовал базу аксеса запаролить, но, как оказалось, эта защита очень легко ломается.
Шифруй все данные. Это первый вариант.
Второй вариант — если БД поддерживает вход по логину и паролю, то программно создавай пользователей БД, а затем шифруй их пароли и используй для коннекта к БД именно шифрованный пароль (чтобы юзер, попытавшись зайти в БД со своей парой логин-пароль жестоко обломался )
Здравствуйте, transtexus, Вы писали:
T>Может кто подскажет какую локальную базу дынных выбрать для создания локального защищенного хранилища данных(нужно чтобы прога могла читать данные — а пользователи при помощи другого инструментария — нет) ?
MSDE — в качестве локальной базы с настроенными Application roles.
Они как раз для этого...
....you may want users to be restricted to accessing data only through a specific application. SQL Server accommodates these needs through the use of application roles....
Здравствуйте, Merle, Вы писали:
M>Здравствуйте, transtexus, Вы писали:
T>>Может кто подскажет какую локальную базу дынных выбрать для создания локального защищенного хранилища данных(нужно чтобы прога могла читать данные — а пользователи при помощи другого инструментария — нет) ? M>MSDE — в качестве локальной базы с настроенными Application roles. M>Они как раз для этого... M>
M>....you may want users to be restricted to accessing data only through a specific application. SQL Server accommodates these needs through the use of application roles....
Все бы хорошо, но нужно именно локальное хранилище. SQLServer не очень сюда вписывается.
Я пробовал MS Access защитить паролем на открытие и включить использование политик групп, но есть проги которые это очень легко открывают.
Здравствуйте, mik1, Вы писали:
M>Шифруй все данные. Это первый вариант. M>Второй вариант — если БД поддерживает вход по логину и паролю, то программно создавай пользователей БД, а затем шифруй их пароли и используй для коннекта к БД именно шифрованный пароль (чтобы юзер, попытавшись зайти в БД со своей парой логин-пароль жестоко обломался )
Я пробовал MS Access защитить паролем на открытие и включить использование политик групп, но есть проги которые это очень легко открывают. А зашифровать аксесовскую базу я немогу, т.к. она не будет открываться джетом. А второй путь не подходит, т.к. если я могу из проги конектиться, то мне больше ничего не нужно. Остальное — чтобы пользователь не смог сам ее открыть без моей проги.
Здравствуйте, transtexus, Вы писали:
T>Все бы хорошо, но нужно именно локальное хранилище. SQLServer не очень сюда вписывается.
MSDE, вполне локальное хранилище...
Здравствуйте, transtexus, Вы писали:
T>Здравствуйте, mik1, Вы писали:
M>>Шифруй все данные. Это первый вариант. M>>Второй вариант — если БД поддерживает вход по логину и паролю, то программно создавай пользователей БД, а затем шифруй их пароли и используй для коннекта к БД именно шифрованный пароль (чтобы юзер, попытавшись зайти в БД со своей парой логин-пароль жестоко обломался )
T> Я пробовал MS Access защитить паролем на открытие и включить использование политик групп, но есть проги которые это очень легко открывают. А зашифровать аксесовскую базу я немогу, т.к. она не будет открываться джетом. А второй путь не подходит, т.к. если я могу из проги конектиться, то мне больше ничего не нужно. Остальное — чтобы пользователь не смог сам ее открыть без моей проги.
Дык ты сделай небольшой либо класс, либо набор функций, и всю работу с SQL веди через них. К примеру, вполне можно кодировать данные (ВСЕ!) перед из записью в БД в формат BASE64, а при их извлечении раскодировать назад. Вариант с простой XOR-маской тоже прокатит, но тут у тебя могут появиться проблемы с непечатными символами в получающихся SQL-запросах.
MSDE, кстати, вполне локальная БД. Как и полный SQL Server
Здравствуйте, Merle, Вы писали:
M>Здравствуйте, transtexus, Вы писали:
T>>Все бы хорошо, но нужно именно локальное хранилище. SQLServer не очень сюда вписывается. M>MSDE, вполне локальное хранилище...
А можно пару слов о том что за локальное хранилище этот MSDE и какую безопасность он использует ?
Здравствуйте, transtexus, Вы писали:
T>А можно пару слов о том что за локальное хранилище этот MSDE и какую безопасность он использует ?
Это Microsoft Database Engine, поставляется совершенно бесплатно вместе с офисом, с VS или здесь можно скачать http://www.asp.net/msde (около 30 мегов) [отдельное пасиба IT за ссылку]
Полноценный SQL сервер, с ограничением в 5 одновременных подключений (больше можно, но включаются искуственные тормоза) и размером в 2 гига на одну базу... Для локальной системы более чем достаточно.
При инсталяции занимает мало, со всеми вкусностями полноценного сервера..
Защита соответственно такая же как и у большого MSSQL'я, для твоих целей идеально подходят Application roles. Тоесть каждому приложению работающему с базой назначаются свои ограничения и права доступа, можешь всем приложениям кроме своего запретить работать с базой и они не будут... А можешь например селект им оставить, это уж как пожелаешь...
Здравствуйте, Merle, Вы писали:
M>Здравствуйте, transtexus, Вы писали:
T>>А можно пару слов о том что за локальное хранилище этот MSDE и какую безопасность он использует ?
M>Это Microsoft Database Engine, поставляется совершенно бесплатно вместе с офисом, с VS или здесь можно скачать http://www.asp.net/msde (около 30 мегов) [отдельное пасиба IT за ссылку] M>Полноценный SQL сервер, с ограничением в 5 одновременных подключений (больше можно, но включаются искуственные тормоза) и размером в 2 гига на одну базу... Для локальной системы более чем достаточно. M>При инсталяции занимает мало, со всеми вкусностями полноценного сервера..
M>Защита соответственно такая же как и у большого MSSQL'я, для твоих целей идеально подходят Application roles. Тоесть каждому приложению работающему с базой назначаются свои ограничения и права доступа, можешь всем приложениям кроме своего запретить работать с базой и они не будут... А можешь например селект им оставить, это уж как пожелаешь...
Супер. То что надо. Правда я никак не могу найти как у нее секурити управлять. Где задавать эти самые права для апликейшинов. И второй вопрос — как потом расспространять прилу со своей базой и со своими юзерами. И чтобы на установленной машине даже админ не мог залезть туда.
Спасибо
Здравствуйте, transtexus, Вы писали:
T>Супер. То что надо. Правда я никак не могу найти как у нее секурити управлять. Где задавать эти самые права для апликейшинов.
С MSDE не поставляются клиентские утилиты, но можно взять их от большого SQL'я.
T>И второй вопрос — как потом расспространять прилу со своей базой и со своими юзерами. И чтобы на установленной машине даже админ не мог залезть туда.
Устанавливаешь MSDE и восстанавливаешь свою базу из бакапа с ролями и прочими правами...
Здравствуйте, Merle, Вы писали:
M>Здравствуйте, transtexus, Вы писали:
T>>Супер. То что надо. Правда я никак не могу найти как у нее секурити управлять. Где задавать эти самые права для апликейшинов.
M>sp_addapprole
M>Establishing Application Security and Application Roles
M>С MSDE не поставляются клиентские утилиты, но можно взять их от большого SQL'я.
T>>И второй вопрос — как потом расспространять прилу со своей базой и со своими юзерами. И чтобы на установленной машине даже админ не мог залезть туда. M>Устанавливаешь MSDE и восстанавливаешь свою базу из бакапа с ролями и прочими правами...
M>Это Microsoft Database Engine, поставляется совершенно бесплатно вместе с офисом, с VS или здесь можно скачать http://www.asp.net/msde (около 30 мегов) [отдельное пасиба IT за ссылку]
Оказывается подрос маленький мальчик, счас он весит 68 мегов
Здравствуйте, Holms, Вы писали:
H>Оказывается подрос маленький мальчик, счас он весит 68 мегов
Засада! Тоесть Измена!!
Это все происки врагов, раньше там MSDE лежал, а теперь только третий сервиспак... Это он такой здоровый...