Практическое руководство. Доступ к серверу SQL Server с использованием предварительно определенных учетных данных
Обновлен: Ноябрь 2007
Надежный способ подключения к серверу SQL Server заключается в передаче имени пользователя и пароля в строке подключения. Можно использовать предварительно определенные имя пользователя и пароль. Рекомендуется хранить предварительно определенные имя пользователя и пароль на сервере как часть раздела конфигурации connectionStrings и затем использовать защищенную конфигурацию для шифрования содержимого строки подключения. Дополнительные сведения см. в разделе Общие сведения о защищенной конфигурации. Также рекомендуется запретить доступ к файлу Web.config, используя разрешения файловой системы NTFS.
Примечание о безопасности. |
---|
Не следует жестко кодировать учетные данные в виде строк в программах приложения. Любой, кто сможет получить доступ к закодированному файлу, сможет получить учетные данные, даже если код скомпилирован. |
Примечание о безопасности. |
---|
Предварительно определенному имени пользователя следует всегда предоставлять минимальные права доступа к ресурсу. Не следует использовать имя пользователя «sa» и другие имена пользователей на уровне администратора. Всегда используйте надежные пароли. |
Сохранение учетных данных в файле Web.config
В файле Web.config file создайте новый ключ в элементе add key in the connectionStrings. Элемент connectionStrings должен быть потомком элемента configuration. Дополнительные сведения см. в разделе Схема разделов конфигурации.
В следующем примере показан ключ add, содержащий имя пользователя и пароль:
<configuration> <connectionStrings> <add name="NorthwindConnection" connectionString="Data Source=localhost; Initial Catalog=Northwind; User Id=ApplicationUserID; Password=#P%19!ef2" /> </connectionStrings> </configuration>
Выполните шифрование строки подключения с использованием защищенной конфигурации, как показано в разделе Пошаговое руководство. Шифрование информации конфигурации с помощью функции защищенной конфигурации.
В приложении следует прочитать учетные данные из статического свойства ConnectionStrings класса ConfigurationManager.
В следующем примере показано, как считывать учетные данные во время выполнения и объединять их в строку подключения:
Dim settings As ConnectionStringSettings settings = System.Configuration.ConfigurationManager.ConnectionStrings("NorthwindConnection") Dim connectionString As String = settings.ConnectionString
ConnectionStringSettings settings; settings = System.Configuration.ConfigurationManager.ConnectionStrings["NorthwindConnection"]; string connectionString = settings.ConnectionString;
См. также
Основные понятия
Доступ к серверу SQL Server из веб-приложения
Безопасный доступ к данным (ADO.NET)