Le modèle de sécurité le plus simple disponible dans Jenkins permet aux utilisateurs authentifiés de faire tout ce qu'ils veulent, alors que les utilisateurs non authentifiés auront seulement une vue en lecture seule de leurs tâches de build. C'est super pour les petites équipes - les développeurs peuvent gérer les tâches de build, alors que les autres utilisateurs (testeur, analyste métier, responsable de projet, etc.) peuvent accéder aux tâches de build pour voir l'état du projet. En effet, certaines tâches pourraient même être configurées uniquement dans ce but, affichant les résultats de tests d'acceptation automatisés ou des métriques de qualité de code, par exemple.
Vous pouvez mettre en place ce type de configuration en choisissant “Les utilisateurs connectés peuvent tout faire” dans la section Autorisations. Il y a plusieurs façons dans Jenkins pour authentifier les utilisateurs (voir Section 7.4, “Domaines de sécurité — Identifier les utilisateurs Jenkins”), mais pour cet exemple, nous allons utiliser l'option la plus simple, qui est d'utiliser la base de données intégrée à Jenkins (voir Section 7.4.1, “Utiliser la base de données intégrée à Jenkins”). C'est la configuration illustrée dans Figure 7.1, “Activer la sécurité dans Jenkins”.
Assurez-vous de cocher l'option "Autoriser les utilisateurs à se connecter". Cette option affichera un lien Se connecter en haut de l'écran permettant aux utilisateurs de créer leurs propres comptes (voir Figure 7.2, “La page de connexion Jenkins”). C'est une bonne idée pour les développeurs d'utiliser ici leur nom d'utilisateur de gestionnaire de sources : dans ce cas, Jenkins sera capable de retrouver quels utilisateurs ont contribué aux changements qui ont déclenché un build particulier.
Cette approche est évidemment un peu trop simple pour beaucoup de situations — il est utile pour les petites équipes de travailler en forte proximité, où le but est de connaitre le changement de qui a déclenché (ou cassé) un build particulier, plutôt que de gérer l'accès de façon plus restrictive. Dans les sections suivantes, nous discuterons de deux aspects orthogonaux de la sécurité Jenkins : identifier vos utilisateurs (domaines de sécurité) et déterminer ce qu'ils sont autorisés à faire (Autorisation).