Разделы презентаций


Заняття 12. Керування правами доступу

Содержание

Категорії користувачів бази даних адміністратор БДвласник об’єктів БДкористувач, який має право надавати повноваженнякористувач, який не має права надавати повноваженнярядові користувачі

Слайды и текст этой презентации

Слайд 1Заняття 12. Керування правами доступу

Заняття 12. Керування правами доступу

Слайд 2Категорії користувачів бази даних
адміністратор БД
власник об’єктів БД
користувач, який має

право надавати повноваження
користувач, який не має права надавати повноваження
рядові користувачі

Категорії користувачів бази даних адміністратор БДвласник об’єктів БДкористувач, який має право надавати повноваженнякористувач, який не має права

Слайд 3Адміністратор бази даних
При інсталяції СУБД необхідно ввести реєстраційне ім’я (user)

або обліковий запис користувача (login) та пароль (password). Таким чином

ви автоматично стаєте адміністратором бази даних, тобто користувачем з повним об’ємом повноважень.
Якщо адміністратору необхідно виконати деяку роботу, для якої не потрібні повноваження, то йому краще увійти у систему під іменем користувача з мінімальними повноваженнями, які дозволяють вирішити цю задачу.

Адміністратор бази данихПри інсталяції СУБД необхідно ввести реєстраційне ім’я (user) або обліковий запис користувача (login) та пароль

Слайд 4Повноваження адміністратора бази даних
має усі права на будь-які дії з

базою даних;
несе велику відповідальність за порушення правил роботи з

базою даних та за зіпсуті дані;
створює інших користувачів бази даних, визначаючи для них імена і права (може створити ще одного адміністратора);
має повноваження надати та анулювати права доступу для інших користувачів.

Повноваження адміністратора бази данихмає усі права на будь-які дії з базою даних; несе велику відповідальність за порушення

Слайд 5Власник об’єкта БД
Будь-який користувач, який створив деякий об’єкт бази даних

(таблицю чи віртуальну таблицю), стає власником (owner) цього об’єкта.
Це користувач

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

Власник об’єкта БДБудь-який користувач, який створив деякий об’єкт бази даних (таблицю чи віртуальну таблицю), стає власником (owner)

Слайд 6Інші користувачі (PUBLIC)
Користувачі, крім адміністраторів та власників, називаються публікою (public):
користувач,

який має право надавати повноваження;
користувач, який не має права надавати

повноваження;
рядові користувачі.
Якщо уповноважений користувач надає права доступу типу PUBLIC, то їх отримують усі користувачі бази даних.

Інші користувачі (PUBLIC)Користувачі, крім адміністраторів та власників, називаються публікою (public):користувач, який має право надавати повноваження;користувач, який не

Слайд 7Створення, перейменування і видалення користувачів
CREATE USER [,

] ...

Специфікація користувача:
[IDENTIFIED BY [PASSWORD] 'password']

RENAME

USER <старий логін користувача> TO <новий логін користувача>
[, <старий логін користувача> TO <новий логін користувача>] ...

DROP USER <логін користувача> [, <логін користувача>] ...

Створення, перейменування і видалення користувачів CREATE USER [, ] ...Специфікація користувача: [IDENTIFIED BY [PASSWORD] 'password']RENAME USER TO

Слайд 8Рекурсія надання прав доступу
Звичайний користувач не має прав доти,

поки вони йому не нададуться спеціально тим користувачем, у якого

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

Рекурсія надання прав доступу Звичайний користувач не має прав доти, поки вони йому не нададуться спеціально тим

