Passer au contenu principal

Plugin Jenkins

Casdoor fournit un plugin qui permet aux utilisateurs de se connecter à Jenkins. Ici, nous allons vous montrer comment utiliser le plugin Casdoor pour la sécurité de Jenkins.

Voici quelques-uns des paramètres de configuration :

CASDOOR_HOSTNAME : Le nom de domaine ou l'IP où le serveur Casdoor est déployé.

JENKINS_HOSTNAME : Le nom de domaine ou l'IP où Jenkins est déployé.

Étape 1 : Déployer Casdoor et Jenkins

Tout d'abord, déployez Casdoor et Jenkins.

Après un déploiement réussi, assurez-vous de ce qui suit :

  1. Définissez l'URL Jenkins (Gérer Jenkins -> Configurer le système -> Emplacement Jenkins) sur JENKINS_HOSTNAME. URL Jenkins
  2. Vérifiez que Casdoor peut être connecté et utilisé normalement.
  3. Définissez la valeur origin de Casdoor (conf/app.conf) sur CASDOOR_HOSTNAME. Configuration Casdoor

Étape 2 : Configurer l'application Casdoor

  1. Créez une nouvelle application Casdoor ou utilisez-en une existante.
  2. Ajoutez une URL de redirection : http://JENKINS_HOSTNAME/securityRealm/finishLogin Paramètres de l'application Casdoor
  3. Ajoutez le fournisseur souhaité et fournissez tous les paramètres supplémentaires.

Sur la page des paramètres de l'application, vous trouverez deux valeurs : Client ID et Client secret, comme indiqué dans l'image ci-dessus. Nous utiliserons ces valeurs à l'étape suivante.

Ouvrez votre navigateur préféré et visitez http://CASDOOR_HOSTNAME/.well-known/openid-configuration pour voir la configuration OIDC de Casdoor.

Étape 3 : Configurer Jenkins

Maintenant, vous pouvez installer le plugin Casdoor depuis le marché ou en téléchargeant son fichier jar.

Après l'installation, allez dans Gérer Jenkins -> Configurer la sécurité globale.

Suggestion : Sauvegardez le fichier config.xml de Jenkins et utilisez-le pour la récupération en cas d'erreurs de configuration.

Paramètres de Jenkins

  1. Dans la section Domaine de sécurité, sélectionnez "Plugin d'authentification Casdoor".
  2. Dans le champ Point de terminaison Casdoor, entrez le CASDOOR_HOSTNAME mentionné précédemment.
  3. Dans le champ ID client, entrez le Client ID mentionné précédemment.
  4. Dans le champ Secret client, entrez le Client secret mentionné précédemment.
  5. Dans le champ Clé publique JWT, fournissez la clé publique utilisée pour valider le jeton JWT. Vous pouvez trouver la clé publique dans Casdoor en cliquant sur Cert en haut. Après avoir cliqué sur edit sur votre application, vous pouvez copier la clé publique depuis la page suivante. Clé publique JWT
  6. Le nom de l'organisation et le nom de l'application sont facultatifs. Vous pouvez spécifier votre organisation et application pour vérifier les utilisateurs dans d'autres organisations et applications. Si ces champs sont laissés vides, le plugin utilisera l'organisation et l'application par défaut.
  7. Dans la section Autorisation, cochez "Les utilisateurs connectés peuvent tout faire". Désactivez "Autoriser l'accès en lecture anonyme".
  8. Cliquez sur Save.

Jenkins vous redirigera automatiquement vers Casdoor pour l'authentification.