Security Considerations for the Microsoft Drivers for PHP for SQL Server (Рекомендации по безопасности, касающиеся драйверов Майкрософт для PHP для SQL Server)
В этом разделе описываются вопросы безопасности, относящиеся к разработке, развертыванию и запуску приложений, использующих драйверы Майкрософт для PHP для SQL Server. Более подробные сведения о безопасности SQL Server см. в статье Общие сведения о безопасности SQL Server.
Подключение с помощью проверки подлинности Windows
Для подключения к SQL Server следует по возможности использовать проверку подлинности Windows по следующим причинам.
Во время проверки подлинности по сети не передаются никакие учетные данные. Имена пользователей и пароли не внедряются в строку подключения базы данных. Поэтому злоумышленники не смогут получить учетные данные путем мониторинга сети или просмотра строк подключения в файлах конфигурации.
На пользователей распространяется централизованное управление учетными записями. Применяются политики безопасности, касающиеся, например, сроков действия паролей, минимальной длины паролей и блокировки учетных записей после нескольких неудачных запросов на вход.
Сведения о том, как подключиться к серверу с использованием проверки подлинности Windows, см. в статье Практическое руководство. Подключение с использованием проверки подлинности Windows.
При подключении с использованием проверки подлинности Windows рекомендуется настроить среду таким образом, чтобы SQL Server мог использовать протокол проверки подлинности Kerberos. Дополнительные сведения см. в статье Подтверждение использования проверки подлинности Kerberos при создании удаленного подключения к экземпляру SQL Server 2005 или SQL Server и проверка подлинности по протоколу Kerberos.
Использование зашифрованных соединений при передаче конфиденциальных данных
Зашифрованные соединения следует использовать всякий раз, когда конфиденциальные данные отправляются в SQL Server или извлекаются оттуда. Дополнительные сведения о том, как включить зашифрованные соединения, см. в статье Практическое руководство. Включение шифрования соединений в ядре СУБД (диспетчер конфигурации SQL Server). Чтобы установить безопасное соединение с драйверами Майкрософт для PHP для SQL Server, используйте атрибут подключения Encrypt при подключении к серверу. Дополнительные сведения об атрибутах соединения см. в статье Connection Options.
Использование параметризованных запросов
Используйте параметризованные запросы для снижения риска атак путем внедрения кода SQL. Примеры выполнения параметризованных запросов см. в статье How to: Perform Parameterized Queries.
Дополнительные сведения об атаках путем внедрения кода SQL и соответствующих аспектах безопасности см. в статье Атака путем внедрения кода SQL.
Запрет на получения сведений о сервере или строке подключения от конечных пользователей
Проектируйте приложения таким образом, чтобы конечные пользователи не могли отправить в приложение сведения о сервере или строке подключения. Обеспечение строгого контроля над сведениями о сервере и строках подключения сокращает контактную зону для вредоносных действий.
Включение WarningsAsErrors во время разработки приложений
Разрабатывайте приложения, задав для параметра WarningsAsErrors значение true , чтобы выдаваемые драйвером предупреждения обрабатывались как ошибки. Это позволит изучить предупреждения перед развертыванием приложения. Дополнительные сведения см. в статье Handling Errors and Warnings.
Защита журналов для развернутого приложения
Для развернутых приложений убедитесь, что журналы записываются в безопасное расположение либо что ведение журналов отключено. Это помогает предотвратить доступ конечных пользователей к данным, записанным в файл журнала. Дополнительные сведения см. в статье Logging Activity.
См. также
Руководство по программированию драйверов Microsoft для PHP для SQL Server