Dans le monde de l’intégration de données, la sécurité des transferts de fichiers est primordiale, surtout lorsqu’il s’agit de manipuler des données sensibles à travers des protocoles comme FTPS. Talend, en tant que solution ETL robuste, offre des composants pour gérer ces transferts. Cet article se propose de détailler la mise en place d’une connexion FTPS sécurisée avec Talend Open Studio version 5.2.2, ainsi que les solutions pour pallier certaines limitations de cette version en matière d’envoi de fichiers.

Connexion FTPS avec Talend 5.2.2 :

La version 5.2.2 de Talend Open Studio prend en charge la connexion FTPS à travers le composant tFTPConnection. Ce composant est essentiel pour établir une connexion sécurisée avec un serveur distant. Pour renforcer la sécurité et s’assurer de l’authenticité du serveur, Talend permet l’utilisation de certificats SSL/TLS.

Enregistrement du Certificat :

Avant de pouvoir utiliser un certificat avec Talend, il est nécessaire de l’enregistrer dans le keystore de Java. Voici les étapes à suivre :

  1. Placez votre fichier de certificat (.crt) sur votre machine.
  2. Ouvrez une invite de commande et naviguez vers le répertoire contenant l’outil keytool, qui se trouve généralement dans C:\Program Files\Java\jre7\bin.
  3. Exécutez la commande suivante pour importer le certificat dans votre keystore Java :
    keytool -import -trustcacerts -alias root -file nameofcertificat.crt -keystore nameofkeystore.jks

Remplacez nameofcertificat.crt par le nom de votre fichier de certificat et nameofkeystore.jks par le nom que vous souhaitez donner à votre keystore.

Récupération de Fichiers :

Pour la récupération de fichiers, Talend 5.2.2 offre le composant tFTPGet qui fonctionne de manière efficace pour télécharger des fichiers depuis un serveur FTPS.

Limitation sur l’Envoi de Fichiers :

Cependant, cette version de Talend ne prend pas en charge l’envoi de fichiers via FTPS avec un composant dédié comme tFTPPut. Pour contourner cette limitation, les utilisateurs peuvent se tourner vers une solution alternative : l’utilisation de la commande système curl.

Utilisation de Curl pour l’Envoi de Fichiers :

Curl est un outil en ligne de commande disponible sur http://curl.haxx.se qui permet de transférer des données avec des protocoles réseau, y compris FTPS. Dans Talend, le composant tSystem peut être utilisé pour exécuter des commandes système, y compris celles de Curl.

Voici quelques exemples de commandes pour envoyer des fichiers, bien que le temps d’envoi puisse être assez long :

  • Pour envoyer un fichier CSV :
    c:/Talend/curl.exe -login:mdp --cacert c:/Talend/certificat.crt -T c:/Talend/out.csv ftps://serveurdistant:990
  • Pour envoyer un fichier XML avec désactivation du mode passif étendu :
    c:/Talend/curl.exe -login:mdp --disable-epsv --cacert c:/Talend/ftps-cw.crt -T c:/Talend/out.xml ftps://serveurdistant:990
  • Pour envoyer un fichier XML avec une méthode FTP spécifique et désactivation du mode passif étendu :
    c:/Talend/curl.exe -login:mdp --ftp-method nocwd --disable-epsv --cacert c:/Talend/ftps-cw.crt -T c:/Talend/out.xml ftps://serveurdistant:990

Conclusion :

Bien que Talend 5.2.2 offre une prise en charge partielle pour le travail avec FTPS, il existe des méthodes pour surmonter ses limites. L’enregistrement de certificats dans le keystore de Java et l’utilisation de Curl via tSystem permettent de gérer de manière sécurisée la connexion et le transfert de fichiers avec des serveurs FTPS. Il est important de noter que ces opérations peuvent être sujettes à des temps de transfert prolongés et qu’une planification adéquate doit être prise en compte lors de l’intégration de ces processus dans vos flux de travail Talend.