Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
 Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
Задача: запустить SQL Server Agent под доменным аккаунтом с минимальными правами, которые только возможны. НЕ включая его в локальные администраторы.

Настраиваю, используя следующие статьи: Setting up Windows Services Accounts
How to change the SQL Server or SQL Server Agent Service account without using SQL Enterprise Manager in SQL Server 2000

Не стартует.

Начинаю "сортировать", что вообще надо настраивать.
1. Registry keys
2. NTFS permissions on the disk
3. Windows User rights
4. Включить этот доменный аккаунт в роль sysadmin на этом сиквеле

Раз по статьям не получилось настроить, дай, думаю, добавлю понемногу прав и так найду, чего не хватает.

1. Registry keys. Забабахиваю не мелочась на период экспериментов фул контрол на весь реестр. Не помогает.
2. NTFS permissions on the disk - даю фул контрол на весь диск. Там и сам сиквел, и базы. Ну, тестовый сервер - незачем разносить.
3. Windows User rights - все дано, что указано во второй статье.
4. Включить этот доменный аккаунт в роль sysadmin на этом сиквеле - включен
----------------------------------------------------

Ну, собственно, вопрос вы уже, думаю, поняли. Чего еще надо дать, чтобы сервис застартовал?
14 мар 05, 16:24    [1384041]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
aleks2
Guest
Минимальные права: GUEST и все работает.

EM сам все сделает - настраивай из него.

--------------------------
Чего еще надо дать, чтобы сервис застартовал?

Право "Logon As Service", например...
14 мар 05, 16:28    [1384071]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
aleks2
Минимальные права: GUEST и все работает

Чушь. Сам-то попробовал?

aleks2
Право "Logon As Service", например

Ссылки на статьи видел? Вторую открывал? Про "Logon As Service" там было. И у меня написано, что все настроено в соответствии с этими статьями.

P.S. Всем отвечающим - убедительная просьба! Протестируйте свои ответы, прежде чем сюда постить. Чтобы флейм не разводить.
14 мар 05, 16:46    [1384143]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
aleks2
EM сам все сделает - настраивай из него.

Угу. Потому у тебя GUEST и заработал - потому что EM раздал все права. Так вот, меня интересует - где и что он раздал.

Зачем? Во-первых, некоторые админы предпочитают лично дать все пермиссии, чтобы понимать, что творится в системе. Во-вторых, существует MSDE, у которой нет EM.
14 мар 05, 16:53    [1384184]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
Guest_12
Guest
Ну, насколько я понимаю, гадать кто ему отлуп дает можно долго...
Я бы для начала посмотрел RegMon'ом и FileMon'ом. Ежели не поможет, включить security audit на все.
14 мар 05, 17:06    [1384244]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
Так. Заработало у меня. Что стоит проверить:

автор
NTFS permissions on the disk - даю фул контрол на весь диск. Там и сам сиквел, и базы. Ну, тестовый сервер - незачем разносить.


А на кокнретных папочках есть пермищены?
14 мар 05, 18:14    [1384472]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
pkarklin
А на кокнретных папочках есть пермищены?

С пропагацией на низлежащие... Даже специально для проверки запускаю винкомандер под RunAs под этим доменным аккаунтом, который тестирую - бегает по всем папкам, включая сиквельные.

Завтра попробую с перфмоном/регмоном посмотреть...
14 мар 05, 19:25    [1384656]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
aleks2
Guest
GreenSunrise
aleks2
Минимальные права: GUEST и все работает

Чушь. Сам-то попробовал?

aleks2
Право "Logon As Service", например

Ссылки на статьи видел? Вторую открывал? Про "Logon As Service" там было. И у меня написано, что все настроено в соответствии с этими статьями.

P.S. Всем отвечающим - убедительная просьба! Протестируйте свои ответы, прежде чем сюда постить. Чтобы флейм не разводить.


А то!
15 мар 05, 06:26    [1385042]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
Стоит еще посмотреть разрешения на ключи реестра. на конкретные,а не на весь реестр.
15 мар 05, 08:31    [1385131]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
pr0ger
Member

