При развертывании SQL Server Express с бизнес-приложением какого пользователя следует использовать для службы агента SQL Server? - PullRequest
0 голосов
/ 14 февраля 2011

Мы внедряем SQL Server Express с нашим приложением .NET, т. Е. Наш собственный экземпляр SQL Server Express автоматически устанавливается во время процесса установки нашего приложения.

Во время автоматической установки можно указать учетную запись пользователя, которую следует использовать для агента SQL Server (с помощью параметра командной строки /AGTSVCACCOUNT, который не является обязательным). Однако, похоже, что все варианты либо (а) невозможны, либо (б) не рекомендованы Microsoft:

  • NT AUTHORITY\NetworkService и NT AUTHORITY\LocalService: эти параметры не поддерживаются на контроллерах домена . (В терминальных серверных средах наше бизнес-приложение иногда устанавливается на контроллеры домена. Я знаю, что это не лучшая практика, но иногда именно это делают наши клиенты.)

  • NT AUTHORITY\System: Microsoft говорит : «Параметр« Учетная запись локальной системы »предоставляется только для обратной совместимости. У учетной записи локальной системы есть разрешения, которые не требуются для агента SQL Server. Избегайте запуска SQL Server». Агент как учетная запись локальной системы. "

  • Автоматическое создание нового локального пользователя Windows или домена: я не думаю, что это выполнимый вариант. Как пользователь, я бы посчитал это довольно навязчивым, если простое бизнес-приложение , которое я установил на своем компьютере, автоматически создает новую учетную запись пользователя. В любом случае, какой пароль следует использовать? Какое-то предопределенное жестко закодированное значение (= кошмар безопасности)? Какой-то новый случайный пароль (= кошмар администрации)?

  • Попросите пользователя предоставить или создать учетную запись: во многих случаях «простой пользователь», устанавливающий программное обеспечение на своем домашнем компьютере, не знает и не заботится о том, что такое «учетная запись пользователя», так что это не вариант или. В любом случае, зачем пользователю беспокоиться о внутренних деталях реализации (служба агента SQL Server) устанавливаемого им бизнес-приложения?

Я что-то упустил очевидное? Существуют ли какие-либо устоявшиеся рекомендации по решению этой проблемы?

Ответы [ 2 ]

0 голосов
/ 05 февраля 2012

Почему вы считаете, что учетная запись агента SQL Server является необязательным параметром для автоматической установки SQL Server Express? Я много раз устанавливал SQL Server Express в автоматическом режиме без указания параметра /AGTSVCACCOUNT.

Более того, SQL Server Express даже не поддерживает агент SQL Server, и, хотя служба агента SQL Server все еще установлена, она отключена установщиком.

0 голосов
/ 14 февраля 2011

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

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

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

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

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

Я понимаю, что это не полный ответ на поставленный вопрос, но я надеюсь, что это несколько полезно

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...