Chcesz utworzyć serwer linkowany, ale w taki sposób aby jeden wybrany użytkownik z lokalnego serwera mógł uruchomić jedną konkretną procedurę na serwerze zdalnym.
1. Na serwerze zdalnym załóż login sql. Nadaj mu odpowiednie minimalne uprawnienia (user w bazie i execute na wybranej procedurze)
2. Na obu serwerach upewnij się, że jest włączona opcja remote access. Dzięki niej uruchamianie procedur przez linked serwer jest możliwe.
exec sp_configure ‘remote access’, 1
RECONFIGURE WITH OVERRIDE
Zmiana opcji wymaga restartu SQL
3. Na serwerze lokalnym zdefiniuj linked server:
Uwaga, aby uruchamiać zdalnie procedury, linked server musi na to zezwalać. Dlatego przełącz opcje PRC i PRC Out na true.
No i pora na konfigurację uprawnień. Jeżeli jesteś lokalnym użytkownikiem my_local_user to do zdalnego serwera połącz się wykorzystując login z serwera zdalnego my_remote_user
Jeżeli po drodze otrzymasz błąd:
To sprawdź, czy rzeczywiście masz (powinieneś mieć) uprawnienia do połaczenia do zdalnego serwera. Jeśli nadałeś uprawnienia jak powyżej to dostęp posiada tylko my_local_user a ty niekoniecznie…, nawet jeśli jesteś sysadminem. Zignoruj błąd, a linked serwer dla wskazanego użytkownika będzie działać!