Инструкция пользователя и безопасность

Доступ пользователей и привилегии могут быть глобальным (т.е.распространяться на все базы данных на сервере), может быть для конкретной базы данных, конкретной таблицы, или конкретного столбца. В 5-й версии MySQL пользователи также могут быть ограничены в определенных функциях и процедурах.

В дополнения к стандартам по безопасности для инструкции SQL пользователи могут быть ограничены в использовании ресурсов, чтобы предотвратить потребление MySQL также и косвенные отказы от служения другим. Таким образом, можно ограничить количество подключений или максимальное время ресурсов для пользователей.

основная информация по поводу доступа пользователей и привилегий хранятся в виде набора обычных таблиц MyISAM, известный как грант, таблицы, которые находятся в MySQL базы данных на сервере. Таблицы являются:

  • user: глобальные привилегии
  • db: специфичные для базы данных привилегии
  • tables_priv: таблица особых привилегий
  • columns_priv: колонки особых привилегий

В некоторых других таблицах приведена тонкая настройка доступа пользователей и безопасности. Выполните SHOW TABLES FROM MySQL; чтобы получить список на сервере. Вы можете манипулировать данными этих таблиц непосредственно со стандартной отчетностью SQL, такими как INSERT, UPDATE, e DELETE, затем FLUSH PRIVILEGES инструкции для обновления кэша сервера. Тем не менее, рекомендуется использовать специализированную SQL инструкцию для управления пользователями и предоcтавлять право доступа.

AES_DECRYPT( )

Эта функция MySQL расшифровывает текст, который был зашифрован с помощью алгоритма AES с ключом длиной 128-бит , обращающего AES_ENCRYPT () функцию.

AES_ENCRYPT( )

Эта функция MySQL шифрует строку, используя алгоритм AES с 128-битным ключом. Он блокирует зашифрованную строку с паролем, данным в качестве второго аргумента.

CREATE USER

Эти инструкции MySQL довольно просты: они используются для создания пользователя, но не позволяют правам, предоставляемым с ним. Для этого вы должны использовать GRANT инструкции.

CURRENT_USER( )

Эта функция MySQL возвращает имя пользователя и хост, которые были даны пользователем для текущего соединения MySQL. Это не всегда может вернуть те же результаты как USER ().

DECODE( )

Эта функция MySQL расшифровывает данную строку, зашифрованную с заданным паролем. См. также ENCODE( )функции.

DES_DECRYPT( )

Эта функция MySQL расшифровывает текст, который был зашифрован с помощью тройного DES алгоритма с 128-битным ключом длиной, обращающего DES_ENCRYPT () функцию.

DES_ENCRYPT( )

Эта функция MySQL возвращает зашифрованный текст, используя алгоритм тройного DES с ключом длиной 128-бит.

Если пользователь не имеет привилегий на все, после того как вы отменили все привилегии пользователя, с REVOKE инструкциями Вы можете использовать эту инструкцию, которая затем удалит пользователя из MySQL полностью.

ENCODE( )

Эта функция MySQL шифрует заданную строку в двоичном формате и запирает его с паролем. Вы не должны использовать эту функцию для пароля колонки в таблице пользователей базы данных MySQL. Использовать PASSWORD( )вместо этого.

ENCRYPT( )

Эта функция MySQL возвращает зашифрованный текст с помощью языка C-language crypt функции.

GRANT

Это, вероятно, наиболее часто используемые SQL инструкции для создания пользователей и предоставления им привилегий в MySQL. В то время как часто используется для создания пользователей, это основная функция заключается, чтобы установить привилегии пользователя для базы данных системы, конкретных баз данных или отдельных таблиц.

MD5( )

Эта функция MySQL использует MD5 128-битную контрольную сумму для возврата 32-символьного хэш-значения строки из RFC 1321.

OLD_PASSWORD( )

Эта функция MySQL шифрует данную строку на основе метода шифрования паролей, использовавшегося до версии 4.1 MySQL. Результат не может быть расшифрован.

PASSWORD( )

Эта функция MySQL шифрует пароль, выданный в качестве аргумента. В результате не может быть расшифрован. Эта функция MySQL используется для шифрования данных в колонке user таблицы в базе данных MySQL.

RENAME USER

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

RESET

Используйте эти инструкции MySQL для сброса определенных настроек сервера и лог-файлов.

RESET

Используйте эти инструкции MySQL для сброса определенных настроек сервера и лог-файлов.

REVOKE

This MySQL statement is used to easily revoke speciified privileges from a user without necessarily revoking all privileges or having to drop a user and create the user again with less privileges.

SESSION_USER( )

Эта функция MySQL возвращает имя пользователя и имя хоста для текущего соединения MySQL. Функция не принимает аргументов. Это синонимом SYSTEM_USER () и USER( ).

SET PASSWORD

Эти инструкции MySQL изменяют пароль для учетной записи пользователя.

SHA( )

Эти нструкциии MySQL возвращают Secure Hash Algorithm (SHA) 160-битную контрольную сумму для данной строки. Результаты - строка, состоящая из 40 шестнадцатеричных цифр.

SHOW GRANTS

Эти инструкции MySQL отображают GRANT инструкции для данного пользователя.

SHOW PRIVILEGES

Эти инструкции MySQL предоставляют список привилегий, доступных, наряду с контекстом каждой из них (например, администрирование сервера) и описание. Выход не основан на пользователя. Напротив, это полный список привилегий, которые могут быть возложены на пользователя.

SYSTEM_USER( )

Эта функция MySQL возвращает имя пользователя и имя хоста для текущего соединения MySQL. Функция не принимает аргументов. Это синонимом SESSION_USER () и пользовательские ().

USER( )

Эта функция MySQL возвращает имя пользователя и имя хоста для текущего соединения MySQL. Функция не принимает аргументов. Это синонимом SESSION_USER () и SYSTEM_USER ().