Chapter 7. Sécuriser Jenkins

7.1. Introduction
7.2. Activer la sécurité dans Jenkins
7.3. Sécurité simple dans Jenkins
7.4. Domaines de sécurité — Identifier les utilisateurs Jenkins
7.4.1. Utiliser la base de données intégrée à Jenkins
7.4.2. Utiliser un annuaire LDAP
7.4.3. Utiliser Microsoft Active Directory
7.4.4. Utiliser les utilisateurs et les groupes Unix
7.4.5. Déléguer au conteneur de Servlet
7.4.6. Utiliser Atlassian Crowd
7.4.7. S'intégrer avec d'autres systèmes
7.5. Autorisation — Qui peut faire quoi
7.5.1. Sécurité basée sur une matrice
7.5.1.1. Mettre en place la sécurité basée sur une matrice
7.5.1.2. Configurer plus finement les permissions utilisateurs
7.5.1.3. A l'aide ! Je me suis verrouillé tout seul !
7.5.2. Sécurité basée sur le projet
7.5.3. Sécurité basée sur les rôles
7.6. Audit — Garder la trace des actions utilisateurs
7.7. Conclusion

7.1. Introduction

Jenkins supporte plusieurs modèles de sécurité, et peut s'intégrer avec différents gestionnaires d'utilisateurs. Dans les petites organisations, où les développeurs travaillent proches les uns des autres, la sécurité de votre machine Jenkins n'est peut-être pas un gros problème — vous pourriez juste vouloir éviter que des utilisateurs non identifiés n'altèrent vos configurations de tâches de build. Pour de plus importantes organisations, avec de multiples équipes, une approche plus stricte pourrait être nécessaire, dans laquelle seuls les membres de l'équipe et les administrateurs systèmes ont les droits pour modifier la configuration des tâches de build. Et dans des situations où Jenkins serait exposé à une audience plus large, comme un site web interne d'une entreprise, ou même sur Internet, certaines tâches de build pourraient être visibles à tous les utilisateurs alors que d'autres nécessiteraient d'être cachées aux utilisateurs non autorisés.

Dans ce chapitre, nous regarderons comment configurer différentes configurations de sécurité dans Jenkins, pour différents environnements et circonstances.