Откуда: Москва
Сообщений: 1933
GreenSunrise
aleks2
Минимальные права: GUEST и все работает

Чушь. Сам-то попробовал?

aleks2
Право "Logon As Service", например

Ссылки на статьи видел? Вторую открывал? Про "Logon As Service" там было. И у меня написано, что все настроено в соответствии с этими статьями.

P.S. Всем отвечающим - убедительная просьба! Протестируйте свои ответы, прежде чем сюда постить. Чтобы флейм не разводить.


Цитата из второй ссылки:
If you do not want the SQL Server or the SQL Server Agent startup account to be a member of the Local Administrators Group, then the startup account for the MSSQLServer service and the SQLServerAgent service (either a local Windows NT account, or a domain Windows NT account) must have these user rights:

• Act as Part of the Operating System = SeTcbPrivilege
• Bypass Traverse Checking = SeChangeNotify
• Lock Pages In Memory = SeLockMemory
• Log on as a Batch Job = SeBatchLogonRight
• Log on as a Service = SeServiceLogonRight
• Replace a Process Level Token = SeAssignPrimaryTokenPrivilege

Все права задаются в локальной политике безопасности secpol.msc
15 мар 05, 09:32    [1385242]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
2 pr0ger

И чего?! Вы пробовали настроить учетку, ограничившись только User Rights???
15 мар 05, 09:45    [1385274]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
pr0ger
Member

Откуда: Москва
Сообщений: 1933
Пробовал, работает :)
Юзер входит только в Domain Users
1. "фул контрол на весь реестр" - включать не стоит, т.к. на некоторых ветках отключено наследование, лучше задать конкретно на нужные ветки. В BOL ещё про HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Perflib говорится.
2. "даю фул контрол на весь диск" - тоже самое, но "винкомандер" ходит, значит тут нормально
3. Windows User rights - об этом я уже говорил
4. Включить этот доменный аккаунт в роль sysadmin на этом сиквеле - если не включить, то SQL Server Agent запускается и сразу останавливается. Можно прописать sql логин на вкладке Connection в SQL Server Agent Properties

https://www.sql.ru/articles/mssql/MSSQL2KSecurity/07.shtml#02
15 мар 05, 11:26    [1385715]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
pr0ger
1. "фул контрол на весь реестр" - включать не стоит, т.к. на некоторых ветках отключено наследование, лучше задать конкретно на нужные ветки. В BOL ещё про HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Perflib говорится.


А вот это действительно так. И я ЯВНО права раздавал на ветки реестра.
15 мар 05, 11:30    [1385750]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
Еще раз хочу сказать, что все настраивалось в соответствии с приведенными двумя статьями. Не надо цитировать мне куски из них :-)

Вот прямо по пунктам, что было роздано:

1. Access and change the SQL Server directory (\Program Files\Microsoft SQL Server\Mssql)
2. Access and change the .mdf, .ndf, and .ldf database files (даны как унаследованные от папки, но если посмотреть на каждый низлежащий файл, то доступ этому аккаунту есть)
3. Log on as a service.
4. Read and write registry keys at and under:
for any named instance (у меня как раз именованный): HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server
for any named instance: HKEY_LOCAL_MACHINE\System\CurrentControlset\Services\MSSQL$Instancename
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Perflib
все дано персонально, не от верхней ветки
5. In addition, a domain user account must be able to read and write corresponding registry keys for these services: SQLAgent$InstanceName, MSSearch, and MSDTC.

HKEY_LOCAL_MACHINE\System\CurrentControlset\Services\SQLAgent$InstanceName
MSSearch и MSDTC пока не нужны
6. Включаю этот логин в роль System Administrators
7. Full Control permission applies to the following keys and all child keys:
For a named instance:
HKEY_LOCAL_MACHINE\Software\Clients\Mail
HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\80
HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\<Instancename>
8. NTFS permissions on the disk
Here is an example for a named instance:
\Program Files\Microsoft SQL Server\MSSQL$_instancename_\
9. Windows user rights
Act as Part of the Operating System
Bypass Traverse Checking
Lock Pages In Memory
Log on as a Batch Job
Log on as a Service
Replace a Process Level Token
-------------------------
Вот. Не стартует. Висит некоторое время, потом выдает ошибку "Error 1053: The service did not respond to the start or control request in a timely fashion."

