Bonjour,
Soit une appli tiers qui utilise le compte du poste pour l'authentification.
Etant sur un serveur de dév l'appli utilise le compte Mondomaine\Administratreur.
Dans les options du serveur les droits sont ok.
Mondomaine\Administratreur est sysadmin.
J'ai fait:puis
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 USE master; EXEC sp_configure 'show advanced options', 1 RECONFIGURE WITH OVERRIDE EXEC sp_configure 'xp_cmdshell', 1 RECONFIGURE WITH OVERRIDE EXEC sp_configure 'show advanced options', 0 RECONFIGURE WITH OVERRIDE EXEC sp_xp_cmdshell_proxy_account null EXEC sp_xp_cmdshell_proxy_account 'Mondomaine\Administrateur', 'Alti@14' GRANT EXECUTE on xp_cmdshell to [Mondomaine\Administrateur]Jusqu'ici tout fonctionne dans management studio.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 use MaBase Declare @str nvarchar(4000) Set @str =N'echo toto >> C:\logtest.log' EXEC sys.xp_cmdshell @str
Dans mon trigger avec ce codeJ'ai l'erreur "Cannot execute as the server principal because the principal "Mondomaine\Administrateur" does not exist, this type of principal cannot impersonated, or you do not have permission."
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SET @CmdString = 'echoTest >> C:\logtest.log' EXECUTE AS login = 'Mondomaine\Administrateur' EXEC sys.xp_cmdshell @CmdString REVERT
et avec ce codej'ai l'erreur "The EXECUTE permission was denied on the object 'xp_cmdshell' etc..."
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SET @CmdString = 'echoTest >> C:\logtest.log' EXEC sys.xp_cmdshell @CmdString
Info: C'est un server 2003 32bits avec domaine. Les service s'execute sous le comtpe "nt authority\system". Sous SQL 2000 tout fonctionne bien.
Merci pour vos informations
Partager