, mysqi> GRANT INSERT, UPDATE ON web site.users TO webuser@localhost; mysql> GRANT INSERT ON web site.log TO webuser@localhost;
Пользователю adminuser нужны права INSERT, UPDATE и DELETE для таблицы users, права INSERT и UPDATE для таблицы news и права INSERT для таблицы log_tbl. Мы предоставим их с помощью следующих команд SQL:
mysql> GRANT INSERT, UPDATE, DELETE ON web site, users TO adminuser@localhost; mysql> GRANT INSERT, UPDATE ON web site, news TO admiriuser@localhost; mysql> GRANT INSERT ON web site.log_tbl TO adminuser@localhost;
Наконец, надо обеспечить перезагрузку MySQL таблиц с правами доступа:
mysql> FLUSH PRIVILEGES;
Теперь сервер MySQL должен быть защищен, а у читателя должно появиться представление о том, как создавать пользователей с определенными правами. Дополнительные сведения по данной проблеме можно найти в руководстве по MySQL или в разделе «Ресурсы и материалы для дальнейшего изучения» в конце данной главы.
Криптография
Криптография (от греч. kryptys и grapho) - это тайнопись, или шифрование. Шифрование сообщений имеет многовековую историю, по сложности простираясь от простых шифров подстановки, применявшихся в древнем Риме, до используемых в настоящее время систем с открытыми и закрытыми ключами и квантовой криптографии будущего. Задача криптографа - создать шифр настолько надежный, что прочесть сообщение сможет только тот, кому оно предназначено, и никто посторонний.
Следующие несколько страниц посвящены беглому обзору типов криптографических алгоритмов, применяемых сегодня в Интернете, а также кое-каким сведениям об их действии и областях возможного применения.
Однонаправленное шифрование
С помощью этой процедуры строка зашифровывается таким образом, что она не может быть расшифрована. Может показаться непонятным, где это может понадобиться, но на самом деле такой метод шифрования часто используется в мире компьютеров.
Алгоритмы, реализующие однонаправленное шифрование, часто называют алгоритмами хеширования (hashing algorithms). Это процедура, создающая уникальный «отпечаток» исходной строки. В РНР в качестве алгоритма хеширования чаще всего применяется Мы не станем вникать в описывающий его математический аппарат, а лишь отметим, что он принимает строку и возвращает ее уникальный 128-битовый отпечаток.
В настоящее время считается невозможным по этому отпечатку восстановить исходные данные, обратив кроме того, весьма мала вероятность того, что можно создать два набора входных данных с одинаковыми отпечатками. Это не делает системы полностью неуязвимыми, поскольку сохраняется вероятность взлома с помощью метода «грубой (полный перебор до совпадения входных и выходных данных). Продолжительность взлома с помощью грубой силы зависит от сложности данных, но для коротких паролей она невелика.