Para usuários que não são membros da função sysadmin na instância do SQL Server, você precisa executar as seguintes ações para conceder acesso ao procedimento armazenado estendido xp_cmdshell. Além disso, se você esqueceu uma das etapas, listei o erro que será lançado.
-
Ative o procedimento xp_cmdshell
Msg 15281, Level 16, State 1, Procedure xp_cmdshell, Line 1SQL Server bloqueou o acesso ao procedimento 'sys.xp_cmdshell' do componente 'xp_cmdshell' porque este componente está desativado como parte da configuração de segurança para este servidor. Um administrador do sistema pode habilitar o uso de 'xp_cmdshell' usando sp_configure. Para obter mais informações sobre como habilitar 'xp_cmdshell', consulte "Configuração da área de superfície" nos Manuais Online do SQL Server.*
-
Crie um login para o usuário não administrador de sistema que tenha acesso público ao banco de dados mestre
Msg 229, Level 14, State 5, Procedure xp_cmdshell, Line 1A permissão EXECUTE foi negada no objeto 'xp_cmdshell', banco de dados 'mssqlsystemresource', esquema 'sys'.*
-
Conceder permissão EXEC no procedimento armazenado xp_cmdshell
Msg 229, Level 14, State 5, Procedure xp_cmdshell, Line 1A permissão EXECUTE foi negada no objeto 'xp_cmdshell', banco de dados 'mssqlsystemresource', esquema 'sys'.*
-
Crie uma conta proxy na qual o xp_cmdshell será executado usando sp_xp_cmdshell_proxy_account
Msg 15153, Level 16, State 1, Procedure xp_cmdshell, Line 1As informações da conta proxy xp_cmdshell não podem ser recuperadas ou são inválidas. Verifique se a credencial '##xp_cmdshell_proxy_account##' existe e contém informações válidas.*
Parece pelo seu erro que a etapa 2 ou 3 foi perdida. Não estou familiarizado com clusters para saber se há algo específico nessa configuração.