Inscrire automatiquement une liste d'utilisateurs avec myScenari

Est-il possible d’inscrire automatiquement une liste d’utilisateurs sur un serveur myScenari, par exemple à l’aide d’un fichier .csv (ou .xml généré localement) ? J’ai lu que SCENARIbatch permettait une telle opération sur une installation locale de SCENARIchain, mais l’administration des serveurs myScenari est gérée par l’association.
Sinon tant pis, je vais saisir ma liste d’utilisateurs à la main :slight_smile:

1 « J'aime »

Bonjour @Thual,

Il n’existe pas en l’état ce type de fonction coté UI permettant de créer en masse une liste d’utilisateurs.
Ce type d’action est par contre effectivement possible via SCENARIbatch, qui peut également exécuter certaines actions sur un environnement serveur distant. Docs :

A tester sur MyScenari (je ne sais pas si ce service batch y est ouvert), mais en théorie, c’est possible :slight_smile:
Cdt
Antoine
Kelis

Bonjour @thual

Je confirme que le service batch est bien présent sur les instances myScenari.

Thibaut

@thual si tu te lances dans la création d’utilisateurs en masse sur myScenari, et tu y arrives, ce serait super que tu documentes ça dans un tuto sur l’espace de rédaction de tutos communautaires. Si tu es OK, je t’y fais un accès.

1 « J'aime »

La documentation SCENARIbatch indique :

Afin de rendre utilisables les directives SCENARIbatch, il est impératif d’activer le service batch lors du paramétrage et de la compilation de la webapp.

Dans la mesure où je souhaite inscrire des utilisateurs sur un serveur MyScenari de l’association (et non pas sur un serveur ou je pourrai compiler une installation « de la webapp »), je ne pense pas avoir la main (et ne suis pas sûr d’avoir envie de l’avoir).

J’ai pu inscrire mes 36 étudiants à la main, et c’est finalement plus rapide. Nous passerons à l’échelle avec notre LDAP lorsque nous aurons installé SCENARIchain 5.0 sur le serveur de l’université (nous sommes en 4.2 pour l’instant, sans les bénéfices d’Opale 3.8).

1 « J'aime »

Comme dit plus haut, le service batch est actif.

Exemple de requête :

POST https://tha.scenari-community.org/~~chain/web/u/batch
Headers:
Content-Type: application/xml
Authorization: Basic [basic auth token]

Body:
<importUsers>
  <createOrUpdate>
    <a>
      <o account="testImport" userType="user" lastName="Test" firstName="Import" password="pw2change"/>
    </a>
  </createOrUpdate>
</importUsers>
1 « J'aime »

merci beaucoup pour l information de la requete HTTP !

cela m a entre autres permis de trouver la bonne URL qu il fallait que je passe à une requete CURL pour que ça marche avec mon SCENARIsuite-starter (container docker) derriere mon reverse proxy https avec un certificat autosigné (j avais aussi essayé la methode « normale » avec le script scBatch.sh et son fichier build.xml mais cela donne une erreur java du type « javax.net.ssl.SSLHandshakeException: No subject alternative names present », peut etre un pb de certificat que je n ai pas réussi à résoudre …)

au cas où cela pourrait etre utile à d autres personnes je mets la requete CURL que j ai passée pour que ça marche :

curl  -X POST https://x.y.z.t/scsuitestr50/~~chain/web/u/batch  -H "Content-Type: application/xml"  -H "Accept: application/xml"   -d '<importUsers><createOrUpdate><a><o account="x" userType="user" lastName="" firstName="" password="12345678" authMethod=""></o></a></createOrUpdate></importUsers>' -u admin:password

PS : pour créer utilisateur LDAP mettre authMethod=« remote »

1 « J'aime »

encore merci beaucoup pour l information de la requete HTTP !
… comme dit plus haut je lance la requete http depuis curl et cela marche bien !
… par contre j ai une question (je l ai déja posée ici : Batch scServer avec curl ? récupération message erreur (log)? ) : si j utilise curl comment puis-je faire pour recuperer le log d erreur ?? peut etre que qq chose m échappe car je suis nouveau sur scenari ?? ou alors il vaut mieux que je reessaye d utiliser le script scBatch.sh fourni ??

encore merci si vous pouvez m aider à ce sujet !