importazione utenti

importazione utenti

di Filippo Galati -
Numero di risposte: 7

Salve,

 

dovrei importare gli utenti di una piattaforma docebo in moodle e ho i seguenti dubbi:

 

1. c'è un modo per importare le password md5, evitando che il sistema riapplichi l'algoritmo?

2. per importare i campi personalizzati, li creo e poi li ripropongo sul csv da importare?

 

Grazie anticipatamente per l'aiuto

Media dei voti:  -
In riposta a Filippo Galati

Re: importazione utenti

di Andrea Bicciolo -
Immagine Core developers Immagine Plugin developers Immagine Translators
Ciapo Filippo,

se carichi gli utenti via CSV tramite la funzione "Importa utenti" di Moodle, se nel file è presente la colonna password verrà applicato l'hash della password più un salt. Sul tema "password salting" ci possono essere differenze in base alla versione di Moodle e alla versione del PHP, puoi approfondire la tematica nella documentazione: http://docs.moodle.org/26/en/Password_salting.

I campi personalizzati del profilo utente sono supportati dalla funzione "Importa utenti", in accordo alla documentazione tali campi devono essere creati prima dell'importazione: http://docs.moodle.org/26/en/Upload_users#Fields_that_can_be_included
In riposta a Andrea Bicciolo

Re: importazione utenti

di Filippo Galati -

Intanto grazie per la pronta riposta,

 

riguardo il primo punto, in questo modo però avrò "l'hash dell'hash", visto che le mie password non son in chiaro?

In riposta a Filippo Galati

Re: importazione utenti

di Matteo Scaramuccia -

Ciao Filippo,
si, avrai il problema dell'hash doppio, vanificando ogni sforzo di mantenere le vecchie password.

Premesso che stante anche la debolezza dell'encryption io forzerei il reset, potresti però operare l'import aggiungendo al database una tabella "esterna" a Moodle - cioè non condivide il suo prefisso, ad esempio x_docebo2moodle_auth - , quindi popolarla con un import CSV delle sole colonne username e password e quindi utilizzare l'autenticazione esterna su database, http://docs.moodle.org/26/en/External_database_authentication, per poter utilizzare ancora le vecchie password.

Io personalmente ti suggerirei di resettare le password, al più scrivendo un plugin di autenticazione custom - potresti derivare direttamente auth/db - che le legga da quella tabella e, per ogni utente che farà login con successo, ne trascriva anche la password validata direttamente nelle tabelle di Moodle; ovviamente ne deve valere la pena cioè vuoi che la migrazione sia la più indolore possibile per lo meno sulla autenticazione... anche se poi l'esperienza utente sarà completamente diversa.

HTH,
Matteo

In riposta a Matteo Scaramuccia

Re: importazione utenti

di Nicola Ribatti -
Ciao Matteo, scusa ho trovato questo vecchio post.... vorrei migrare, insieme agli utenti, anche le loro password, non ho però capito bene la soluzione che proponevi.... potresti descriveral in modo ancor più 'semplice' per un povero newbie? Grazie mille NIcola
In riposta a Nicola Ribatti

Re: importazione utenti

di Matteo Scaramuccia -

Ciao Nicola,
sarebbe opportuno che tu ci raccontassi cosa vuoi migrare degli utenti e da dove ma, supponendo tu abbia a disposizione una tabella su un database in cui sia possibile leggere i valori delle colonne per username e password di un generico applicativo/sito terzo, in breve devi:

  1. Configurare il plugin per l'autenticazione da fonti SQL esterne: https://docs.moodle.org/30/en/External_database_authentication
  2. I tuoi utenti "esterni" si autenticheranno con successo a Moodle SE il campo password della tabella "esterna" avrà un algortimo di criptaggio noto e quindi configurato correttamente sul plug-in: https://docs.moodle.org/30/en/External_database_authentication#Additional_Notes

Se invece vuoi fare in modo che gli utenti vengano migrati e vuoi rimuovere quanto prima il database sorgente dovrai allora scrivere un plugin di autenticazione personalizzato e creare una tabella di appoggio per tenere memoria di tutti questi utenti "esterni" sempre disponibili anche quando il sistema "esterno" non esisterà più.

HTH,
Matteo

In riposta a Matteo Scaramuccia

Re: importazione utenti

di Nicola Ribatti -
Ciao Matteo, vorrei migrare gli utenti da una piattaforma moodle a un'altra, appena installata su un'altra macchina. Ho scaricato gli utenti definiti sulla prima installazione attraverso il comando "azione di massa" e ho poi caricato il file csv sulla seconda installazione. GLi utenti sono stati caricati, non le password. In questo caso, come potrei migrare anche le password degli utenti definiti sulla prima installazione? Grazie mille NIcola
In riposta a Nicola Ribatti

Re: importazione utenti

di Matteo Scaramuccia -

Ciao Nicola,
potresti copiare le password da un DB all'altro così come le trovi scritte SE le versioni Moodle sono abbastanza simili: quali sono, la sorgente e la destinazione?

Se gli utenti sono pochi puoi fare a mano altrimenti gestisci il tutto con uno script ad hoc per fare girare sul DB di destinazione una query del tipo:

UPDATE
mdl_user
SET
password = 'whatever_written_in_the_source_DB_given_the_username_in_the_target_DB'
WHERE
username='XYZ';

dove la password venga letta dal DB del Moodle "sorgente", data la username dell'utente.

HTH,
Matteo