В настоящее время вы работаете в автономном режиме; ожидается повторное подключение к Интернету

PRB: Ошибка 1314 возникает по xp_cmdshell при выполнены как для пользователя SA не

ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.

Эта статья на английском языке:248391
Эта статья помещена в архив. Она предлагается "как есть" и обновляться не будет.
Проблема
Появляется следующее сообщение об ошибке при выполнении задания операционной системы через xp_cmdshell после входа в SQL Server в качестве учетной записи без учетной записи sa.
Сообщение 50001, уровень 1, состояние 50001
xpsql.c: ошибка 1314 от метода LogonUser строке 476
Кроме того может появиться следующее:
Сообщение 50001, уровень 1, состояние 50001
xpsql.c: ошибка 1314 из CreateProcessAsUser строке 492
Причина
Эти ошибки возникают в соответствии с их прав на учетной записи SQLAgentCmdExec Windows NT, MSSQLServer выполняется.
Временное решение
Убедитесь, что учетная запись Windows NT, Служба MSSQLServer выполняется на учетную запись домена, являющийся членом группы локальных администраторов на сервере.

Убедитесь, что следующие разрешения прав пользователя учетной записи службы MSSQLServer выполняется, а также SQLServerAgent:
  • Работа в режиме операционной системы.
  • Увеличение квот.
  • Замена маркера уровня процесса.
  • Вход в качестве пакетного задания.
Кроме того убедитесь, что локальная учетная запись SQLAgentCmdExec правами «Вход в качестве пакетного задания».

Примечание.: Всего сервера, не только службы SQL необходимо перезапустить, чтобы любые изменения разрешений пользователя прав вступили в силу.
Дополнительная информация
Xpsql.c включен в пример кода, который поставляется вместе с продуктом. Ошибка в строке 476 получает возникает при вызове функции Win32 API:LogonUser()не удается. Ошибка в 492 получает возникает при сбое вызова CreateProcessAsUser().

Ошибка 1314 — ERROR_PRIVILEGE_NOT_HELD. Это означает, что учетная запись, вызов этих функций не имеет достаточные права для выполнения входа в систему. Отсюда многие заказчики сбросить права учетной записи для учетной записи SQLAgentCmdExec или создайте его заново через диспетчер пользователей или SQL Enterprise Manager.

Тем не менее вызывает эти ошибки — это процесс, который вызывает API-вызовов (Sqlservr.exe). Therefore, it is the account that the MSSQLServer service is running on that holds the incorrect and insufficient privileges. In order to successfully executeLogonUser(), the MSSQLServer account needs to have the SE_TCB_NAME (Act as part of the operating system) right enabled. In order to successfully execute CreateProcessAsUser(), the MSSQLServer account needs to have the SE_INCREASE_QUOTA_NAME (Increase quotas) rights enabled.

Примечание.: For certain types of processes, CreateProcessAsUser() may also require SE_ASSIGNPRIMARYTOKEN_NAME (Replace a process level token) to be turned on.

Внимание! Эта статья переведена автоматически

Свойства

Номер статьи: 248391 — последний просмотр: 12/05/2015 17:52:56 — редакция: 2.0

Microsoft SQL Server 6.5 Standard Edition, Microsoft SQL Server 7.0 Standard Edition

  • kbnosurvey kbarchive kbbug kbprb kbmt KB248391 KbMtru
Отзывы и предложения