SQL Server 2008: я должен использовать аутентификацию Windows или аутентификацию SQL Server? - PullRequest
5 голосов
/ 22 октября 2010

У меня есть внешний интерфейс MS-Access 2007. У меня будет несколько пользователей. Все они будут в домене сетевой компании. Нужно ли использовать проверку подлинности Windows или SQL Server для подключения к SQL Server 2008 через ODBC?

Ответы [ 5 ]

6 голосов
/ 22 октября 2010

Аутентификация Windows обеспечит более плавный процесс аутентификации, единый вход!

Из статьи ниже:

Недостатки аутентификации SQL Server

  • Если пользователь является пользователем домена Windows, у которого есть логин и пароль для Windows, он все равно должен предоставить другой логин и пароль (SQL Server) для подключения.Отслеживание нескольких имен и паролей является сложным для многих пользователей.Необходимость предоставлять учетные данные SQL Server при каждом подключении к базе данных может раздражать.
  • Аутентификация SQL Server не может использовать протокол безопасности Kerberos.
  • Windows предлагает дополнительные политики паролей, которые недоступны для SQLВход в систему на сервере.

Преимущества аутентификации SQL Server

  • Позволяет SQL Server поддерживать более старые приложения и приложения, предоставляемые третьими сторонами, которым требуется аутентификация SQL Server..
  • Позволяет SQL Server поддерживать среды со смешанными операционными системами, где все пользователи не проходят проверку подлинности в домене Windows.
  • Позволяет пользователям подключаться из неизвестных или ненадежных доменов.Например, приложение, в котором установленные клиенты подключаются с назначенными именами входа SQL Server для получения статуса своих заказов.
  • Позволяет SQL Server поддерживать веб-приложения, в которых пользователи создают свои собственные удостоверения.
  • Позволяет разработчикам программного обеспечения распространять свои приложения, используя сложную иерархию разрешений, основанную на известных предварительно заданных именах входа SQL Server.

Вот хорошая статья о плюсах / минусах для каждого.http://technet.microsoft.com/en-us/library/ms144284.aspx

2 голосов
/ 22 октября 2010

Если у вас есть домен и Active Directory, вы не должны даже думать о чем-то другом, кроме аутентификации Windows ... ни секунды!

2 голосов
/ 22 октября 2010

Дастин попал в хороший список плюсов / минусов. Я знаю, что никто не хочет принимать такое решение за вас, но на основе ваших критериев (несколько пользователей, все в области компании); Я не могу придумать ни одной причины использовать проверку подлинности SQL Server вместо проверки подлинности Windows. Он был разработан в основном для таких сценариев.

1 голос
/ 22 октября 2010

Поскольку у вас есть интерфейс рабочего стола, который подключается напрямую к базе данных ... ваш лучший вариант - использовать аутентификацию Windows. Имейте это в виду, что пользователь может обойти внешний интерфейс и получить доступ к базе данных напрямую. Вам нужно будет предоставить им минимальные необходимые разрешения для БД. Кроме того, вы захотите использовать группу безопасности AD вместо добавления каждого пользователя.

Проверка подлинности Sql лучше всего подходит для управления файлом конфигурации ... например, веб-приложением.

1 голос
/ 22 октября 2010

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

Я не уверен по вашему вопросу, намереваетесь ли вы передавать учетные данные каждого пользователя в SQL Server или планируетеиметь единый вход в систему с использованием проверки подлинности Windows или SQL Server.Если вы выберете более позднюю опцию, возможно, стоит использовать аутентификацию SQL Server, поскольку она ограничивает сетевые учетные записи.Если вы выберете прежнюю аутентификацию Windows, вероятно, она будет лучше для ваших пользователей, поскольку она обеспечивает единый вход.

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

...