У меня есть задание SQL, которое запускает сценарий VB, который использует объект, предоставленный приложением Microsoft Excel DCOM. Excel 2003 установлен и работает. И SQL Server, и агент SQL работают под mydomain \ thataccount.
Ошибка:
Параметры разрешений по умолчанию для компьютера не предоставляют разрешения на локальную активацию для приложения COM-сервера с CLSID {00024500-0000-0000-C000-000000000046} пользователю mydomain \ thataccount SID с адреса LocalHost (с использованием LRPC). Это разрешение безопасности можно изменить с помощью инструмента администрирования служб компонентов.
Следующие выводы затрудняют это.
mydomain \ thataccount имеет полные разрешения на запуск и активацию, разрешения доступа и разрешения конфигурации для приложения DCOM в конфигурации DOC служб компонентов.
Ошибка (выше) утверждает, что это не так.
Если я предоставлю «всем» полный доступ всех типов, ошибка не изменится.
Если я заставлю агент SQL запускаться под другой учетной записью (mydomain \ otheraccount), ошибка все равно будет сообщать о том, что mydomain \ thataccount не имеет разрешений. Очевидно, задание выполняется с учетными данными SQL Server, а не с учетными данными агента SQL.
Я не менял учетную запись, под которой работает SQL Server, потому что при запуске SQL Configuration Manager я получил эту ошибку (которая может быть связана или не связана):
Не удается подключиться к поставщику WMI. У вас нет разрешения или сервер недоступен. Обратите внимание, что управлять серверами SQL Server 2005 и более поздних версий можно только с помощью диспетчера конфигурации SQL Server. Недействительный класс [0x80041010]
Если я добавлю mydomain \ thataccount в группу локальных администраторов и перезапущу SQL Server, работа работает. Это означает, что администратор имеет разрешение на использование приложения DCOM, а пользователь без прав администратора - нет, несмотря на то, что ему предоставлены разрешения.
Повторюсь: даже когда «всем» был предоставлен полный доступ к приложению DCOM, в сообщении об ошибке говорилось, что mydomain \ thataccount не имеет разрешений на доступ к приложению DCOM.
Любые идеи?
(Я начинаю думать, что что-то не так с установкой Windows / SQL.)
Microsoft® Windows Server® 2008 Enterprise Версия: 6.0.6002 Архитектура: 64-разрядная Состояние: ОК Общий видимый объем физической памяти: 3927 МБ Windows Service Pack: Service Pack 2
Microsoft SQL Server 2008 (SP1) - 10.0.2531.0 (X64) 29 марта 2009 10:11:52 Авторские права (c) 1988-2008 Microsoft Corporation Enterprise Edition (64-разрядная версия) в Windows NT 6.0 (сборка 6002: пакет обновления 2)