Preciso executar algumas consultas ad-hoc em várias centenas de servidores que não fazem parte de um domínio. Cada servidor tem uma conta de usuário SQL de baixo privilégio que tem acesso somente leitura a algumas tabelas de interesse.
Minha ideia era ter os nomes desses servidores armazenados em uma tabela e usar essa tabela para conduzir um comando OPENDATASOURCE ou OPENROWSET.
Os servidores estão em domínios diferentes, domínios não confiáveis, grupos de trabalho, etc. Uma grande bagunça.
Não consigo encontrar um exemplo de como configurar esses comandos para usar uma combinação de conta/senha do SQL Server.
Nota: Isso acontece em um sandbox, não é para o mundo real. É simplesmente uma prova de conceito, portanto, a segurança não é uma grande preocupação. Esses servidores são acionados por um processo que simula um crescimento real de uma rede.
Para constar, consegui fazer o OPENROWSET funcionar:
SELECT *
FROM OPENROWSET('SQLNCLI',
'DRIVER={SQL Server};SERVER=MyServer;UID=MyUserID;PWD=MyCleverPassword',
'select @@ServerName')
Para executá-lo com um login SQL, basta especificar User ID e Password na string de conexão (chamada "init string" em BOL )