![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как лучше построить безопасность БД ? (Oracle)
ANB © (2005-05-25 16:05:00)Знаю несколько способов :
- Через гранты раздаем права. Тонкая настройка (выборка только части записей или сложные условия) - на клиенте. Хуже еще не видел, легко ломается, хотя можно усложнить взлом, например, шифруя пароль.
- Доступ только на вьюхи, изменения через хранимки - жутко неудобно каждый раз переправлять эти хранимки. И блокирутся возможность выполнять обычные DML.
- Доступ только на вьюхи, изменения через instead of триггера + хранимки для удобства - так еще не видел, соответственно прокомментировать не могу.
Все комментарии, ессно, имхо.
Кто еще с какими схемами защиты сталкивался и какую может посоветовать ?
Danilka (2005-05-25 17:10:00) [81][1] Sergey13 © (25.05.05 16:10)
Ну, например, какой-то юзер должен видеть только определенную группу клиентов в базе.
Danilka (2005-05-25 17:09:00) [82]Наша контора работает по третьему варианту. Довольно удобно.
ANB (2005-05-25 17:06:00) [83]
> evvcom © (25.05.05 16:57) [4]
- работал я с системой, которая была построена по такому принципу. Только автор очень не любил триггера (mutating-ов боялся), принципиально не делал каскадное удаление и вырубил все внешние ключи, так как решил сделать возможность ссылаться на несколько таблиц, а ссылочную целостность проверял в хранимках.
За несколько лет эксплуатации сопровождающие ПРОГРАММИСТЫ, не всегда знающие, а иногда и не имеющие возможность вызвать соответствующие ХП, такого наворотили прямыми DML в базе . . . Мусора было, хоть отбавляй.
evvcom (2005-05-25 16:57:00) [84]
> А прямые апдейты будут доступны, во первых - только программисту,
> во вторых - ими можно поломать базу.
Ах вот, что ты имел в виду! А зачем тогда давать юзеру выполнять прямые апдейты? Не надо! Пусть это и будет доступно только программисту и админу. А чтобы не поломать базу, используй констрэйнты и тригера.
ANB (2005-05-25 16:39:00) [85]
> Блокируется DML?
- есно. Если стоит защита с изменениями через хранимки, а нужно будет выполнить изменение в базе не из клиента, а ручками, то нужно и юзать тогда эти процедуры. А прямые апдейты будут доступны, во первых - только программисту, во вторых - ими можно поломать базу.
evvcom (2005-05-25 16:21:00) [86]
> - Доступ только на вьюхи, изменения через хранимки - жутко
> неудобно каждый раз переправлять эти хранимки. И блокирутся
> возможность выполнять обычные DML.
Я делаю и чтение, и запись через хранимки. Неудобства не испытывал пока. Блокируется DML? Или все же DDL? А зачем DDL юзеру?
Sergey13 (2005-05-25 16:10:00) [87]>Как лучше построить безопасность БД ?
Безопасность от чего?