Как определить связанный сервер, который будет доступен для каждого имени пользователя?
У меня есть представление в SQL Server 2008, который выбирает из связанного сервера.
Я могу выбрать из вида, только если я открываю SSMS as administrator
,
Если я не открываю SSMS как администратор и пытаюсь выбрать из представления, я получаю ошибку unspecified error
Вот мой связанный сервер:
use master
go
EXEC sp_AddLinkedServer @server = 'SectionA',
@srvproduct = '',
@provider = 'Microsoft.ACE.OLEDB.12.0',
@datasrc = 'C:\SectionAReport\',
@provstr = 'Text'
Как я могу позволить ВСЕМ ПОЛЬЗОВАТЕЛЯМ выбрать из этого представления?
1 ответ
Решение
С " sp_addlinkedsrvlogin" вы сможете установить удаленные разрешения.
В частности, попробуйте это
EXEC sp_addlinkedsrvlogin @rmtsrvname = 'SectionA'
, @useself = 'FALSE'
, @locallogin = NULL -- all local users
, @rmtuser = 'whatevername'
, @rmtpassword = 'whateverpassword'