Слайд 9Інструкція надання прав доступу
GRANT
[()]
[,

[()]...
ON [

користувача>] ...
[REQUIRE {NONE | [[AND] ] ...}]
[WITH <опція> ...]

Інструкція надання прав доступу GRANT [()][, [()]...ON [

Слайд 10Інструкція надання прав доступу. Список прав
Права у списку прав

інструкції GRANT розділяються комами.
Якщо необхідно надати усі права, то

вказують ключові слова ALL PRIVILEGES (усі повноваження).

Інструкція надання прав доступу. Список прав Права у списку прав інструкції GRANT розділяються комами. Якщо необхідно надати

Слайд 11SELECT – право перегляду;
DELETE – право видалення записів;
INSERT[()] –

право додавання нових записів з вставкою значень для вказаних стовпців;
UPDATE[(

стовпців>)] – право зміни значень вказаних стовпців; якщо імена стовпців не вказані, то маються на увазі усі стовпці;
USAGE – право на домени, набори символів, співставлення і трансляції;
UNDER – право на структуровані типи даних;
CREATE – право на створення об'єктів;
EXECUTE – право на виконання зовнішньої програми.

SELECT – право перегляду;DELETE – право видалення записів;INSERT[()] – право додавання нових записів з вставкою значень для

Слайд 12Інструкція надання прав доступу. Об’єкти
TABLE
FUNCTION
PROCEDURE
USER
VIEW

Інструкція надання прав доступу. Об’єкти TABLEFUNCTIONPROCEDUREUSERVIEW

Слайд 13Інструкція надання прав доступу. Cписок користувачів
Складається з імен користувачів,

розділеними комами.
Замість списку можна вказати ключове слово '@'localhost (публіка). У

цьому випадку права, вказані в інструкції GRANT, отримують усі користувачі БД.
Інструкція надання прав доступу. Cписок користувачів Складається з імен користувачів, розділеними комами.Замість списку можна вказати ключове слово

Слайд 14Приклад 1. Створення користувача та надання йому прав перегляду бази

даних
CREATE USER 'someuser'@'localhost' IDENTIFIED BY 'somepass';
GRANT SELECT ON mydb.* TO

'someuser'@'localhost';
Приклад 1. Створення користувача та надання йому прав перегляду бази данихCREATE USER 'someuser'@'localhost' IDENTIFIED BY 'somepass';GRANT SELECT

Слайд 15Повноваження надавати права
На практиці права доступу може надавати:
адміністратор бази даних;
власник

об’єктів бази даних (при цьому власники надають права лише на

об’єкти, якими володіють);
Треті особи, які отримали права доступу від адміністратора і/або власника, вже не можуть надавати права. Таке обмеження дозволяє адміністратору і власникам зберегти контроль над базою даних.
Однак, бувають ситуації, коли необхідно делегувати повноваження надавати свої права іншим користувачам (наприклад, помічникам або заміні під час відпустки).
У цьому випадку в інструкції GRANT використовується фраза WITH GRANT OPTION.

Повноваження надавати праваНа практиці права доступу може надавати:адміністратор бази даних;власник об’єктів бази даних (при цьому власники надають

Слайд 16Відміна прав доступу
REVOKE
[()]
[, [()]...
ON

[

ALL PRIVILEGES, GRANT OPTION
FROM <логін користувача> [, <логін користувача>] ...
Відміна прав доступуREVOKE [()][, [()]...ON [

Слайд 17Інше використання інструкції REVOKE (оптимізація SQL-коду)
Пов’язане не з прямою задачею

відміни повноважень, а навпаки – надання повноважень.
Як правило, надання

прав багатьом користувачам на велику кількість об’єктів пов’язане з великим об’ємами SQL-коду.
Комбінуючи оператори GRANT та REVOKE, надаючи спочатку широкі повноваження для багатьох користувачів, а потім обмежуючи їх для деяких користувачів, можна скоротити загальний об’єм SQL-коду.

Інше використання інструкції REVOKE (оптимізація SQL-коду)Пов’язане не з прямою задачею відміни повноважень, а навпаки – надання повноважень.

Слайд 18Приклад 2. Інструкції керування доступом
Користувачі User_1 і User_2 мають права

переглядати, додавати і видаляти записи таблиці Table_1(Id_Col,Col1,Col2,Col3,Col4). Також вони можуть

змінювати значення стовпців, крім стовпця Id_Col. Усі інші користувачі можуть лише переглядати записи.
Такий розподіл прав можна виконати двома способами.

Приклад 2. Інструкції керування доступомКористувачі User_1 і User_2 мають права переглядати, додавати і видаляти записи таблиці Table_1(Id_Col,Col1,Col2,Col3,Col4).

Слайд 19Приклад 2. Рішення 1
Надати відповідні права на усі операції. У

випадку надання прав на зміну, треба перелічити усі стовпці, дозволені

для цього.
GRANT SELECT ON Table_1 TO ''@'localhost';
GRANT INSERT, DELETE ON Table_1 TO 'User_1'@'localhost', 'User_2'@'localhost';
GRANT UPDATE (Col1,Col2,Col3,Col4) ON Table_1 TO 'User_1'@'localhost', 'User_2'@'localhost';

Приклад 2. Рішення 1Надати відповідні права на усі операції. У випадку надання прав на зміну, треба перелічити

Слайд 20Приклад 2. Рішення 2
Спочатку надати право оновлювати усі стовпці, а

потім відізвати право оновлювати заборонений стовпець :
GRANT SELECT ON Table_1

TO ''@'localhost';
GRANT INSERT, UPDATE, DELETE ON Table_1 TO 'User_1'@'localhost', 'User_2'@'localhost';
REVOKE UPDATE (Id_Col) ON Table_1 TO 'User_1'@'localhost', 'User_2'@'localhost';


Приклад 2. Рішення 2Спочатку надати право оновлювати усі стовпці, а потім відізвати право оновлювати заборонений стовпець :GRANT

Слайд 21Перегляд стану бази даних
Для перегляду об'єктів бази даних, прав і

т.д. існує команда SHOW.
Основні типи команди SHOW:
SHOW CREATE DATABASE

бази даних>
SHOW CREATE FUNCTION <ім'я функції>
SHOW CREATE PROCEDURE <ім'я процедури>
SHOW CREATE TABLE <ім'я табл>
SHOW DATABASES []
SHOW GRANTS FOR <логін користувача>
SHOW INDEX FROM <ім'я табл> [FROM <ім'я бази даних>]
SHOW PRIVILEGES
SHOW TRIGGERS [FROM <ім'я бази даних>] []
Перегляд стану бази данихДля перегляду об'єктів бази даних, прав і т.д. існує команда SHOW.Основні типи команди SHOW:SHOW

Слайд 22Завдання 1. Надання прав на використання власної бази даних
Створити 3

користувачів для сервера, одному з яких встановити пароль.
1 користувачу (із

паролем) надати права адміністратора для власної бази даних.
1 користувачу надати права перегляду всіх таблиць бази даних та можливості додання та модифікації даних для 1 таблиці.
1 користувачу надати права перегляду усієї бази даних та можливість створення об'єктів в цій базі (збережених процедур, віртуальних таблиць і т.д.).
Останнім 2-м користувачам заборонити перегляд 1 із таблиць бази даних.
Завдання 1. Надання прав на використання власної бази данихСтворити 3 користувачів для сервера, одному з яких встановити

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика