Программирование >>  Программный интерфейс приложений 

1 ... 164 165 166 [ 167 ] 168 169 170 ... 264


скольку позволяет минимизировать число команд, запущенных пользователем root):

% chmod -R go-rwx

% find . -follow -typ d -print ) xargs chmod go-rwx

4. Теперь права владения и режим содержимого каталога данных присвоены пользователю mysqladm. Осталось убедиться, что сервер отныне будет запускаться в качестве пользователя mysqladm, поскольку только этот пользователь имеет доступ к каталогу данных. Процедура запуска сервера в качестве нового пользователя (не root) детально описана в главе 11 , Общее администрирование MySQL .

После выполнения всех описанных выще действий остается лишь убедиться в правильности установки полномочий для доступа к каталогу данных.

% Is -1

total 10148

drwxrwxr-x

drwxr-xr-x

drwx------

drwxrwxr-x drwxrwxr-x drwxrwxr-x drwx------

11 laysqladm mysqlgrp 1024 May 8 12:20 .

22 root wheel 512 May 8 13:31 ..

2 mysqladm mysqlgrp 512 Apr 16 15:57 menagerie

2 mysqladm mysqlgrp 512 Jan 25 20:43 mysql

7 mysqladm mysqlgrp 512 Aug 31 1998 sql-bench

2 mysqladm mysqlgrp 1536 May 6 06:11 test

2 mysqladm mysqlgrp 1024 May 8 18:43 tmp

Внешняя безопасность: защита сетевого доступа

Система безопасности MySQL достаточно гибка, поскольку позволяет настроить привилегии доступа пользователей множеством различных способов. Как правило, установка привилегий реализуется с помощью операторов GRANT и REVOKE, Которые изменяют таблицы разрешений, управляющие клиентским доступом. Некоторые администраторы, тем не менее, все еще используют старые версии MySQL, которые не поддерживают эти операторы (до версии MySQL 3,22.11). Иногда также администраторы замечают, что при установке с помощью операторов GRANT и REVOKE привилегии функционируют не так, как хотелось бы. В подобных ситуациях весьма полезным может оказаться знание таблиц разрешений MySQL и принципов использования их сервером для определения полномочий. Владеющий подобными знаниями администратор может добавлять, удалять или изменять привилегии пользователей посредством изменения собственно таблиц разрешений. Более того, исследование таблиц позволяет гораздо быстрей диагностировать проблемы, связанные с доступом.



Автор предполагает, что читатель уже ознакомился с материалом раздела Управление пользовательскими учетными записями главы И, Общее администрирование MySQL , и разобрался в принципах работы операторов GRANT и REVOKE. Их Применение - удобный способ установки пользовательских учетных записей MySQL и связанных с ними привилегий. Хотя эти операторы являют собой лищь оболочку. Реальные действия выполняются в таблицах разрешений сервера MySQL.

Структура и содержимое таблиц разрешений MySQL

Управление доступом к базам данных MySQL для клиентов, подключившихся к серверу через сеть, осуществляется с помощью содержимого таблиц разрещений. Эти таблицы входят в состав базы данных mysql и инициализируются в процессе инсталляции MySQL на компьютере (процесс инсталляции детально описывается в приложении А, Получение и инсталляция программного обеспечения ). В табл. 12.1 и 12.2 представлено краткое описание структур пяти таблиц разрешений: user, db, host, tables priv и columns priv.

Таблица 12.1. Структура таблиц разрешений user, db и host

Столбцы области доступа

user Host User

Password

Host

User

host Host Db

Столбцы привилегий бвзы данных/таблицы

Alter priv

Create priv

Delete priv

Drop priv

Index priv

Insert priv

References priv

Select priv

Update priv

Alter priv

Create priv

Delete priv

Drop priv

Index priv

Insert priv

References priv

Select priv

Update priv

Alter priv

Create priv

Delete priv

Drop priv

Index priv

Insert priv

References priv

Select priv

Update priv



Окончание табл. 12.1

Столбцы административных привилегий

File priv Grant priv Grant priv

Grant priv

Process priv

Reload priv

Shutdown priv

Таблица 12.2. Структура таблиц привилегий tables priv и colvunns priv

Столбцы области доступа

tables priv

columns priv

Host

Host

User

User

Table name

Table name

Column name

Столбец привилегий

Table priv

Column priv

Таблицы разрешений содержат следуюшую информацию.

user. Таблица user содержит список всех пользователей, которые могут подключаться к серверу, а также их пароли и все глобальные привилегии, если таковые применяются. Все указанные в этой таблице привилегии являются глобальными и применимы ко всем базам данных. Так, например, если активизировать в этой таблице привилегию DELETE, соответствуюший пользователь сможет удалить записи из любой таблицы. Следовательно, необходимо тщательно все обдумать, прежде чем присваивать такую привилегию.

db. Таблица db содержит список всех баз данных и пользователей, обладающих полномочиями на доступ к ним. Определенные в этой таблице привилегии применимы ко всем таблицам соответствующей базы данных.

host. Таблица host используется вместе с таблицей db и определяет привилегии доступа к базам данных определенного компью-



1 ... 164 165 166 [ 167 ] 168 169 170 ... 264

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика