18
0
Fork 0

HowtoJenkins: Move (maybe) still valid CSRF advice to Maintenance

This commit is contained in:
David Prevot 2022-07-11 15:33:10 +02:00
parent 7365bd6df5
commit 7387db5962
1 changed files with 7 additions and 19 deletions

View File

@ -127,24 +127,6 @@ Voici une configuration d'un VirtualHost Apache pour proxyfier Jenkins en HTTPS
~~~
### Générer un "Crumb" pour la protection CSRF (Cross Site Request Forgery) de Jenkins
Depuis Jenkins 2.X la protection CSRF est activé par défaut. Si on administre Jenkins en passant par un reverse proxy Apache ou Nginx, on doit générer un Crumb avec l'utilisateur admin de Jenkins comme ceci :
Avec une requête curl :
~~~
# curl -u "admin_user:password" 'http://localhost:8080/crumbIssuer/api/xml?xpath=concat(//crumbRequestField,":",//crumb)'
~~~
Avec une requête wget :
~~~
# wget --user=admin_user --password=password --auth-no-challenge -q --output-document - 'http://localhost:8080/crumbIssuer/api/xml?xpath=concat(//crumbRequestField,":",//crumb)'
~~~
Si on passe par un reverse proxy, il ne faut pas oublier de cocher l'option sur l'interface web dans Administrer Jenkins -> Configurer la sécurité globale -> CSRF Protection -> Activer la compatibilité proxy
## Dépannage
### Problème de configuration de Reverse Proxy
@ -164,9 +146,15 @@ Il faut configurer le ProxyPass avec l'option _nocanon_ comme ceci :
RequestHeader set X-Forwarded-Proto "https"
RequestHeader set X-Forwarded-Port "443"
</Location>
~~~
Si une réponse 403 est renvoyée lors de lenvoi dun formulaire, activer
loption de compatibilité (« Enable proxy compatibility ») de protection
CSRF dans « Manage Jenkins > Security > Configure Global Security > CSRF
Protection » (ou « Administrer Jenkins -> Sécurité -> Configurer la
sécurité globale -> CSRF Protection -> Activer la compatibilité proxy »)
peut aider.
## Agents
Lexécution des tests ne devrait pas être réalisée sur le nœud intégré,