|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Antoine Inscription : juillet 2009 Messages : 11 ![]() |
Bonjour à tous,
Je suis en train de configurer un serveur de build sur un WS 2008 virtualisé. J'ai donc installé Tomcat 6, Hudson par dessus (1.388), et j'ai configuré mes jobs. Il ne me reste qu'une erreur à corriger : Dans notre processus de build, nous devons signer un certain nombre d'exécutables et de setup (avec l'utilitaire signtool.exe de Microsoft). Ensuite nous devons appliquer un timestamp. Tout ceci se fait avec la commande : Code :
signtool sign /v /f certif.pfx /p our_passwd /t http://timestamp.verisign.com/scripts/timestamp.dll fichier_a_signer.exe Citation:
Après plusieurs recherches, il s'avère que : - Ce n'est pas le pare-feu qui bloque l'accès - Ce n'est pas le proxy non plus, puisque la commande fonctionne bien à la main dans un invite de commande (sous le compte administrateur) J'en déduis donc que le compte qui exécute Tomcat en tant que service (Local System) ne peut pas accéder au web, ce qui est confirmé par exemple ici : http://technet.microsoft.com/fr-fr/l.../bb680595.aspx Citation:
J'ai fini par configurer Tomcat pour qu'il démarre sous le compte Administrateur, ça fonctionne, les builds passent bien, mais je me pose quelques questions : Est ce que faire tourner Tomcat avec le compte Administrateur est dangereux ? Existe-t-il un moyen d'autoriser le compte Local System à accéder à Internet, ou au moins à 1 adresse autorisée ? Merci d'avance à ceux qui me liront, et aussi à ceux qui pourront me répondre |
||
|
|
00
|
|
|
#2 | |
|
Membre expérimenté
![]() Vincent Consultant en technologies Inscription : avril 2010 Messages : 383 ![]() |
Citation:
Faire tourner un service sous le compte adminsitrateur est dangereux pour les raisons suivantes : 1\ Accès à tout le système. 2\ Ce n'est pas un comtpe de service, c'est un compte d'administration, ce n'est pas son rôle de faire tourner un service. 3\Si un jour tu changes le mot de passe ou le lock pour une raison quelconque, ton service ne fonctionnera plus. Je pense qu'il faut travailler en profondeur au niveau des comptes de service. Es tu dans un domaine ? Si oui, un compte de domaine est le plus approprié pour le cas actuel. Un compte de service doit compporter une convention de nommage comme Application_SVC, SVC_App... Sinon un comtpe local que tu nommes de la même façon. Ensuite, pour avoir travaillé sur un cluster Microsoft, tu dois spécifier soit par GPO (Group Policy Object, les stratégies de domaine), soit en local (stratégies locales) avec secpol.msc, les User Rights Assigments, qui détermient si le compte à tel ou tel droits sur le système. Elles se présentent de cette façon : Tapez secpol.msc dans démarrer\exécuter, s'ouvre la mmc Local Security Policy, puis aller dans Security Settings\Local Policies\User Rights Assigments\ Chercher les droits suivants : Log as a service Log as a batch job Act as part of the operating system Create a token object Lock pages in memory ... ... Double cliquez sur l'object puis Add Users or Groups, sélectionner l'ordinateur ou le domaine, ensuite ajouter le compte de service que vous avez créé pour l'occasion. Apply et ok. Suivant les prérequis de ton application qui doivent se trouver dans les premières pages du manuel d'utilisation, tu adaptes les droits demandés pour ton compte de service. Tu relances ton serveur ou ta machine. Tu devrais voir apparaitre dans les process ton application et le compte de service approprié. Tiens moi au courant, je suis curieux de savoir si ça va t'aider. Vincent |
|
|
|
10
|
|
|
#3 |
|
Expert Confirmé
![]() ![]() |
Enorme +1 pour vincent.
Ne jamais laisser un service tourner sous le compte admin ![]() Creer un compte dedie avec 'juste' les autorisations necessaires est une des best practices a respecter.
__________________
Mon blog consacré aux solutions de Virtualisation |
|
00
|
|
|
#4 | |||
|
Invité de passage
![]() Antoine Inscription : juillet 2009 Messages : 11 ![]() |
Merci d'avoir pris un peu de temps pour m'aider. J'ai donc créé un User Local, et je lui ai attribué les droits que tu m'a conseillé :
Citation:
Ensuite, après un test, j'ai dû modifier les droits d'accès à deux répertoires du serveur (le repertoire temp de Tomcat et le répertoire de travail de Hudson, l'appli d'intégration continue) -> j'ai ajouté mon utilisateur SVC_app et je l'ai autorisé à faire des modifs dans les deux répertoires. Pour ces deux répertoires, l'user dispose donc des droits Modify, Read & Execute, List folder contents, Read et enfin Write. Citation:
Citation:
Malgré tout ça, mes builds sont toujours stoppés à l'étape de signature des exécutables, qui nécessite une connexion extérieure à internet, par l'intermédiaire de signtool.exe (outil Microsoft). Or sous Windows server 2008, le compte Local System ne peux pas accéder au net. Donc j'aimerais pouvoir trouver LE "User Right Assignement" qui me permettra d'autoriser Local System à aller récupérer un timestamp de temps en temps sur le site de Verisign... Merci encore pour tes conseils |
|||
|
|
00
|
|
|
#5 | |||
|
Membre expérimenté
![]() Vincent Consultant en technologies Inscription : avril 2010 Messages : 383 ![]() |
Citation:
J'ai une question sur le SignTool Error, "could not be reached" indique qu'il y a un problème pour atteindre la page Code :
Comme le compte administrateur lui permet d'y accéder (dixit ton 1er message), on peut faire un test empirique : Ajouter ton compte utilisateur SVC_App dans les mêmes User Right Management que l'administrateur, de tester que ça fonctionne et ensuite de les retirer un par un... Je sais, c'est fastidieux car je crois qu'il faut fermer la session et la réouvrir pour prendre en compte les changements et relancer le service. Cependant si ton timestamp est à la bonne adresse, faut s'y mettre tout de suite... Vincent.
__________________
Dans le doute, reboot... https://mcp.microsoft.com/authenticate/validatemcp.aspx 931584 | Micr0s0ft |
|||
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : juin 2011 Messages : 1 ![]() |
Il faut utiliser le correct URL de Verisign. Notez que timstamp.dll n'a pas de 'e'!
signtool sign /v /f certif.pfx /p our_passwd /t http://timestamp.verisign.com/scripts/timstamp.dll fichier_a_signer.exe Meilleur regards, Friedrich Brunzema |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com