Les tâches de l’agent SQL Server peuvent échouer après avoir modifié le compte de démarrage du service de l’agent SQL Server à l’aide du gestionnaire de contrôle des services Windows


Erreur n ° : 413203 (SQLBUDT)

Symptômes


Si vous exécutez une tâche d’agent SQL Server ayant une étape configurée sur « Exécuter en tant que », vous pouvez recevoir le message d’erreur suivant dans l’historique du travail :
Erreur : exécuté en tant qu’utilisateur : domaine\compte. Le processus n’a pas pu être créé pour le numéro de l’étape de travail unique du travail (raison : un privilège requis n’est pas détenu par le client). L’étape a échoué.
Ce message d’erreur est généralement affecté par les types d’étapes de travail suivantes :
  • Étape du travail du système d’exploitation (CmdExec)
  • Étape du travail de package SQL Server Integration Services
  • Étapes de travail de réplication types de tâches
Par ailleurs, lorsque vous essayez d’exécuter une tâche d’agent de réplication, il est possible que le travail de l’agent de réplication échoue et que vous receviez un message d’erreur qui ressemble à ce qui suit :
Exécuté en tant qu’utilisateur : <UserAccount>. Réplication-sous-système de capture de réplication : agent <AgentName> échec. Exécuté en tant qu’utilisateur : <UserAccount>. Un privilège requis n’est pas détenu par le client. L’étape a échoué. [SQLSTATE 42000] (Erreur 14151). L’étape a échoué.

Cause


Ce problème se produit car le gestionnaire de contrôle des services Windows ne peut pas accorder les autorisations requises pour exécuter des tâches d’agent sur le nouveau compte de domaine. Le gestionnaire de configuration SQL Server vous permet d’effectuer des étapes supplémentaires supplémentaires en modifiant le compte ou le mot de passe du service. Cette procédure ajoute le compte de service à l’appartenance au groupe appropriée, qui fournit les autorisations nécessaires. Vous recevrez le second message d’erreur mentionné dans la section Symptômes lorsque le compte de service de l’agent SQL Server ne dispose pas des autorisations nécessaires sur le système d’exploitation pour générer le processus enfant nécessaire en vertu du contexte du compte proxy. Remarque Ce message d’erreur n’est généralement pas causé par le compte proxy lui-même, mais par le compte du service de l’agent SQL Server qui tente d’emprunter le compte proxy. Le compte de service de l’agent SQL Server ne dispose pas des privilèges requis pour effectuer l’emprunt d’identité.

Résolution


Pour résoudre ce problème, utilisez SQL Server Configuration Manager pour redéfinir le compte de domaine sur un compte de démarrage. Ensuite, utilisez SQL Server Configuration Manager pour transformer le compte de démarrage en compte de domaine. Lorsque vous procédez ainsi, le gestionnaire de configuration SQL Server ajoute le compte de domaine au groupe de sécurité suivant :
SQLServer2005SQLAgentUser$ComputerName$InstanceName
C’est pourquoi, SQL Server Configuration Manager accorde les autorisations requises pour exécuter des tâches d’agent sur le compte de domaine. Pour résoudre le problème, procédez comme suit :
  1. Définissez le compte service de l’agent SQL Server dans le gestionnaire de configuration SQL Server pour le compte LocalSystem.
  2. Arrêtez puis démarrez le service Agent SQL Server.
  3. Réinitialisez le compte SQL Server Agent Service dans le gestionnaire de configuration SQL Server.
  4. Arrêtez puis démarrez le service Agent SQL Server.
Vous pouvez également réinitialiser le mot de passe du compte de service de l’agent SQL Server dans le gestionnaire de configuration SQL Server. Pour éviter ce problème à l’avenir, nous vous recommandons d’utiliser SQL Server Configuration Manager plutôt que le gestionnaire de contrôle des services Windows pour modifier les comptes de démarrage. Pour plus d’informations sur la modification du compte SQL Server Service, consultez les sites Web Microsoft suivants :

Statut


Microsoft a confirmé l'existence de ce problème dans les produits Microsoft figurant dans la liste des produits concernés par cet article.

Informations supplémentaires


Pour SQL Server 2005, les groupes d’utilisateurs suivants sont créés par le programme d’installation de SQL Server :
  • Instance par défaut : SQLServer2005SQLAgentUser $ NomOrdinateur $ MSSQLSERVER
  • Instance nommée : SQLServer2005SQLAgentUser $ ComputerName $ InstanceName
Pour SQL Server 2008, les groupes d’utilisateurs suivants sont créés par le programme d’installation de SQL Server :
  • Instance par défaut : SQLServerSQLAgentUser $ NomOrdinateur $ MSSQLSERVER
  • Instance nommée : SQLServerSQLAgentUser $ ComputerName $ InstanceName
Ces groupes disposent des autorisations appropriées pour autoriser l’emprunt d’identité des comptes proxy. Pour plus d’informations sur les autorisations requises pour un compte de service d’agent SQL Server, voir les sites Web Microsoft suivants :