русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Управление доступом к данным


Дата добавления: 2015-07-09; просмотров: 534; Нарушение авторских прав


Система MySQL может содержать много пользователей. Пользователь root из соображений безопасности должен использоваться только для административных целей. Каждый пользователь, которому необходимо работать в системе, должен получить учетную запись и пароль.

Система привилегий MySQL идентифицирует пользователя по имени и сетевому адресу, с которого осуществляется подключение. При поступлении каждого запроса сервер MySQL проверяет, достаточно ли у пользователя привилегий для его выполнения. Например, при считывании строк из таблицы или удалении таблиц из БД сервер в первом случае проверяет, имеется ли у пользователя для этой таблицы привилегия SELECT, а во втором – имеется ли у него для этой базы привилегия DROP.

При определении прав пользователей сервер использует данные таблиц user, db и host из БД mysql. Каждая из этих таблиц включает в себя поля контекста и привилегий.

Поля контекста определяют область действия каждой из записей в таблицах, т. е. контекст, к которому имеет отношение та или иная запись, например, БД или отдельная таблица, для которой устанавливается привилегия.

Поля привилегий определяют доступные действия над данными, заданными контекстом.


1.2 Создание пользователей и задание им прав

Создание (добавление) и удаление учетных записей пользователей производится командой CREATE USER. Синтаксис команды CREATE USER следующий:

CREATE USER <имя пользователя> [IDENTIFIED BY <пароль>];

Удаление учетной записи пользователя производится с помощью команды DROP USER:

DROP USER <имя пользователя>;

Создание (добавление) и удаление учетных записей пользователей, а также назначение им привилегий осуществляется командами GRANT и REVOKE соответственно.

 

Основные привилегии СУБД MySQL

Название привилегии Допустимое действие
SELECT Считывание данных из таблиц
INSERT Вставка данных в таблицы
UPDATE Изменение записей в таблицах
DELETE Удаление записей из таблиц
INDEX Создание или уничтожение индексов
ALTER Модификация структуры таблиц
CREATE Создание таблиц и баз данных
GRANT Предоставление другим пользователям привилегий, которые имеет пользователь
DROP FILE Удаление баз данных или таблиц Чтение и запись файлов на сервере с помощью команд LOAD INFILE и SELECT OUTFILE

Синтаксис команд GRANT и REVOKE:



GRANT <тип привилегии> [(<столбцы>)] ОN <таблица>TO <имя пользователя> [IDENTIFIED BY <пароль>];REVOKE <тип привилегии> [(<столбцы>)] ON <таблица> FROM <имя пользователя>;

Название таблицы при назначении привилегий пользователю может задаваться в формате <название базы данных>.<таблица>. Если указать в качестве названия БД или таблицы символ *, то это будет означать, что привилегия относится ко всем БД или таблицам.

Имена новых пользователей можно добавить, применяя команду GRANT. Учетная запись пользователя admin с паролем somepass, имеющего полный набор привилегий, с правом локального подключения к серверу создается командой:GRANT ALL PRIVILEGES ON *.* TO admin@localhost IDENTIFIED BY 'somepass';Учетная запись пользователя user с паролем userpass, имеющего привилегии выборки, модификации и вставки данных во всех БД, с правом локального подключения к серверу создается командой:mysql> GRANT SELECT, UPDATE, INSERT ON *.* TO user@localhost IDENTIFIED BY 'userpass';

Чтобы обновить настройки привилегий сервера без перезагрузки применяется команда:

FLUSH PRIVILEGES;

Для проверки работы системы привилегий необходимо подключиться к СУБД под именем созданного пользователя:

c:\>mysql –u admin –p

Параметр –p означает необходимость ввода пароля при подключении к серверу.



<== предыдущая лекция | следующая лекция ==>
Описание команд и рекомендации к выполнению работы | Копирование и восстановление БД


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.065 сек.