[SPIP Zone] sha256

Bonjour à tous,

je dois importer un fichier csv pour la gestion des auteurs (1000 auteurs)
Les mots de passe par défaut sont les numéros de licences.

Quelqu’un a t’il une astuce pour transformer ces numéros de licence en SHA256 (sans le faire manuellement).

Je n’ai pas trouvé de fonction pour libreoffice.

Merci d’avance

tofulm

Le 07/12/2012 20:33, tofulm a écrit :

Quelqu'un a t'il une astuce pour transformer ces numéros de licence en SHA256 (sans le faire manuellement).

Je sais pas si c'est pertinent dans ton cas mais peut être php ?
Ou un squelette spip en local ?

JL

Merci JLuc pour ta réponse,
j’ai fait un script en Bash qui récupère mon tableau csv et qui transforme les mdp.

Cordialement

tofulm

ah super !
tu peux nous en dire plus sur ce script sh, voir nous donner son centenu ?
merci
Alexandra

j'ai fait un script en Bash qui récupère mon tableau csv et qui transforme
les mdp.

Quelque chose comme http://jamesconner.us/article.py?article=45 ?
(exemple python mais on peut envisager php, perl, ruby, etc.)
Ou une belle combinaison de : cut sha256sum paste ...

Noter qu'il doit être possible de faire l'opération en SQL aussi...

http://blog.darkrainfall.org/2009/11/sha-256-in-mysql/

Bonjour,

Je le rends générique, en mettant en variable les options et je le place sur contrib.

Cordialement

tofulm

Le 10/12/12 07:04, Alexandra Guiderdoni a écrit :

tu peux nous en dire plus sur ce script sh, voir nous donner son centenu ?
merci

on peux jouer (il s'agit bien de ça) en spip pur aussi...

imaginons un fichier auteurs.csv du type :
     nom,prénom,licence
     versaire,annie,58f22d5
     bonbeurre,jean,82ak00b
     debain,marcelle,um01t58
que l'on aura pris soin de uploader dans IMG/csv/

on peut écrire un squelette (prod_sql.html) qui nous donnera,
en récupérant son source html, le sql nécessaire à l'insertion
en base de données :

INSERT INTO
`spip_auteurs` (`nom`, `login`, `pass`, `alea_actuel`, `alea_futur`, `source`)
VALUES
<BOUCLE_aut_csv(DATA){source csv, IMG/csv/auteurs.csv}>
#SET{alea_actuel, #REM|creer_uniqid}
#SET{alea_futur, #REM|creer_uniqid}
#SET{pass, #GET{alea_actuel}|concat{#VALEUR{2}}
[('(#VALEUR{1})][ (#VALEUR{0})'], ['(#VALEUR{0})'], ['(#GET{pass}|encode_pass)'], ['(#GET{alea_actuel})'], ['(#GET{alea_futur})'], 'spip'),</BOUCLE_aut_csv>

on utilise une fonction-filtre perso (encode_pass) que l'on
aura définie dans notre fichier mes_options.php :

   include_spip('auth/sha256.inc');
   function encode_pass($val) {
     return _nano_sha256($val);
   }

ne reste plus qu'à appeler ?page=prod_sql

Merci Denisb pour cette démonstration en SPIP.
Je viens de déposer mon script bash sur contrib mais avec ton code spip il devient obsolète.
C’est plus simple et plus pratique en spip.

Merci

tofulm

C’est super d’avoir les deux méthodes la full SPIP et la scriptable.
Merci à vous deux :slight_smile:
Je suis allée voir l’article http://contrib.spip.net/ecrire/?exec=article&id_article=4290
mais il ne me semble pas avoir trouvé le document joint du script sh
Alexandra

Le 10/12/12 12:08, Alexandra Guiderdoni a écrit :

C'est super d'avoir les deux méthodes la full SPIP

on me dit dans l'oreillette que le plan de mettre un fichier
csv en lecture http directe dans IMG/ et qui contient
les pass en clair d'accès au site ce n'est pas *du tout*
une bonne idée.

ma foi : je vous laisse juge...

Pour l’utiliser il suffit d’utiliser un spip local pour préparer la requête.
comme celà, on limite le risque de fuite des mdp.

Le 10/12/12 13:58, tofulm a écrit :

Pour l'utiliser il suffit d'utiliser un spip local pour préparer la requête.
comme celà, on limite le risque de fuite des mdp.

le truc rigolo, c'est qu'on peut uploader le fichier .csv
dans tmp/upload/ puis modifier la boucle :
   <BOUCLE_aut_csv(DATA){source csv, tmp/upload/auteurs.csv}>

et ça fonctionne tout aussi bien, mais avec le fichier original
inaccessible en accès http (protection .htaccess de tmp/).

:slight_smile:

Merci Denisb pour cette démonstration en SPIP.
Je viens de déposer mon script bash sur contrib mais avec ton code spip il
devient obsolète.

Non, plusieurs façons de faire, plusieurs cordes à l'arc des
administrateurs/webmestres :slight_smile:

C'est plus simple et plus pratique en spip.

...avec les itérateurs...

fainéant comme je suis je l'aurais fait en bash, il y'a moins de ligne à écrire !!
mais la solution spip, me parais plus élégante et portable sur d'autres sujets surtout que c'est un bel exemple d'utilisation de la boucle DATA et des itérateurs avec lesquels je joue actuellement (comme on dit dans le 95 => ça déchire grave !!!)

merci au passage DenisB pour la démonstration !!

bon spip à tous !!
Arnaud B.

Le 11/12/12 15:17, Gildas Cotomale a écrit :

Merci Denisb pour cette démonstration en SPIP.
>Je viens de déposer mon script bash sur contrib mais avec ton code spip il
>devient obsolète.

Non, plusieurs façons de faire, plusieurs cordes à l'arc des
administrateurs/webmestres:)

>C'est plus simple et plus pratique en spip.

...avec les itérateurs...