Chciałbym uruchomić xp_cmdshell (procedura TSQL) w celu zamontowania dysku sieciowego, a następnie dostępu do plików mdb z pilotami.Wykonaj polecenie xp_cmdshell jako konkretny użytkownik
Jestem administratorem na serwerze MS SQL i umożliwiłem wykonanie odpowiednio xp_cmdshell.
Jednakże nadal istnieje problem:
Kiedy zadzwonić xp_cmdshell, użytkownik wykonujący polecenia jest SQL SysAdmin, czyli rachunku prowadzonego procesu, który SQL Server.
życzę xp_cmdshell wykonuje jako konta z którego jestem podłączony do serwera SQL, czyli Administrator
Obie tezy są konta administratora w grupie, grupy SQLAdmin i są przyznawane do SERWERA KONTROLI. Obaj użytkownicy należą do tej samej domeny. Wszystko to działa na tej samej maszynie.
powodu tego konfliktu, nie można korzystać z dysku sieciowego, ponieważ jest ona zamontowana na SysAdmin a nie dla Administrator
Próbowałem użyć sp_ xp_ cmdshell_ proxy_ konto określić konto, z którego chcesz do uruchomienia xp_cmdshell, ale SysAdmin jest nadal używanym kontem.
Dlatego ten kod:
select user_name(), suser_name;
exec xp_cmdshell 'echo %username%';
wyświetlacze:
Administrator Administrator
SysAdmin
Czy ktoś wie, jak również personifikować xp_cmdshell polecenie? Czy jest coś do (ponownego) skonfigurowania?
Dzięki za pomoc.
Konto proxy jest używany tylko wtedy, gdy użytkownicy nie sysadmin wykonać xp_cmdshell –
Więc jak można wymusić określonego użytkownika sysadmin? – Antwan
Aby wyjaśnić - użyłeś sp_xp_cmd_shell_proxy_account, aby ustawić konto, którego chcesz użyć, a następnie wykonałeś polecenie za pomocą polecenia xp_cmdshell, a używane konto jest nadal kontem usługi? Chcę tylko upewnić się, że rozumiem twoje kroki. – SqlRyan