SCENARIchain-server 5.0 (Linux) - Activation de l'authentfication LDAP

Bonjour,

Je suis en train d’installer SCENARIchain-server 5.0 (Linux) sur un nouveau serveur.

J’aimerais activer l’authentification LDAP mais malgré le paramétrage fait dans le fichier users.properties suivi de la commande scenarichain-server5.0-cfg reconfig, je ne peux pas, depuis la gestion d’un utilisateur, sélectionner l’authentification LDAP pour un utilisateur que j’ai créé en tant qu’admin (la sélection de l’authentification n’est pas permise, et l’élément concerné reste en grisé).
Et je ne vois pas d’erreurs d’indiquées dans les logs du jour au niveau du répertoire /var/log/scenarichain-server5.0/scstatic_2021-06-18.log.

Est-ce que vous voyez ce qui peut poser problème, svp?

Les utilisateurs system et superadmin apparaissent par ailleurs non actifs dans la gestion des utilisateurs alors que c’est bien indiqué au niveau de leurs profils respectifs que leur mot de passe a été modifié la dernière fois que j’ai j’ai effectué la commande scenarichain-server5.0-cfg reconfig.
Est-ce normal?

Merci,

Bonjour,

Dans users.properties, avez-vous bien affecté cette propriété :

# LDAP [boolean]  : active / désactive les fonctions LDAP
user.ldap.disabled=false

Cdt,
Antoine
Kelis

Bonjour,

Oui, merci, nous avons bien affecté la variable comme ci-dessous:

LDAP [boolean] : active / désactive les fonctions LDAP

user.ldap.disabled=false

Ainsi que les variables ci-dessous:

  • user.system.password
  • user.superadmin.password
  • user.ldap.url
  • user.ldap.baseNamePattern
  • user.ldap.searchPattern
  • user.ldap.searchAccount
  • user.ldap.searchPassword

Bien à vous,

Isabelle

Bonjour,

J’ai regardé depuis pour installer comme suit slapd et ldap-utils en pensant que le problème pouvait venir de là comme la commande ldapsearch n’existait pas sur le serveur mais apparemment non, cela ne règle pas le problème dans SCENARIchain-server…

  • apt install -t buster-backports -y slapd
  • apt install -t buster-backports -y ldap-utils
  • apt update
  • apt upgrade -t buster-backports
  • systemctl restart apache2
  • scenarichain-server5.0-cfg reconfig

La commande ci-dessous fonctionne sinon désormais en ligne

  • ldapsearch -x -h {host référencé dans users.properties} -b « {base dn référencée dans users.properties} » -s sub -D { user.ldap.searchAccount référencé dans users.properties} -W uid=scenari

Avez-vous une idée de ce qui poserait problème, svp?
Merci,

Bien à vous,

Isabelle

Bonjour,

Quel est là valeur de votre user.ldap.searchPattern ? uid={0} ?

Pas tout à fait, j’ai le paramétrage ci-dessous, mais je vais tester avec la valeur que vous m’indiquez, merci

LDAP : {0} pour le compte d’authentification; {1} pour le mot de passe

user.ldap.searchPattern=(&(objectClass=*)(uid={0}))

Pour information, je viens d’essayer avec le paramétrage ci-dessous en rechargeant ensuite la configuration de Scenarichain-server mais ce n’est pas mieux:

  • user.ldap.searchPattern=uid={0}

le login (par exemple xxxxx ) que vous avez configurer dans Scenari, il est bien exactement la même valeur qu’un « uid » de votre LDAP ? (uid={0}) fait pareil ?

Oui c’est pareil en définissant le paramètre comme suit:
user.ldap.searchPattern=(uid={0})

Et le paramètre ci-dessous correspond bien à un uid existant dans notre LDAP si c’est bien cela le sens de votre question :wink::
user.ldap.searchAccount=uid=scenari,ou=system,dc=unicaen,dc=fr

Exemple de configuration :

  • user.ldap.url : ldap://monldap.test
  • user.ldap.baseNamePattern : ou=utilisateurs,dc=monldap,dc=test
  • user.ldap.searchPattern : (uid={0})
  • user.ldap.searchAccount : uid=scenari,ou=system,dc=monldap,dc=test
  • user.ldap.searchPassword : xxxxxxxxxxxxxxxxxxxxxxxxxxxx

Il faudra crée les comptes dans Scenari avec comme nom de Compte « toto » qui correspond à un compte présent dans « ou=utilisateurs,dc=monldap,dc=test » (ou sous arborescence) avec comme uid « toto ».

Bonjour,

Merci pour votre retour.

J’ai revu l’ensemble des paramètres que vous m’avez indiqués, lancé la commande scenarichain-server5.0-cfg reconfig, fait attention dans Scenari au nom de compte pour qu’il soit bien identifié avec l’uid LDAP.

Mais après plusieurs essais, je n’ai toujours pas la possibilité de définir l’authentification LDAP dans le profil d’un utilisateur pour lequel j’ai défini comme nom de compte l’uid LDAP correspondant.

Il y a cependant quelque chose qui m’nterpelle lorsque je veux définir le pseudo d’un utilisateur défini dans LDAP en y indiquant la même valeur que le nom du compte, ie l’uid LDAP, j’ai une erreur qui s’affiche en indiquant que L’identifiant d’utilisateur xxxxxx a déjà été utilisé.
Est-ce normal?

Bien à vous,

Bonjour,

C’est bon, je peux désormais définir l’authentification LDAP au niveau de la définition d’un compte utilisateur.

Par contre, je n’ai pas réussi à voir ce qui a résolu le problème au final, j’ai juste constaté un moment donné que la sélection de l’authentification LDAP était désormais possible.
Ce que j’ai fait cependant avant de le constater au cas où ça aurait eu un impact, c’est que j’ai installé un SCENARIchain-client 5.0 sur mon poste Windows, et y ai défini ensuite un entrepôt distant pour le même environnement que SCENARIchain-server 5.0 (Linux).

Et après avoir corrigé le paramétrage de la valeur de user.ldap.url qui causait l’erreur ci-dessous en incluant la base dn à la fin de l’url à tort, j’ai pu faire fonctionner sans soucis l’authentification LDAP:

1— Error : Thu Jul 01 11:01:33 CEST 2021[348] - prl-chain-app/anonymous (qtp120694604-589) —
Echec à la connection LDAP.

2— Exception : Thu Jul 01 11:01:33 CEST 2021[348] - prl-chain-app/anonymous (qtp120694604-589) —
[LDAP: error code 32 - No Such Object]
javax.naming.NameNotFoundException: [LDAP: error code 32 - No Such Object]; remaining name ‹ ou=people,dc=unicaen,dc=fr ›
at java.naming/com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3284)
at java.naming/com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:3205)
at java.naming/com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2996)
at java.naming/com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1875)
at java.naming/com.sun.jndi.ldap.LdapCtx.c_search(LdapCtx.java:1798)
at java.naming/com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentDirContext.java:392)

Bien à vous,

Isabelle

Bonjour Isabelle,

Peut etre un souci de cache du navigateur (si vous aviez le problème via l’interface web), ou l’environnement client scenari non relancé (si vous aviez e problème via l’ancienne interface).

Cdt
Antoine
Kelis

Oui, en effet, c’est bien possible que j’ai eu un problème de cache du navigateur comme j’avais le souci depuis l’interface web de SCENARIchain-server 5.0 (Linux).
A suivre…
Merci pour votre support.