Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Make by tools (01.00.01) - action=merge_page
Scroll Ignore
scroll-viewporttrue
scroll-pdftrue
scroll-officetrue
scroll-chmtrue
scroll-docbooktrue
scroll-eclipsehelptrue
scroll-epubtrue
scroll-htmlfalse
Panel
titleSommaire

Table of Contents
stylenone

Concept

Plusieurs modules d'authentification sont disponibles, permettant d'adapter la gestion des accès selon l'infrastructure : authentification locale, LDAP/Active Directory, etc. Le module à utiliser se configure au niveau du synchronizerSynchronizer, et plusieurs modules peuvent être combinés.

Voici les différents modules présents dans Shinken : 

Panel

Children Display



Paramètres communs à tous les modules d'authentification

module_display_name

Le paramètre "module_display_name" ou "{prefix}___module_display_name" ( exemple : synchronizer__module_authentication__ldap__module_display_name ) est un paramètre commun à tous les modules, il permet de configurer le nom d'affichage d'un module qui sera ensuite affiché sur les interfaces d'authentification.

Rendu sur la page d'authentification

Warning

Dans le cas des modules qui sont placés en "failover", le nom du module affiché est le nom du premier module qui était disponible lors de la demande d'affichage, ce n'est pas forcément celui qui sera utilisé pour essayer de se connecter.

Panel

Image Added

Séquence d'authentification

 La séquence d'authentification est définie par le paramètre "synchronizer__authentication_modules_order", configuré dans le fichier de configuration du synchronizer ( voir la page : Définition du démon ( synchronizer-master.cfg )   ). Ce paramètre détermine l'ordre de sollicitation des modules d'authentification pour se connecter à l'interface du synchronizer, ainsi que les modules à utiliser en relais lorsque l'authentification échoue ou que le module précédent est indisponible.


Scroll Title
title
Code Block
languagejs
themeConfluence
synchronizer__authentication_modules_order			MON_MODULE_AUTHENTIFICATION_1 => MON_MODULE_AUTHENTIFICATION_2 => MON_MODULE_AUTHENTIFICATION_3

Composition de la séquence d'authentification

Il existe actuellement deux types de modules d'authentification sur Shinken :

  • Les modules BY_USER_PASSWORD ( Cfg_password, synchronizer-module-authentication-LDAP )
  • Les modules BY_USER_CODE ( synchronizer--module-authentication--by-mail )


La séquence d'authentification est composée d'un enchaînement d'un ou plusieurs modules du même type ou non, séparés par des flèches ( => ).

Chaque étape contient le nom d'un module à utiliser pour l'authentification, éventuellement suivi d'autres modules du même type séparés par le mot-clé <FAILOVER> : ces modules suivants sont utilisés si l'authentification échoue sur le module précédent.


Info

Il n'y a pas de limite au nombre d'étapes d'authentification dans une séquence d'authentification, ni au nombre de <FAILOVER> au sein d'une étape d'authentification.

Séquence invalide : 

Scroll Title
title
Code Block
languagejs
themeConfluence
synchronizer__authentication_modules_order   			Cfg_password <FAILOVER> synchronizer--module-authentication--by-mail => synchronizer-module-authentication-LDAP



Le Cfg_password et le synchronizer--module-authentication--by-mail étant de type différent, la séquence d'authentification sera rejetée comme invalide au redémarrage du Synchronizer.

Exemples

Trois modules sans <FAILOVER>

Dans cet exemple, l'utilisateur doit :

  • Étape 1 : S'authentifier via LDAP ( synchronizer-module-authentication-LDAP ),
  • Étape 2 : puis via un mot de passe Shinken ( Cfg_password ),
  • Étape 3 : puis par e-mail ( synchronizer--module-authentication--by-mail ).

Chaque étape devant être validée pour passer à la suivante.


Scroll Title
title
Code Block
languagejs
themeConfluence
synchronizer-module-authentication-LDAP => Cfg_password => synchronizer--module-authentication--by-mail
Trois modules avec <FAILOVER>

Dans cet exemple, l'utilisateur doit :

  • Étape 1 : S'authentifier via LDAP ( synchronizer-module-authentication-LDAP ), avec bascule sur un autre LDAP ( synchronizer-module-authentication-LDAP-secours ) en cas d'échec,
  • Étape 2 : puis s'authentifier avec un compte Shinken ( Cfg_password ) ,
  • Étape 3 : puis s'authentifier par e-mail ( synchronizer--module-authentication--by-mail ), avec bascule sur un autre serveur mail ( synchronizer--module-authentication--by-mail-secours ) en cas d'échec.


Scroll Title
title
Code Block
languagejs
themeConfluence
synchronizer-module-authentication-LDAP <FAILOVER> synchronizer-module-authentication-LDAP-secours => Cfg_password => synchronizer--module-authentication--by-mail <FAILOVER> synchronizer--module-authentication--by-mail-secours
Deux modules avec plusieurs <FAILOVER>

Dans cet exemple, l'utilisateur doit :

  • Étape 1 : S'authentifier via LDAP ( synchronizer-module-authentication-LDAP ), avec bascule successive sur un Active-directory ( synchronizer-module-authentication-LDAP-secours-1 ), puis un serveur LDAP ( synchronizer-module-authentication-LDAP-secours-2 ), puis l'authentification Shinken ( Cfg_password ) en cas d'échec,
  • Étape 2 : puis s'authentifier par e-mail ( synchronizer--module-authentication--by-mail ), avec bascule sur un autre serveur mail ( synchronizer--module-authentication--by-mail-secours ) en cas d'échec.


Scroll Title
title
Code Block
languagejs
themeConfluence
synchronizer-module-authentication-LDAP <FAILOVER> synchronizer-module-authentication-LDAP-secours-1 <FAILOVER> synchronizer-module-authentication-LDAP-secours-2 <FAILOVER> Cfg_password => synchronizer--module-authentication--by-mail <FAILOVER> synchronizer--module-authentication--by-mail-secours

Exemple complet

Pour cet exemple, la séquence suivante sera utilisée afin de voir la corrélation entre la séquence dans le fichier de configuration et le rendu sur l'interface. 

Scroll Title
title
Code Block
languagejs
themeConfluence
synchronizer-module-authentication-LDAP => Cfg_password => synchronizer--module-authentication--by-mail
Étape 1
Étape 2
Étape 3
Scroll Title
title
Code Block
languagejs
themeConfluence
synchronizer-module-authentication-LDAP
Scroll Title
title
Code Block
languagejs
themeConfluence
 Cfg_password 
Scroll Title
title
Code Block
languagejs
themeConfluence
synchronizer--module-authentication--by-mail
Panel

Image Added

Panel

Image Added

Panel

Image Added

Séquence d'authentification sur les API

Pour les API, la séquence d'authentification a un fonctionnement différent.

Les API concernées sont celles utilisant l'authentification par utilisateur ( username/password ) :


Warning

La séquence d'authentification est modifiée pour garder seulement les modules de type "BY_USER_PASSWORD" et tous les séparateurs seront remplacés par des <FAILOVER>.

Info

Il est possible de désactiver les API inutilisées afin de limiter la surface d'attaque( voir page DEPRECATED - Automatisation ( de la source vers la production ) et Supprimer des éléments ).

Exemple 

La séquence d'authentification suivante :


Code Block
languagejs
themeConfluence
synchronizer-module-authentication-LDAP => Cfg_password => synchronizer--module-authentication--by-mail


Passera en : 


Code Block
languagejs
themeConfluence
synchronizer-module-authentication-LDAP <FAILOVER> Cfg_password