Под какой учетной записью пользователя вы бы порекомендовали запускать службы SQL Server Express 2008 в среде разработки?
-
09-06-2019 - |
Вопрос
Настройка SQL Server Express 2008 позволяет вам назначить разные учетные записи пользователей для каждой службы.
Для среды разработки вы бы использовали пользователя домена, локального пользователя, NT Authority \ СЕТЕВОЙ сервер, NT Authority \ Локальную систему или какую-либо другую учетную запись и почему?
Решение
Локальная система не рекомендуется, это учетная запись, эквивалентная учетной записи администратора, и, следовательно, может привести к сомнительному кодированию, использующему преимущества прав администратора, которые не были бы разрешены в производственной системе, поскольку администраторы / администраторы базы данных, заботящиеся о безопасности, действительно не любят запускать службы от имени администратора.
В зависимости от того, потребуется ли экземпляру сервера доступ к другим ресурсам домена или нет, следует определить, под каким типом учетной записи с низкими привилегиями он должен работать.
Если ему не требуется доступ к каким-либо (неанонимным) ресурсам домена, я обычно создаю уникальную локальную учетную запись с низкими привилегиями, под которой он будет работать, чтобы получить дополнительное преимущество безопасности, заключающееся в отсутствии нескольких служб, запущенных в одном контексте идентификации. Имейте в виду, что учетная запись локальной службы не поддерживается для служб SQL Server или агента SQL Server.
Если ему действительно необходим доступ к неанонимным ресурсам домена, то у вас есть три варианта:
- Запускайте как Сетевая служба это также учетная запись с низкими привилегиями, но которая сохраняет учетные данные компьютерной сети.
- Запуск под учетной записью локальной службы
- Запускайте под учетной записью пользовательского домена с низкими локальными привилегиями.Одним из преимуществ работы под учетной записью разработчика является то, что легче подключать отладчики к процессам в вашем собственном удостоверении без ущерба для безопасности, что упрощает отладку (поскольку учетные записи, не являющиеся администраторами, по умолчанию не имеют права подключать отладчик к другому процессу удостоверений).Недостатком использования другой учетной записи домена являются накладные расходы на управление этими учетными записями, тем более что каждая служба для каждого разработчика в идеале должна иметь уникальные учетные данные, чтобы у вас не было утечек в случае ухода разработчика.
Большая часть того, что я обычно делаю, не требует от службы доступа к ресурсам домена, поэтому я обычно использую уникальные локальные учетные записи с низкими привилегиями, которыми я управляю.Я также запускаюсь исключительно как пользователь, не являющийся администратором (и делал это под XP SP2, Server 2003, Vista и Server 2008 без серьезных проблем), поэтому, когда у меня возникают случаи, когда мне нужна служба для доступа к ресурсам домена, я не беспокоюсь об использовании своих собственных учетных данных домена (плюс, таким образом, мне не нужно беспокоить сетевых администраторов о создании / поддержании множества непроизводственных идентификаторов домена).
Другие советы
Это зависит от обстоятельств.
- Локальная система - никогда, он слишком высокий привилегия.
- Сетевая служба - Возможно, если вам нужно подключиться к сетевым ресурсам, но это сомнительно.
- Локальная служба - вероятно лучший выбор, ограниченные привилегии, не разблокируйте сетевые подключения
- Локальный интерактивный пользователь?Действительно ли для этого нужны права входа в систему или действовать как пользователь?
- Пользователь домена?Добра нет, нет, если вы обращаетесь сетевые диски в;если SQL выходит из-под контроля, то злоумышленник проходит аутентификацию в домене.
У MS now есть хорошая статья на эту тему:http://msdn.microsoft.com/en-us/library/ms143504 (v=sql.105).aspx
Они заявляют, что локальная служба не разрешена для ядра SQL Server.Лично я использую локальную систему просто для того, чтобы избежать проблем во время разработки, но в производственной практике лучше всего создать учетную запись службы уровня домена только с теми разрешениями, которые необходимы для выполнения работы.
Все, что он хочет использовать по умолчанию.Менять это - значит просто напрашиваться на неприятности позже.