1 votes

Désactiver le service pour un compte utilisateur spécifique dans Windows XP

Comment puis-je désactiver un service sous Windows XP pour un compte utilisateur spécifique ?

J'ai Tomcat et DB2 que j'utilise en tant qu'administrateur, mais je n'en ai pas besoin en tant qu'utilisateur standard.

De plus, comme ce compte n'a pas de privilèges sur certains fichiers, les services échouent à démarrer et affichent des erreurs gênantes de façon répétée.

J'ai essayé d'utiliser services.msc, mais ces paramètres semblent être globaux et je ne peux pas les modifier depuis un compte non administrateur.

2voto

Indrek Points 23336

Vous ne pouvez pas désactiver les services sur une base d'utilisateur car les services s'exécutent indépendamment de l'utilisateur connecté. La meilleure chose que vous puissiez faire est d'arrêter le service automatiquement lorsque l'utilisateur normal se connecte. Vous pouvez le faire avec un script par lot :

net stop 

Étant donné que l'utilisateur n'a probablement pas la permission d'arrêter les services, vous voudrez ajouter une tâche planifiée, la configurer pour s'exécuter à la connexion de l'utilisateur spécifié, et pour s'exécuter en tant qu'administrateur (ou autre utilisateur avec des privilèges suffisants).

S'il y a plusieurs utilisateurs normaux, vous devrez ajouter cette tâche planifiée pour chacun d'eux, et probablement une qui démarre les services pour l'administrateur.

Pour plus d'informations sur net stop et net start :
http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/net_stop.mspx?mfr=true
http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/net_start.mspx?mfr=true

2voto

stephenmm Points 550

Vous pourriez aller encore plus loin avec l'une des solutions ci-dessus. J'aime bien l'idée de la tâche planifiée. Si vous êtes à l'aise avec VbScript (ou tout autre langage de programmation en réalité), vous pourriez écrire un script pour identifier qui est connecté, puis exécuter la commande "net stop" en fonction de s'ils étaient dans le groupe administrateur (ou, de manière rapide mais moins flexible, vous pourriez dire s'ils ne sont pas votre compte utilisateur).

Voici un brouillon approximatif d'un script que j'ai simplement copié-collé ensemble qui devrait probablement fonctionner :

Dim objNetwork
Set objNetwork = CreateObject("WScript.Network")

If objNetwork.UserName <> "VotreNomDeCompte" Then
    ' S'ils ne sont pas vous, envoyer la commande shell pour arrêter le service.
    Dim objShell
    Set objShell = WScript.CreateObject("WScript.Shell")     
    objResult = objShell.Run("net stop ", 1, True) 
End If

1voto

TheCompWiz Points 10142

Les services sont à l'échelle de la machine. Il n'y a pas de notion de l'utilisateur actuellement connecté à la station de travail en ce qui concerne les services. Je crois que Tomcat peut être démarré sous le profil d'un utilisateur (comme... un raccourci peut éventuellement être utilisé pour lancer le processus) ... mais je doute que DB2 fonctionne dans l'espace utilisateur.

1voto

avirk Points 15591

Il n'est pas possible d'arrêter les services selon la base de l'utilisateur. Les services font partie du système d'exploitation en cours d'exécution, dont il a le plus besoin, et les programmes utilisent également les services au moment du lancement, dont ils ont besoin. Vous ne pouvez arrêter que les services qui sont exécutés manuellement par vous et non par le système, mais si vous essayez d'arrêter le service dont le système a besoin, il ne vous le permettra pas et, de toute façon, cela provoquera un crash du système d'exploitation.

Les services sont comme les membres du corps qui peuvent être arrêtés pendant un certain temps, mais lorsque vous en aurez besoin, vous devrez activer cette partie du corps et comme il y a beaucoup de choses que vous ne pouvez pas contrôler, comme les battements de cœur. Tout dépend du système et de la quantité de services dont il a besoin pour fonctionner.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X