Archive for mai, 2005

Télédéclaration

On a beaucoup parlé des difficultés rencontrées par les télédéclarants de l’impôt sur le revenu. Les serveurs étaient visiblement sous dimensionnés et ne supportaient pas des montés en charge trop importantes.

En dehors de ces soucis d’infrastructure, l’application de télédéclaration proprement dite m’inspire quelques réflections :

Pourquoi gérer les certificats authentifiant les utilisateurs par le biais d’une applet java ?
Pourquoi ne pas s’appuyer sur les fonctionnalités du navigateur web ?
Sans doute pour mieux maîtriser les protocoles de communication et le format des certificats ; peut être par méfiance envers la sécurité des navigateurs. La Société Générale elle aussi en son temps (les premières versions de logitelnet) avait fait le même choix.
De plus, l’applet permet de s’affranchir des spécificités des divers navigateurs et d’automatiser les manipulations qu’auraient du faire les internautes ; évitant ainsi d’encombrer la hotline.

Ok, très bien pour l’applet.

Par contre, son implémentation me laisse perplexe.
Si on effectue la procédure à partir d’un ordinateur vierge, une première applet de « déploiement » télécharge sur le poste de l’utilisateur le fichier (librairie) « crypt_teleir.jar » et le place dans le répertoire « lib\ext » de l’installation java.
Pour accéder au disque dur du poste client qui est une ressource protégée par la machine virtuelle java, l’applet doit être signée numériquement et l’utilisateur doit expressément autoriser celle-ci à effectuer des opérations sensibles sur son ordinateur. Pour ce faire, une boite de dialogue apparaît. C’est le fonctionnement normal de la sandbox java qui permet de se prémunir des éventuels virus.

Mais pourquoi déployer explicitement cette librairie ?
Pourquoi ne pas laisser tout simplement la deuxième applet, celle qui gère la déclaration, télécharger elle même de façon transparente pour l’utilisateur, les bibliothèques dont elle a besoin. Ces dernières se seraient alors retrouvées dans le cache du plugin java. Ainsi la première étape aurait été évitée.
Sans compter, qu’il peut être dangereux d’installer des librairies dans le répertoire « lib\ext » car ce répertoire est un peu spécial ; toutes les librairies qui s’y trouvent ont tous les droits sur la machine.
Cette librarie, si elle n’est pas correctement codée, pourrait ouvrir une faille de sécurité sur 3 millions de PC (ou mac ou linux…) français !
Je vous conseille donc, une fois votre déclaration effectuée de déplacer ce fichier dans un autre répertoire (dans « mes documents » par exemple) voir de le supprimer.

Poursuivons notre corvée administrative, je saisis mon numéro de télédéclarant, mon revenu de référence de 2003 et j’obtiens mon certificat. La fameuse applet l’a copié dans le répertoire « c:\teleir ».
Du moins sous Windows, si je suis sous linux, l’applet essaie de le sauvegarder sous « /teleir ». Et là erreur !!
Car avec un compte utilisateur lambda, on n’a pas les droits systèmes (au niveau de l’OS) suffisants pour créer un répertoire à la racine.
Que faire alors pour déclarer sous linux ? Lancer le navigateur avec le compte root. Pas terrible…
Il aurait été probablement plus judicieux de sauvegarder les certificats dans le repertoire personnel de l’utilisateur (« /home » ou « mes documents ») ou encore de laisser le choix du répertoire au télédéclarant.

Enfin, malgré les serveurs saturés, les choix techniques discutables, cela fonctionne et ça c’est déjà pas mal !