Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Безпека баз даних і привілею




При зберіганні інформації в СУБД однією з основних задач залишається забезпечення безпеки даних. В мові SQL використовуються наступні основні принципи захисту даних:

• в БД дійовими особами є користувачі. Якщо з даними відбувається яка-небудь маніпуляція, то вона відбувається від імені конкретного користувача. СУБД може відмовитися виконати запрошувані дії залежно від того, який користувач запрошує цю дію.

• об'єкти БД є тими елементами, чий захист може здійснюватися за допомогою SQL. Звичайно забезпечується не тільки захист таблиць і уявлень, але і інших об'єктів БД. Система дозволяє одним користувачам здійснювати дії над одними об'єктами і забороняє це над іншими.

• в SQL використовується система привілеїв, тобто прав користувача на проведення тих або інших дій над певним об'єктом бази даних.

Взагалі кажучи, адміністратор БД сам створює користувачів і дає їм привілеї, але. з другого боку, користувачі, які створюють таблиці, самі мають права на управління цими таблицями. Існує декілька типів привілеїв, відповідних цілому ряду типів операцій. В SQL привілеї даються і відміняються двома командами SQL - GRANT (допуск) і REVOKE (відміна).

Кожний користувач в середовищі SQL має спеціальне ідентифікаційне ім'я або номер (ID) доступу. Команда, послана в БД, асоціюється з визначеним користувачем, тобто спеціальним ідентифікатором доступу. Оскільки це відноситься до SQL БД..ID дозволи - це ім'я користувача, і SQL може використати спеціальне ключове слово USER, яке посилається до ідентифікатора доступу, пов'язаного з поточною командою. Команда інтерпретується і дозволяється (або забороняється) на основі інформації, пов'язаної з ідентифікатором доступу користувача, що подав команду.

В системах з великою кількістю користувачів, існує спеціальна процедура входу в систему, яку користувач повинен обов'язково виконати для отримання доступу. Ця процедура визначає, який саме ID доступу буде пов'язаний з поточним користувачем. Звичайно кожна людина, що використовує БД. має свій власний ID доступу і при реєстрації перетворюється на дійсного користувача. Проте достатньо часте користувачі, що мають багато задач, можуть реєструватися під різними ID доступу, або навпаки - один ID доступу може використовуватися декількома користувачами. З погляду SQL немає ніякої різниці між цими двома випадками - він сприймає користувача просто як його ID доступу.

SQL БД може використати власну процедуру входу в систему або може дозволити іншій програмі (наприклад, операційній системі комп'ютера) обробляти файл реєстрації одержувати ID доступу. Проте, яким би способом СУБД не скористалася, в жодному разі SQL буде мати ГО доступу для того, щоб зв'язати його з діями користувача, для якого буде мати значення ключове слово USER

Види привілей.

Кожний користувач в SQL БД має набір привілеїв. Ці привілеї можуть змінюватися з часом - нові додаватися, старі віддалятися. Стандартні SQL привілеї, визначені ANSI, - це привілеї об'єкту. Це означає, що користувач має привілей для виконання даної команди тільки на певному об'єкті в БД. Привілеї об'єкту зв'язані одночасно і з користувачами і з таблицями, тобто привілей дається певному користувачу у вказаній базовій таблиці або уявленні. При цьому не варто забувати, що користувач, що створив таблицю будь-якого вигляду, є її власником. Це у свою чергу означає, що такий користувач має всі привілеї в цій таблиці і може передавати привілеї іншим користувачам для цієї таблиці.

Привілеї, які можна призначити користувачу, наступні:

  1. • SELECT - користувач з цим привілеєм може виконувати запити до таблиці:
  2. • INSERT - користувач з цим привілеєм може виконувати вставку записів, тобто команду INSERT, в таблиці:
  3. • UPDATE - користувач з цим привілеєм може виконувати коректування даних, тобто команду UPDATE, до даної таблиці.
  4. • DELETE - користувач з цим привілеєм може виконувати команду DELETE в таблиці:
  5. • REFERENCES - з цим привілеєм користувач має можливість визначити зовнішній ключ, який використовує один або більш стовпців даної таблиці, як батьківський ключ:
  6. • INDEX - дає право користувачу створювати індекс в таблиці:
  7. • SYNONYM - користувач, володіючим цим привілеєм, має право створювати синонім для об'єкту:
  8. • ALTER - дає право користувачу виконувати команду ALTER TABLE в даній таблиці

 

Поделиться:





Читайте также:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...