Initialisation du module

Lecture des fichiers de mapping

Cas général ou les fichiers ne comporte pas d'erreur et un fichier utilisateur est précisé

[YYYY-MM-DD HH:MM:SS] INFO   : [ WEBUI-NAME      ] [ MODULE_NAME      ] [ INITIALISATION ] Read the default mapping file /etc/shinken/_default/modules/auth-active-directory/mapping.json to get default values
[YYYY-MM-DD HH:MM:SS] INFO   : [ WEBUI-NAME      ] [ MODULE_NAME      ] [ INITIALISATION ] Read the file /etc/shinken-user/configuration/modules/auth-active-directory/mapping.json to override default values


En cas d'erreur de lecture d'un fichier ( chemin erroné ) :

[YYYY-MM-DD HH:MM:SS] INFO   : [ WEBUI-NAME      ] [ MODULE_NAME      ] [ INITIALISATION ] The parameter mapping_file is defined on /etc/shinken-user/modules/auth-open-ldap/mapping.json, but this file doesn't exists. The default values are used.


Erreur de syntaxe dans le fichier JSON : virgule en trop, crochets fermant manquant, ... :

[YYYY-MM-DD HH:MM:SS] ERROR  : [ WEBUI-NAME      ] [ MODULE_NAME      ] [ INITIALISATION ] The file /etc/shinken-user/modules/auth-active-directory/mapping.json is malformed. The error is : Expecting property name enclosed in double quotes: line 5 column 1 (char 88)


Le fichier comporte un paramètre inconnue ou une erreur de syntaxe dans le nom du paramètre :

[YYYY-MM-DD HH:MM:SS] ERROR  : [ WEBUI-NAME      ] [ MODULE_NAME      ] [ INITIALISATION ] The parameter "login_place_holder" set in file "/etc/shinken-user/modules/auth-active-directory/mapping.json" is not an allowed parameter


S'il manque un paramètre pour se connecter, le module affiche un log et il ne sera pas utilisé lors de l'authentification des utilisateurs :

[YYYY-MM-DD HH:MM:SS] ERROR  : [ WEBUI-NAME      ] [ MODULE_NAME      ] [ INITIALISATION ] In the file /etc/shinken/modules/auth_active_directory.cfg:12, theses parameters are missing  : password


Résumé de la configuration chargée

Ces logs permettent de connaître la configuration utilisée par le module, qu'il y ait des erreurs de lecture de fichier ou pas.

[YYYY-MM-DD HH:MM:SS] INFO   : [ WEBUI-NAME      ] [ MODULE_NAME      ] [ INITIALISATION ] EXPLANATION : The property "contact_name" in Shinken will be compare to the LDAP attribute "uid" to authenticate user. In the login page, the placeholder is "votre.compte@shinken.local"
[YYYY-MM-DD HH:MM:SS] INFO   : [ WEBUI-NAME      ] [ MODULE_NAME      ] [ INITIALISATION ] EXPLANATION : The authentication will be done on LDAP server ldap://ldap-server on the base dc=shinken,dc=local and this server is an Open Ldap


Première connexion au serveur LDAP

Au démarrage le module tente de se connecter pour vérifier les login/mot de passe renseignés dans le module. S'ils sont bons, le message indique qu'on peut se connecter et que le module est prêt à authentifier les utilisateurs.

[YYYY-MM-DD HH:MM:SS] INFO   : [ WEBUI-NAME      ] [ MODULE_NAME      ] [ INITIALISATION ] Username and password set in cfg file /etc/shinken/modules/auth_active_directory.cfg:12 are correct and LDAP server at ldap://integrationwin-1 is available for authenticate users


Le cas échéant, le module indique les mauvais login et ne tentera pas de se reconnecter à chaque fois qu'un utilisateur tente de se connecter. L'état du module sera remonté dans le healthcheck et le check Shinken. Il faut corriger les identifiants et relancer l'arbiter

[YYYY-MM-DD HH:MM:SS] ERROR  : [ WEBUI-NAME      ] [ MODULE_NAME      ] [ INITIALISATION ] The username and password set for LDAP server ldap://integrationwin-1 in cfg file /etc/shinken/modules/auth_active_directory.cfg:12 are invalids.


Dans le cas ou le server LDAP n'est pas disponible au démarrage du module, ces logs indiquent que la tentative de reconnexion sera effectué quand un utilisateur tentera de se connecter

[YYYY-MM-DD HH:MM:SS] ERROR  : [ WEBUI-NAME      ] [ MODULE_NAME      ] [ INITIALISATION ] Can't connect to LDAP server "ldap://groy-docker" => error : Can't contact LDAP server
[YYYY-MM-DD HH:MM:SS] WARNING: [ WEBUI-NAME      ] [ MODULE_NAME      ] [ INITIALISATION ] The LDAP server ldap://groy-docker is unavailable for the moment. The connection will be retried when a user try to connect


Authentification d'un utilisateur

Les logs en INFO

Lorsque le module fonctionne et qu'il n'y a pas d'erreur lors de la recherche d'un utilisateur, le module ne log aucune INFO. Le module retourne l'utilisateur s'il l'a trouvé et False le cas échéant.

C'est la Webui qui loggue si le module a authentifié ou non un utilisateur.

Les logs de WARNING

Les logs de warning permettent de diagnostiquer les problème en logguant des informations sur les utilisateurs.

  • Dans le cas ou l'utilisateur n'a pas saisit de mot de passe :
[YYYY-MM-DD HH:MM:SS] WARNING: [ WEBUI-NAME      ] [ MODULE_NAME      ] [ AUTHENTICATION ] [ UI Visualization ] User user.example doesn't give password. It' not allowed ( authentication phase id-98e66a548bad11eb88b4080027cc5994 )
  • Dans le cas ou l'attibut LDAP renseigné dans le fichier de mapping n'a pas été trouvé sur l'objet LDAP correspondant à l'utilisateur :
[YYYY-MM-DD HH:MM:SS] WARNING: [ WEBUI-NAME      ] [ MODULE_NAME      ] [ AUTHENTICATION ] [ UI Visualization ] The LDAP object have not the attribute uuid. Can't map the attribute with the shinken key. The user value ( user.example ) will be used to found the user ( authentication phase id-98e66a548bad11eb88b4080027cc5994 )


Les logs en ERROR

Lors d'une tentative d'authentification, il est possible de rencontrer les erreurs suivantes:

  • Perte de la connexion au serveur LDAP
[YYYY-MM-DD HH:MM:SS] ERROR  : [ WEBUI-NAME      ] [ MODULE_NAME      ] [ AUTHENTICATION ] [ UI Visualization ] TODO