Konfiguracja serwera: xp_cmdshell

Dotyczy:SQL Server

W tym artykule opisano sposób włączania xp_cmdshell opcji konfiguracji programu SQL Server. Ta opcja umożliwia administratorom systemu kontrolowanie, czy rozszerzona procedura składowana xp_cmdshell może być wykonywana w systemie. Domyślnie opcja xp_cmdshell jest wyłączona w nowych instalacjach.

Przed włączeniem tej opcji należy wziąć pod uwagę potencjalne implikacje dotyczące zabezpieczeń.

  • Nowo utworzony kod nie powinien używać xp_cmdshell procedury składowanej i zazwyczaj powinien zostać wyłączony.
  • Niektóre starsze aplikacje wymagają włączenia xp_cmdshell. Jeśli nie można ich zmodyfikować, aby uniknąć korzystania z tej procedury składowanej, możesz ją włączyć zgodnie z poniższym opisem.

Uwaga / Notatka

Jeśli xp_cmdshell należy go użyć, najlepszym rozwiązaniem w zakresie zabezpieczeń jest włączenie go tylko przez czas trwania rzeczywistego zadania, które go wymaga. Za pomocą xp_cmdshell polecenia można wyzwalać narzędzia inspekcji zabezpieczeń.

Jeśli musisz włączyć xp_cmdshell, możesz użyć zarządzania opartego na zasadach lub uruchomić systemową procedurę składowaną sp_configure, jak pokazano w poniższym przykładzie kodu:

USE master;
GO

EXECUTE sp_configure 'show advanced options', 1;
GO

RECONFIGURE;
GO

EXECUTE sp_configure 'xp_cmdshell', 1;
GO

RECONFIGURE;
GO

EXECUTE sp_configure 'show advanced options', 0;
GO

RECONFIGURE;
GO