Такое ощущение, что в момент старта сервис пытается куда-то достучаться, причем на это "куда-то" существует таймаут. Он его честно выдерживает, а коннекта нет. Причем это "куда-то" - не к сиквелу, потому что смотрю профайлером - нет попыток подключения, ни удачных, ни неудачных.

Домен контроллер доступен и работает без сбоев.
-------------------------
Почитав эту ссылку - PRB: Error 1053 When You Try to Start SQL Server Agent, иду разбираться, что еще может быть не так.

Пока что вижу кучу фэйлдов в SQLAgent.out :-))))) С них и начнем... О результатах сообщу дополнительно.
15 мар 05, 15:24    [1387169]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
автор
Вот. Не стартует. Висит некоторое время, потом выдает ошибку "Error 1053: The service did not respond to the start or control request in a timely fashion."


Я вчера наступал на эти же грабли, пока явно не раздал права на каталоги, а не с наследованием ошибка была точно такаяже, отваливался по таймауту через 30 секунд.
15 мар 05, 15:26    [1387188]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
pr0ger
Member

Откуда: Москва
Сообщений: 1933
я тоже видел подобную ошибку - не хватало прав на файлах(у меня небыло прав на базу master)
15 мар 05, 15:42    [1387297]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
pr0ger
Member

Откуда: Москва
Сообщений: 1933
можно в правах на папку поставить птичку на Replace permission entries ...
15 мар 05, 15:46    [1387316]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
Всем файлам права даны явно. И при просмотре вкладки Security они видны. Действительно Full Control.
15 мар 05, 16:00    [1387407]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
pr0ger
Member

Откуда: Москва
Сообщений: 1933
ну тады filemon/regmon :(
15 мар 05, 16:21    [1387565]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
Даутов
Member

Откуда: Казань
Сообщений: 502
В логах SQL Server агента тоже ничего нет ?
Или в Windows Application Log ?
15 мар 05, 16:37    [1387655]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
В логах регмона и файлмона вроде ничего криминального. На всякий случай прикладываю аттачем, вдруг что углядите. Логи агента пусты, потому что дело даже до коннекта к серверу еще не доходит.
15 мар 05, 17:13    [1387834]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
Тьфу, блин, не приложился аттач. Пробую еще раз.

К сообщению приложен файл (logs.zip - 6Kb) cкачать
15 мар 05, 17:14    [1387841]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
Что-то для некоторых файлов из каталога binn ACCESS DENIED для EDM\NKrivonosTest3?
15 мар 05, 17:26    [1387904]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
pr0ger
Member

Откуда: Москва
Сообщений: 1933
в filemon.log строчки 251 и 252:
C:\PROGRA~1\MI6841~1\MSSQL$~1\binn\Resources\1033\SQLSVC.RLL ACCESS DENIED EDM\NKrivonosTest3
15 мар 05, 17:26    [1387908]     Ответить | Цитировать Сообщить модератору
 Re: Пермиссии для доменного аккаунта, под которым стартует SQL Server Agent  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
В EventViewer (System Log) два сообщения:
"Timeout (30000 milliseconds) waiting for the SQLAgent$INS1 service to connect."
"The SQLAgent$INS1 service failed to start due to the following error:
The service did not respond to the start or control request in a timely fashion. "

В EventViewer (Application Log) только одно ошибочное сообщение, и то непохоже, что оно относится к моей проблеме?
"Windows cannot unload your registry file. If you have a roaming profile, your settings are not replicated. Contact your administrator.

DETAIL - Access is denied. , Build number ((2195))."

В EventViewer (Security Log) нет записей Failure Audit, относящихся к тестируемому аккаунту.
15 мар 05, 17:30    [1387920]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить