Правильные permissions

BootMaker
Дата: 16.10.2003 11:42:31
Добрый день.
Хочу завести для своего приложения отдельный юзер-логин. Проставить ручками доступы на все объекты в базе, чтобы точно знать, что он может делать, а чего нет.
Когда дело доходит до доступа на запуск master..xp_cmdshell, то после включения в базу master моего юзера ее запуск от его имени вызывает
xpsql.cpp: Error 997 from GetProxyAccount on line 472
Что это?
Glory
Дата: 16.10.2003 11:47:05
Ваш юзер не входит в роль sustemadministrators, а для таких пользователей xp_cmdshell нужен указать отдельный аккаунт, под которым она и будет запускаться. Устанавливается он ЕМ в свойствах SQLServerAgent-а
злой шаман
Дата: 16.10.2003 11:58:48
Лучше переходите сразу на windows authentication. Юзеров правда придется поделить на виндовые группы. Зато потом тишина и покой.
BootMaker
Дата: 16.10.2003 12:25:40
2 Glory
Ваш юзер не входит в роль sustemadministrators, а для таких пользователей xp_cmdshell нужен указать отдельный аккаунт, под которым она и будет запускаться.

По сути, если я правильно понял, я не могу с правами little_user запустить процедуру storedProc,которая вызовет после цепи отдельных процедур какой-нибудь триггер со строкой exec master..cmdshell и правильно отработает?
Что значит: "Указать xp_cmdshell для таких пользователей отдельный аккаунт?"
Glory
Дата: 16.10.2003 12:28:51
BOL - xp_cmdshell

"When xp_cmdshell is invoked by a user who is a member of the sysadmin fixed server role, xp_cmdshell will be executed under the security context in which the SQL Server service is running. When the user is not a member of the sysadmin group, xp_cmdshell will impersonate the SQL Server Agent proxy account, which is specified using xp_sqlagent_proxy_account. If the proxy account is not available, xp_cmdshell will fail. This is true only for Microsoft® Windows NT® 4.0 and Windows 2000. On Windows 9.x, there is no impersonation and xp_cmdshell is always executed under the security context of the Windows 9.x user who started SQL Server."

Либо как я уже сказал выше - ЕМ в свойствах SQLServerAgent-а
BootMaker
Дата: 16.10.2003 13:45:13
When the user is not a member of the sysadmin group, xp_cmdshell will impersonate the SQL Server Agent proxy account

SQL Server Agent у меня стартует аж под администратором домена. Ситуация не меняется - xpsql.cpp: Error 997 from GetProxyAccount on line 472.
Вроде же все правильно делаю :(
Glory
Дата: 16.10.2003 13:59:43
Еще раз
аккаунт под которым стартует SQL Server Agent тут напричем. Просто в его свойствах в закладке Job System находится настрйка для NonSysAdminProxyAccount.

Эту же установку можно сделать с помощью процедуры xp_sqlagent_proxy_account
BootMaker
Дата: 16.10.2003 15:40:11
Большое очередное спасибо Glory за отзывчивость и выдержку - с пятнадцатого раза все наконец-то заработало как часы :)
Я так понимаю - существует некий SQL proxy, который следит за деятельностью аккаунтов?
Glory
Дата: 16.10.2003 15:45:41
Нет.Никто ни за кем не следит
Есть два сорта пользователей - админы работают в xp_cmdshell от имени сервера, а все остальные - от имени SQL Server Agent proxy account. Второй при установке по умолчанию не задается. Все.