For brugere, der ikke er medlemmer af sysadmin-rollen på SQL Server-instansen, skal du udføre følgende handlinger for at give adgang til den udvidede lagrede procedure xp_cmdshell. Derudover, hvis du har glemt et af trinene, har jeg angivet den fejl, der vil blive kastet.
-
Aktiver xp_cmdshell-proceduren
Msg 15281, niveau 16, tilstand 1, procedure xp_cmdshell, linje 1SQL Server blokerede adgang til proceduren 'sys.xp_cmdshell' for komponenten 'xp_cmdshell', fordi denne komponent er slået fra som en del af sikkerhedskonfigurationen for denne server. En systemadministrator kan aktivere brugen af 'xp_cmdshell' ved at bruge sp_configure. For mere information om aktivering af 'xp_cmdshell', se "Surface Area Configuration" i SQL Server Books Online.*
-
Opret et login for den ikke-sysadmin-bruger, der har offentlig adgang til masterdatabasen
Besked 229, niveau 14, tilstand 5, procedure xp_cmdshell, linje 1. EXECUTE-tilladelsen blev nægtet på objektet 'xp_cmdshell', databasen 'mssqlsystemresource', skemaet 'sys'.*
-
Giv EXEC-tilladelse til den lagrede procedure i xp_cmdshell
Besked 229, niveau 14, tilstand 5, procedure xp_cmdshell, linje 1. EXECUTE-tilladelsen blev nægtet på objektet 'xp_cmdshell', databasen 'mssqlsystemresource', skemaet 'sys'.*
-
Opret en proxykonto, som xp_cmdshell vil blive kørt under ved hjælp af sp_xp_cmdshell_proxy_account
Besked 15153, niveau 16, tilstand 1, procedure xp_cmdshell, linje 1. xp_cmdshell proxy-kontooplysningerne kan ikke hentes eller er ugyldige. Bekræft, at legitimationsoplysningerne '##xp_cmdshell_proxy_account##' findes og indeholder gyldige oplysninger.*
Det ser ud til fra din fejl, at enten trin 2 eller 3 blev overset. Jeg er ikke bekendt med klynger for at vide, om der er noget særligt ved den opsætning.