Protéger le code source des macros

Discussions et questions sur tout ce qui concerne la programmation sous StarOffice NeoOffice ou OpenOffice.org tous langages et tous modules confondus.

Modérateur: Vilains modOOos

Règles du forum
:alerte: Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !

Protéger le code source des macros

Messagepar Gastiflex » 09 Juin 2006 11:21

Bonjour,
je voudrais savoir s'il est possible de protéger le code source d'une macro. En effet, j'ai un add-on pour OpenOffice que je souhaite distribuer et il faudrait que l'utilisateur ne puisse pas voir le code et encore moins le modifier
Merci
Gastiflex
Membre lOOoyal
Membre lOOoyal
 
Messages: 47
Inscrit le: 19 Avr 2006 12:02

Messagepar Péna » 09 Juin 2006 11:31

bonjour,

je suis novice aussi, mais il me semble, si j'ai bien compris ta question, que tu as la réponse dans le post de cris 59 : "[Résolu] Protéger le code" dans la section Macros et API.

(dsl j'aurai bien placé un lien mais je sais pas comment on fait, lol)

voila voila
OOo 2.0.3 sous Windows XP SP2
Avatar de l’utilisateur
Péna
Membre OOorganisé
Membre OOorganisé
 
Messages: 70
Inscrit le: 01 Juin 2006 16:27
Localisation: Toulouse

Messagepar Dude » 09 Juin 2006 11:58

Exact ! Il faut penser à faire une recherche avant de poster :
http://forum-openoffice.org/forum/ftopi ... -prot.html
OOo 3.1.0 EN sous Windows XP SP3

Pratique, utilisez le service CiJoint pour joindre un exemple et illustrer votre propos.

Poser une question, c'est bien. Répondre aux autres, c'est encore mieux.

Améliorer OOo en votant les issues
Avatar de l’utilisateur
Dude
GourOOou
GourOOou
 
Messages: 7233
Inscrit le: 03 Mar 2006 09:45
Localisation: Lyon, France

Messagepar Gastiflex » 09 Juin 2006 12:09

Merci,
mais est ce qu'il serait possible de faire cela automatiquement ? Je ne peux pas demander à l'utilisateur d'aller vérouiller lui même le code de la macro :D
J'ai vu qu'on pouvait protéger par mot de passe en mettant un booléen à true dans les fichier script.xlb et dialog.xlb.
- j'arrive à protéger les macros par mot de passe grâce à ces fichiers, mais comment choisir un mot de passe ?
- si je fais comme ça, cela veut dire qu'un utilisateur un peu bidouilleur peu aller trifouiller ces deux fichiers et dévérouiller le code ?
- à quoi servent exactement ces deux fichiers, et quelle est la différence entre les deux ?

Edit : dites moi si je me trompe, mais j'ai l'impression que le fait de protéger les macros par un mot de passe empêche non seulement de lire le code mais également de l'exécuter.
Gastiflex
Membre lOOoyal
Membre lOOoyal
 
Messages: 47
Inscrit le: 19 Avr 2006 12:02

Protection des macros

Messagepar Pierre-Yves Samyn » 12 Juin 2006 11:45

Bonjour

Gastiflex a écrit:Je ne peux pas demander à l'utilisateur d'aller vérouiller lui même le code de la macro


Avec la méthode indiquée (mot de passe mis sur la bibliothèque) c'est le développeur qui fait cela une fois pour toutes...

Gastiflex a écrit:J'ai vu qu'on pouvait protéger par mot de passe en mettant un booléen à true dans les fichier script.xlb et dialog.xlb.


La méthode indiquée répond totalement au besoin.

Gastiflex a écrit:j'ai l'impression que le fait de protéger les macros par un mot de passe empêche non seulement de lire le code mais également de l'exécuter.


Non aucun problème.

En complément si l'installation, en tant qu'administrateur, de l'add-on est faite en mode partagé (dans le repertoire share) la bibliothèque sera de toute manière protégée même si aucun mot de passe n'est mis. Le code pourra être consulté, voire copié, mais il ne sera pas modifiable, OOo n'y étant d'ailleurs pour rien : juste une question de droits d'ecriture dans un repertoire géré par le systeme d'exploitation
OOo 3.1 windows XP

A lire avant tout !
Pierre-Yves Samyn
GourOOou
GourOOou
 
Messages: 6861
Inscrit le: 02 Mai 2006 10:42

Messagepar Gastiflex » 12 Juin 2006 12:00

Merci, j'ai protégé la librairie avant de zipper l'addon (avec l'outil de Marcelly) et c'est bon, excepté ce problème que je ne peux plus exécuter les macros protégées. Mais j'ai testé une fois et pas très proprement.
Voici comment je fais pour installer l'addon :
unopkg add .\user\uno_packages\WriterCorrection.zip

C'est la bonne méthode ?
Gastiflex
Membre lOOoyal
Membre lOOoyal
 
Messages: 47
Inscrit le: 19 Avr 2006 12:02

Protection des macros

Messagepar Pierre-Yves Samyn » 13 Juin 2006 08:15

Bonjour

Gastiflex a écrit:Voici comment je fais pour installer l'addon :
unopkg add .\user\uno_packages\WriterCorrection.zip

C'est la bonne méthode ?


C'en est une.

Depuis la version 2 l'install d'un add-on est plus simple puisqu'on peut le faire directement depuis le menu Outils Gestionnaire de packages, donc quand OpenOffice est ouvert.

Passer en ligne de commande par unopkg est en revanche indispensable pour faire une installation en mode "partagé" (dossier share) puisqu'aucune instance d'OpenOffice ne doit tourner (y compris le démarrage rapide).

De l'information peut être trouvée ici :

http://api.openoffice.org/DevelopersGuide/unopkg.html

Concernant le blocage des macros, une autre piste ne serait-elle pas plus simplement la gestion mise en oeuvre de la sécurité (Outils Options OpenOffice Sécurité + sources de confiance) ?
OOo 3.1 windows XP

A lire avant tout !
Pierre-Yves Samyn
GourOOou
GourOOou
 
Messages: 6861
Inscrit le: 02 Mai 2006 10:42

Messagepar Gastiflex » 13 Juin 2006 09:36

Mon problème d'exécution, ça ressemble plus à un gros plantage qu'autre chose. Mais comme pas hasard ça le fait que sur la macro sur laquelle je bosse. J'en ai essayé une plus simple, je met un mot de passe, je crée l'addon, je le zippe, je supprime la librairie, je l'installe avec unopkg et c'est bon, la macro se lance et est protégée.
Est ce que l'outil de B Marcelly sur les addons est compatible avec la OOo 2.0 ?
Au pire, je pourrais faire l'addon à la main. J'ai compris la structure de addon.xcu, mais je ne sais pas ce qu'il faut mettre dans le zip.
Gastiflex
Membre lOOoyal
Membre lOOoyal
 
Messages: 47
Inscrit le: 19 Avr 2006 12:02

Messagepar bm92 » 13 Juin 2006 13:34

Gastiflex a écrit:Est ce que l'outil de B Marcelly sur les addons est compatible avec la OOo 2.0 ?

Oui.
L'addon obtenu peut être installé "à l'ancienne" (malgré un message d'avertissement), avec unopkg, ou par le menu Outils > Gestionnaire de packages.
bm92
SuppOOorter
SuppOOorter
 
Messages: 1279
Inscrit le: 26 Nov 2005 15:42

Messagepar Gastiflex » 14 Juin 2006 12:08

Apparemment je ne suis pas le seul à avoir ce problème.
http://www.oooforum.org/forum/viewtopic.phtml?t=31734&highlight=password
J'ai lu les threads de Pitounet, mais je n'ai pas tout compris. Il semblerait que ce soit un bug d'OpenOffice, mais j'ai pas bien saisi s'il y avait une solution, et si oui, laquelle.
Gastiflex
Membre lOOoyal
Membre lOOoyal
 
Messages: 47
Inscrit le: 19 Avr 2006 12:02

Messagepar Dude » 14 Juin 2006 12:53

bm92 a fait une liste des issues traitant de cela :
http://forum-openoffice.org/forum/sutra4336.html#4336
OOo 3.1.0 EN sous Windows XP SP3

Pratique, utilisez le service CiJoint pour joindre un exemple et illustrer votre propos.

Poser une question, c'est bien. Répondre aux autres, c'est encore mieux.

Améliorer OOo en votant les issues
Avatar de l’utilisateur
Dude
GourOOou
GourOOou
 
Messages: 7233
Inscrit le: 03 Mar 2006 09:45
Localisation: Lyon, France

Messagepar Gastiflex » 14 Juin 2006 15:29

Bon, le problème vient du fait que OOo plante si on utilise une déclaration de type dans une librairie protégée.
Issue n° 62476

La solution serait de déclarer les types dans une librairie non protégée.

Dernière question : c'est moi ou il n'y a pas besoin d'entrer le mot de passe d'une macro protégée pour la supprimer ?
Gastiflex
Membre lOOoyal
Membre lOOoyal
 
Messages: 47
Inscrit le: 19 Avr 2006 12:02


Retourner vers Macros et API

Qui est en ligne ?

Utilisateurs parcourant actuellement ce forum : Yahoo [Bot] et 1 invité