Konstantine |
Отправлено: 27.09.2004, 11:34 |
|
Мастер участка
Группа: Модератор
Сообщений: 545
|
Как закрыть базу от доступа к ней в т.ч. и из оболочек MS SQL? база должна находиться на том компе, где и использующая её прога. и чтоб юзеры не могли даже считать содержимое!
|
|
AVC |
Отправлено: 27.09.2004, 12:19 |
|
Ветеран
Группа: Модератор
Сообщений: 1583
|
Неужели у MS Sql нет разграничения доступа по правам пользователя? Или вопрос cтоиn как-то иначе? |
|
Konstantine |
Отправлено: 27.09.2004, 13:09 |
|
Мастер участка
Группа: Модератор
Сообщений: 545
|
Какие-то есть, но Я не разобрался как:
- дать пользователю пароль
- поставить пароль на открытие базы из консоли
|
|
AVC |
Отправлено: 27.09.2004, 14:05 |
|
Ветеран
Группа: Модератор
Сообщений: 1583
|
По собственному опыту могу посоветовать разобраться с сервером и работать через него. Конкретное воплощение команд может подскажет кто-то, работающий с MS SQL (например Gedeon). |
|
olegenty |
Отправлено: 27.09.2004, 15:55 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
а вообще — это нереально, да и не правильно.
пользователь = администратор БД??? а не слабо???
отсюда, минимум двое будут пароль знать. это админ и пользователь. при этом админ — админский, а пользователь — пользовательский (лоховской), и пользователь всё равно сможет лезть в базу отовсюду, откуда ему не лень (про админа я вообще молчу — может он из дома администрнуть хочет).
MSSQL — не "плоская" СУБД, и такой жесткач вообще для него не норма.
кроме того, пользователь sa ВСЕГА И ПО ЛБОМУ БУДЕТ ИМЕТЬ ДОСТУП. рискни удалить его из пользователей БД, и поимеешь кучу граблей — системные хранимые процедуры MSSQL, хранящиеся в БД master и tempdb в основном запускаются от его имени... (самим MSSQL)...
|
|
AVC |
Отправлено: 27.09.2004, 16:21 |
|
Ветеран
Группа: Модератор
Сообщений: 1583
|
QUOTE |
кроме того, пользователь sa ВСЕГА И ПО ЛБОМУ БУДЕТ ИМЕТЬ ДОСТУП. рискни удалить его из пользователей БД, и поимеешь кучу граблей — системные хранимые процедуры MSSQL, хранящиеся в БД master и tempdb в основном запускаются от его имени
|
Обычная (по крайне мере для меня) практика состоит в следующем: разработка базы (таблицы, представления, процедуры и т.д.) ведется в схеме абстрактного пользователя с правами админа. Все запросы используют либо синонимы, либо явно указывают эту схему. При передачи в эксплуатацию доступ этому пользователю запрещается и раздаются права на его схему другим пользователям. |
|
Konstantine |
Отправлено: 27.09.2004, 16:43 |
|
Мастер участка
Группа: Модератор
Сообщений: 545
|
QUOTE (olegenty @ 27/09/2004, 16:57) | а вообще — это нереально, да и не правильно.
|
не, ну пользователю пароль можно поставить и ему не сказать... но там есть типа доступ по учётной записи... как это отключить? и ещё есть в MSSQL server консоль (менеджер вроде какой-то) и вот когда я захожу в него, то могу лазить везде что хочу удаляю-записываю, а у меня даже пароль не спрашивает...
в общем мне нада:
1) чтоб стояла на компе база и моя прога.
2) чтоб токо админ (типа Я) и прога могли юзать данные в базе
3) никто другой (в т.ч. и пользователь за компом) не мог заглянуть в базу.
Логины-Пароли — это понятно, но как их поставить, чтоб всё было закрыто (см. п.3)?
|
|
olegenty |
Отправлено: 28.09.2004, 06:27 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
ну почитай о секьюрности MSSQL. то, что ты Enterprise Manager'ом что-то можешь говорит лишь о том, либо знаешь пароль, либо по умолчанию оставляешь Windows Authentification, в то время как в твоём случае это не катит.
|
|
Konstantine |
Отправлено: 28.09.2004, 08:14 |
|
Мастер участка
Группа: Модератор
Сообщений: 545
|
QUOTE (olegenty @ 28/09/2004, 07:29) | ...либо знаешь пароль, либо по умолчанию оставляешь Windows Authentification... |
ну пароль если б Я вводил, то Я бы знал это...
а Windows Authentification — это наверно оно... а как отключить её?
|
|
Gedeon |
Отправлено: 28.09.2004, 18:48 |
|
Ветеран
Группа: Модератор
Сообщений: 1742
|
Да Enterprise Manager пускает во все т.к. стоит тип Windows Authentification. Убрать такой тип авторизации нельзя, можно удалить из security\logins учетную запись админа и встроенную администраторов компа, оставить юзера. В этом случае ЕМ не пустит лазить по серверу. Где-то есть в SQL Server фишка с помощью которой вообще можна доступ давать именно программе, а не пользователю, не помню сейчас где про это читал, пороюсь, если найду напишу.
|
|
Konstantine |
Отправлено: 29.09.2004, 09:27 |
|
Мастер участка
Группа: Модератор
Сообщений: 545
|
Я отключил виндуз аутент. у учетки админа и пассворд свой — всё вроде ок стало... так как хотел, и с менеджера тоже пассворд просит всё ОК, спасибо всем.
|
|