Pro uživatele, kteří nejsou členy role sysadmin v instanci SQL Server, musíte provést následující akce, abyste udělili přístup k rozšířené uložené proceduře xp_cmdshell. Kromě toho, pokud jste zapomněli jeden z kroků, uvedl jsem chybu, která bude vyvolána.
-
Povolte proceduru xp_cmdshell
Zpráva 15281, úroveň 16, stav 1, procedura xp_cmdshell, řádek 1 SQL Server zablokoval přístup k proceduře 'sys.xp_cmdshell' součásti 'xp_cmdshell', protože tato součást je vypnuta jako součást konfigurace zabezpečení pro tento server. Správce systému může povolit použití 'xp_cmdshell' pomocí sp_configure. Další informace o povolení 'xp_cmdshell' naleznete v části Konfigurace oblasti povrchu v SQL Server Books Online.*
-
Vytvořte přihlašovací údaje pro uživatele, který není správcem systému a má veřejný přístup k hlavní databázi
Zpráva 229, úroveň 14, stav 5, procedura xp_cmdshell, řádek 1 Oprávnění EXECUTE bylo odepřeno pro objekt 'xp_cmdshell', databáze 'mssqlsystemresource', schéma 'sys'.*
-
Udělte oprávnění EXEC pro uloženou proceduru xp_cmdshell
Zpráva 229, úroveň 14, stav 5, procedura xp_cmdshell, řádek 1 Oprávnění EXECUTE bylo odepřeno pro objekt 'xp_cmdshell', databáze 'mssqlsystemresource', schéma 'sys'.*
-
Vytvořte si proxy účet, pod kterým bude xp_cmdshell spuštěn pomocí sp_xp_cmdshell_proxy_account
Zpráva 15153, úroveň 16, stav 1, procedura xp_cmdshell, řádek 1 Informace o účtu proxy xp_cmdshell nelze načíst nebo jsou neplatné. Ověřte, že pověření '##xp_cmdshell_proxy_account##' existuje a obsahuje platné informace.*
Z vaší chyby by se zdálo, že jste vynechali krok 2 nebo 3. Nejsem obeznámen s clustery, abych věděl, zda je v tomto nastavení něco konkrétního.