> Tech
Trucs & Astuces : requêtes RPG, commandes IFS

Trucs & Astuces : requêtes RPG, commandes IFS

Les trucs & astuces de la semaine du 26 Juin au 2 Juillet 2006

Lire l'article
Améliorer et ajuster la performance de l’IFS, 2e partie

Améliorer et ajuster la performance de l’IFS, 2e partie

par Richard Theis, Mis en ligne le 14/06/2006 - Publié en Février 2006

L’IFS est un système de fichiers solide, évolutif, fiable et hautement disponible. Peut-il aussi être très performant? Si vous pensez que non, lisez ce qui suit car vous pourriez bien trouver quelques conseils qui modifieront votre opinion. Et même si vous répondez oui, il se pourrait bien que quelques-uns des conseils, pas tellement connus, de cet article contribuent à affiner la performance de l’IFS.Cet article est le second d’une série de deux contenant des conseils et des astuces visant à améliorer et à régler finement les performances de l’IFS. Cet article donne des conseils visant la performance des fichiers stream, tandis que le précédent (« Améliorer et ajuster la performance de l’IFS, 1ère partie », novembre 2005, ou www.itpro.fr Club abonnés) s’intéressait aux performances générales et aux répertoires. D’une manière générale, les conseils des deux articles vont du général au spécifique et devraient améliorer le fonctionnement de l’IFS tant sur le plan global que sur celui des applications. Cependant, pour tenir compte de certaines réserves en matière de performances, veuillez lire l’avertissement à la fin de cet article.

On sait que l’IFS comprend 10 systèmes de fichiers uniques. Mais, en matière de performance générale de l’IFS, les systèmes de fichiers racine (/), QOpenSys et définis par l’utilisateur (UDFS, user-defined file systems) sont généralement impliqués. Par conséquent, dans cet article et dans le précédent, les conseils et le terme « systèmes de fichiers » s’appliquent à ces trois systèmes.

Les objets fichier stream contiennent la plupart des données du système de fichiers. Les conseils visant à améliorer les performances des répertoires, dans la 1ère partie de cet article, devraient vous aider à obtenir beaucoup plus rapidement les données de vos fichiers stream. Les conseils suivants optimiseront l’utilisation de vos données de fichiers stream.

Lire l'article
Considérations sur la sécurité de XML

Considérations sur la sécurité de XML

par Sharon L. Hoffman, Mis en ligne le 24/05/2006 - Publié en Janvier 2006

En tant que consommateurs, nous sommes tous soucieux de sécurité et de discrétion. Nous redoutons la fraude à la carte de crédit lors des achats en ligne, nous confions prudemment des données confidentielles comme le numéro de sécurité sociale, et beaucoup d’entre nous s’inquiètent de voir que les professions de santé partagent des données médicales électroniquement. Il est donc curieux que beaucoup d’entre nous se soucient fort peu du risque potentiel de sécurité, de confidentialité et d’intégrité des données, que présente la transmission d’un document non crypté comme pièce jointe de courriel ou via FTP.Quand les données sont codées pour les rendre plus portables, les risques de divulgation sont encore plus grands, parce que les intrus ont beaucoup plus « d’information sur l’information » - ce qu’on appelle les métadonnées – pour évaluer facilement la valeur des messages interceptés. Le plus répandu de ces procédés d’encodage est XML – une lingua franca puissante pour déplacer des enregistrements de gestion entre des réseaux et des plates-formes informatiques. La sécurité et l’intégrité des données revêtent une importance toute particulière quand les entreprises commencent à utiliser XML pour échanger des données.
Heureusement, les inventeurs de XML ont prévu le besoin de sécuriser la transmission et ont intégré le cryptage des données dans le standard. Apprenez à crypter correctement des documents XML pour les transporter en toute sécurité, et vous supprimerez une faille importante du dispositif de sécurité de l’entreprise.

Lire l'article
Protégez vos mots de passe par programmation

Protégez vos mots de passe par programmation

par Dick Lewis - Mis en ligne le 10/05/06 - Publié en Décembre 2004

Il y a plusieurs années, mon téléphone a sonné au milieu de la nuit. La mise à niveau matérielle d’un serveur dans ma société avait capoté. La carte réseau de l’un de nos serveurs de fichiers principaux avait rendu l’âme et perdu toute connectivité réseau. Nous avions certes des cartes de remplacement, mais ne pouvions les installer parce que le serveur ne semblait pas avoir de références de domaines cachés et la combinaison nom de compte utilisateur et mot de passe Administrator local ne fonctionnait pas. Nous étions donc évincés de notre propre boîte et nous ne disposions alors d’aucun outil d’intrusion commode pour nous tirer d’affaire. Nous sommes finalement parvenus à nous frayer un chemin dans notre propre serveur mais, à mes yeux, cette expérience ne faisait que souligner l’importance qu’il y a à maintenir, à gérer et à vérifier les noms de comptes et les mots de passe Administrator du serveur...Les administrateurs système soulignent souvent l’importance de changer les mots de passe Administrator pour des raisons de sécurité. Cette insistance est bel et bien justifiée parce que le compte Administrator local détient la clé du sanctuaire de l’information sur ce serveur. Cependant, parallèlement à cet aspect de la sécurité, il faut prendre en compte les situations insolites dans lesquelles on doit être sûr à 100 % que, quand on s’assied à la console, l’information de logon fonctionnera. En effet, rien n’est plus désagréable que de voir un avertissement signalant un nom d’utilisateur/mot de passe inapproprié, quand on tente une connexion locale.

Vérifier et modifier manuellement les mots de passe sur de nombreux serveurs prend beaucoup de temps. Ce temps peut conduire un administrateur à vérifier et à modifier les mots de passe moins souvent, au grand dam de la sécurité du réseau. Et des erreurs pourraient fort bien se glisser, conduisant au genre de situation que je viens de décrire.

Heureusement, les scripts peuvent effectuer des opérations répétitives comme la vérification et le changement des mots de passe avec plus de vitesse et d’exactitude que ne le permettent les outils intégrés généralement utilisés en la circonstance. Les scripts offrent aussi plusieurs avantages par rapport aux outils GUI tierce partie. (Pour connaître ces avantages, voir l’encadré « Utilitaires GUI vs solutions scriptées ».) Même si vous n’avez jamais pratiqué aucun scripting ou développement de code, vous pouvez facilement commencer avec le script shell Windows en examinant et en utilisant PWcheck-change, un script entièrement fonctionnel qui vérifie et change les mots de passe. Quand je vous aurai présenté rapidement ce script, vous pourrez regarder sous le capot, Ensuite, je vous montrerai comment personnaliser et utiliser PWcheck-change.

Lire l'article
Vous venez d’être piratés! Et maintenant?

Vous venez d’être piratés! Et maintenant?

par Alan Sugano - Mis en ligne le 11/04/06 - Publié en Décembre 2004

Enfin vendredi ! Vous rêvez d’un long week-end de trois jours dans ce gîte rural chaudement recommandé par un ami. Au moment d’endosser votre veste, un utilisateur se plaint de la grande lenteur du réseau, particulièrement quand il essaie d’accéder à Internet. Vérification faite, vous constatez que le serveur et le réseau se traînent littéralement eux aussi. Vous consultez les statistiques de trafic fournies par le pare-feu et constatez un trafic sur Internet hors normes. Vous appliquez la commande Netstat au serveur et trouvez plusieurs connexions non autorisées à celui-ci, qui semblent provenir d’Internet. Poussant plus loin l’analyse, vous examinez le registre du serveur et y trouvez plusieurs programmes inhabituels prêts à se charger automatiquement. Appelez le gîte, annulez la réservation et préparezvous à un long week-end de travail. Vous venez tout simplement d’être piraté.Selon la nature de l’attaque, il n’est pas toujours facile de déterminer qu’il y a eu piratage. Pour découvrir l’attaque et appliquer le bon remède avant que les dommages ne s’étendent, il faut savoir où et quoi regarder. Je vais vous montrer où commencer à rechercher les programmes malveillants et comment appliquer un plan de reprise après piratage. Je conclurai en présentant trois cas pratiques montrant comment j’ai utilisé ces tactiques pour aider des entreprises à détecter un piratage de réseau, à redresser la situation, et à prévenir de futures attaques.

Lire l'article
Les actualités de la semaine 39 – Windows IT Pro – 2006

Les actualités de la semaine 39 – Windows IT Pro – 2006

Toutes les actualités du 25 Septembre au 1 Octobre 2006

Lire l'article
Développer des API RPG réutilisables

Développer des API RPG réutilisables

J’ai passé les premières années de ce siècle à développer des frontaux Web basés sur Java, destinés à d’anciennes applications iSeries. En interfaçant Java et RPG, mes clients voulaient bénéficier de la richesse du code en place et de la puissance des codeurs existants. Mais, pour bien coder le côté Java de cette interface, les développeurs Web ont besoin d’une API intuitive et simple à utiliser, ayant fait ses preuves. Malheureusement, nous n’obtenons souvent qu’un code non testé et sauvage.Le problème est double :

1. L’ancien code n’a pas été écrit à l’aide de composantes de logiciel réutilisables.
2. Les codeurs à l’ancienne ne savent peut-être pas comment réaménager le code existant ou comment écrire le nouveau sous forme de composantes logicielles réutilisables.

Je fournis ici une liste de standards que les développeurs RPG pourront utiliser pour créer une API à base de composantes (CBD, component-based developed).

Lire l'article
La perfection par la pratique

La perfection par la pratique

La réussite dans les affaires, dépend directement de la disponibilité des systèmes informatiques. Et l’objectif commun des entreprises d’aujourd’hui est de ne subir aucun temps d’immobilisation. Les sinistres peuvent frapper à tout moment, n’importe où. On ne parle pas forcément d’une catastrophe majeure, du genre inondation ou tremblement de terre. N’importe quel incident ou sinistre peut faire perdre beaucoup d’argent à toute entreprise. Pour réduire le risque, il faut en premier lieu disposer d’un solide plan de reprise après sinistre (DRP, disaster recovery plan). Un DRP est un ensemble de processus développé pour votre société, qui décrit les actions que l’équipe informatique doit mener pour reprendre rapidement l’exploitation après une importante interruption du service. En dressant la liste des activités à suivre, votre entreprise peut réduire les pertes causées par l’immobilisation. Mais une fois que l’on a développé et mis en oeuvre un DRP, le travail ne fait que commencer : il faut le tester – pas juste une fois, mais régulièrement – pour refléter la dynamique de vos environnements informatiques.

Lire l'article
News iSeries – Semaine 23 – 2006

News iSeries – Semaine 23 – 2006

Toutes les actualités de la semaine du 5 au 11 Juin 2006

Lire l'article
Les VPN SSL simplifient la sécurité des utilisateurs distants

Les VPN SSL simplifient la sécurité des utilisateurs distants

par Mel Beckman, Mis en ligne le 24/05/2006 - Publié en Janvier 2006

S’il est une application qui mérite le trophée « killer app » sur Internet, c’est bien le travail en réseau privé virtuel. Les réseaux privés virtuels (VPN, virtual private networks) ont commencé comme une solution compliquée apportée à un problème de sécurité épineux : relier deux réseaux distants par Internet, sans exposer le trafic à l’indiscrétion ou à l’intrusion des pirates. Le but du VPN était alors simplement de remplacer des circuits privés coûteux entre des emplacements. Et donc, les utilisateurs de VPN ont assumé la complexité pour obtenir en échange d’importantes économies mensuelles. Mais les VPN ont connu une forte croissance pour assurer une connectivité sécurisée là où il n’y en avait pas auparavant : télétravailleurs, partenaires professionnels, fournisseurs, clients, employés branchés depuis le Starbucks du coin. La technologie VPN est devenue très bon marché mais, malheureusement, pas beaucoup moins complexe.Cette complexité persistante est due partiellement au protocole qui a remporté la guerre des standards VPN, IPSec (IP Security). Conçu pour fonctionner dans des environnements réseau très divers, du mode commuté au sans fil en passant par la large bande passante, IPSec présente des dizaines d’options configurables. Les fournisseurs de VPN IPSec vendent un logiciel client spécial pour alléger le fardeau de la configuration, mais peu d’entreprises sont prêtes à ajouter encore un autre logiciel propriétaire à leur panoplie. Pourtant, l’autre solution – support IPSec intégré dans les systèmes d’exploitation pour postes de travail – constitue une entreprise de configuration et de dépannage fastidieuse. Fastidieuse pour des spécialistes réseau expérimentés, mais carrément hors de portée de l’utilisateur lambda.

En butte à la résistance des clients face à leur solution utilisateur final IPSec, les fournisseurs de VPN ont imaginé un contournement astucieux : le VPN SSL.
A son niveau le plus élémentaire, une connexion VPN SSL ne demande à l’utilisateur qu’un navigateur Web. Bien sûr, des produits VPN SSL plus élaborés peuvent procurer pratiquement toutes les fonctionnalités d’un VPN IPSec et même un contrôle de stratégie de granularité plus fine. Et tous les produits VPN SSL ont un avantage déterminant : facilité d’installation et d’assistance. Exactement ce que le help desk de n’importe quel administrateur de réseau aime entendre.
Pour comprendre comment vous pouvez utiliser les VPN SSL en lieu et place de leurs frères IPSec, vous devez connaître le spectre des produits et les diverses fonctions qu’ils permettent. Certains produits VPN SSL sont véritablement sans client, tandis que d’autres utilisent des applets Java ou ActiveX légères transférées automatiquement du Web. Certains emploient une simple authentification par ID/mot de passe utilisateur. D’autres ont recours à des certificats numériques de haute sécurité. Certains donnent aux utilisateurs l’accès complet à votre réseau lorsqu’ils sont connectés ; d’autres vous permettent de limiter l’accès aux seules ressources permises par des contrôles appropriés.

Aucun produit VPN SSL ne fonctionne directement sur l’iSeries, donc vous ajouterez encore un autre produit hétérogène à votre attirail. Mais c’est pour la bonne cause.

Lire l'article
Utilisation pratique de XML dans l’environnement iSeries

Utilisation pratique de XML dans l’environnement iSeries

par Charles Caplan, Mis en ligne le 03/05/2006 - Publié en Décembre 2005

Depuis 1998, le W3C (World Wide Web Consortium) recommande XML. Depuis lors, celui-ci a connu un tel succès que tout développeur doit connaître au moins un aspect de l’univers XML pour accomplir sa mission.
On a souvent dit que le grand mérite des standards est la richesse du choix qu’ils proposent. Et c’est bien le cas de XML. Heureusement, l’iSeries est capable de traiter de nombreuses technologies liées à XML dans plusieurs langages de programmation.Je montre ici quelques utilisations de XML sur l’iSeries. Ces techniques visent à vous simplifier la vie et à faciliter le partage des données sur différents systèmes. Cet article n’est absolument pas exhaustif en la matière et je vous invite à chercher par vous-même d’autres usages de XML sur l’iSeries. Je suis sûr que vous trouverez quelque chose de nouveau, pour votre profit.

Lire l'article
Trucs & Astuces : IPv6 sous XP SP2

Trucs & Astuces : IPv6 sous XP SP2

Les trucs & astuces de la semaine du 10 au 16 Avril 2006

Lire l'article
Les nouveautés de la semaine 39 – Windows IT Pro – 2006

Les nouveautés de la semaine 39 – Windows IT Pro – 2006

Tous les nouveaux produits de la semaine du 25 Septembre au 1 Octobre 2006

Lire l'article
Trucs & Astuces : boucles implicites

Trucs & Astuces : boucles implicites

Les trucs & astuces de la semaine du 28 Août au 3 Septembre 2006

Lire l'article
Sauvegarde : quelques scénarios catastrophe

Sauvegarde : quelques scénarios catastrophe

Les récits que vous allez lire sont véridiques. Pour ne froisser personne, les noms ont été changés.
Voila plusieurs années, une société appelée Keypro Computer a connu une défaillance catastrophique du disque dur, la veille d’une déclaration fiscale importante. La seule copie des données nécessaires à la déclaration se trouvait sur ce disque dur et celui-ci n’était pas sauvegardé. L’excuse de Keypro ? « Nous avons oublié ». Le coût de récupération des données à partir des copies papier ? 400 000 dollars.Sur Internet, les récits de catastrophes liées à la sauvegarde (ou plutôt à son absence) abondent. Certains sont sûrement de pures inventions. Mais beaucoup sont authentiques, particulièrement lorsque le narrateur donne des informations négatives pour lui ou pour ses propres intérêts. En tant que professionnels IT, nous ne pouvons pas nous permettre « d’oublier ». A la clé il y a des amendes, voire la prison.
Pour vous éviter d’être la proie de ces lacunes de sauvegardes courantes, j’ai classé les délits de sauvegarde les plus courants et j’ai créé une étude « de cas » composite pour chacun d’eux. Aujourd’hui, ce ne sont pas des actes délictueux, mais ils pourraient bien le devenir bientôt. Lisez-les et veillez à ce qu’aucun d’entre eux ne devienne votre propre mésaventure !

Lire l'article
Les actualités de la semaine 23 – Windows IT Pro – 2006

Les actualités de la semaine 23 – Windows IT Pro – 2006

Toutes les actualités du 5 au 11 Juin 2006

Lire l'article
Les nouveautés de la semaine 20 – Windows IT Pro – 2006

Les nouveautés de la semaine 20 – Windows IT Pro – 2006

Tous les nouveaux produits de la semaine du 15 au 21 Mai 2006

Lire l'article
Les tables temporaires globales : une alternative aux jeux de résultats?

Les tables temporaires globales : une alternative aux jeux de résultats?

par Kent Milligan, Mis en ligne le 3/05/2006 - Publié en Décembre 2005

Le langage procédural SQL permet de créer facilement des procédures stockées. Les structures de ce langage permettent aux développeurs SQL de coder des vérifications conditionnelles, d’effectuer un traitement itératif avec diverses structures de boucles, d’appeler d’autres procédures stockées, et de retourner efficacement des jeux de données via des jeux (ou ensembles) de résultats, le tout très simplement. (Si vous n’avez pas encore utilisé des jeux de résultats, considérez que c’est un paramètre de sortie contenant un ensemble de valeurs de données.) Les jeux (ou ensembles) de résultats sont utilisés couramment parce que (1) ils peuvent contenir des données provenant de tables multiples et (2) ils peuvent améliorer la performance en renvoyant un jeu de données sous forme de blocs au lieu d’une ligne à la fois.La figure 1 montre un exemple de procédure stockée nommée Get_ Free_Employees qui renvoie un jeu de résultats contenant les employés non encore affectés à un projet. Un paramètre d’entrée vient cantonner la recherche aux employés libres d’un département donné. L’en-tête de procédure inclut le comptage des jeux de résultats renvoyés par la procédure.
Dans la procédure elle-même, les jeux de résultats sont renvoyés parce que la clause With Return est incluse sur la définition du curseur et que le curseur est laissé ouvert après sortie de la procédure. (Voir l’encadré « PTF pour With Return to Client et With Return to Caller »). Le tableau de la figure 2 présente les données contenues dans le jeu de résultats renvoyé par cette procédure stockée.

Sur DB2 UDB for iSeries, seuls les clients utilisant les interfaces de programmation ODBC, JDBC ou CLI peuvent consommer les (ou accéder aux) jeux de résultats de procédures stockées. (Vous trouverez des exemples de coding montrant ces interfaces consommant des jeux de résultats dans l’IBM Redbook Stored Procedures, Triggers and User Defined Functions on DB2 Universal Database for iSeries.) Dans cette liste, l’absence du langage procédural SQL ne passe pas inaperçue. Si une procédure SQL appelle une autre procédure stockée qui renvoie un jeu de résultats, cette procédure SQL n’a aucun moyen d’accéder au contenu du jeu de résultats renvoyé par la procédure stockée. (Remarque : Embedded SQL est une autre interface classique présentant la même limitation. Les techniques mentionnées dans cet article s’appliquent aussi à cette interface. De plus, cette limitation n’existe que dans DB2 UDB for iSeries. Les autres produits DB2 UDB supportent des instructions SQL supplémentaires pour éliminer cette restriction.)

Les tables temporaires globales (introduites dans la V5R2) sont une fonction SQL qui permet de contourner cette limitation dans le langage procédural SQL. Vous pouvez utiliser une table globale pour contenir des données temporaires pour une connexion ou application base de données. Au lieu d’utiliser une procédure SQL pour renvoyer des données via un jeu de résultats, vous pourriez placer les mêmes données dans une table temporaire globale.
Ensuite, il suffirait que la procédure SQL invoquante connaisse le nom de la table temporaire pour pouvoir accéder aux données du jeu de résultats.
Certains programmeurs (particulièrement les anciens qui ont utilisé par le passé la bibliothèque QTEMP) se demanderont peut-être quelle est la différence entre l’utilisation des tables temporaires globales et la création de leurs propres tables temporaires dans un schéma (ou bibliothèque) spécial. Les tables temporaires globales SQL sont en fait créées dans la bibliothèque QTEMP par DB2 UDB.

Malgré l’utilisation de la bibliothèque QTEMP, SQL demande toujours que le qualificateur, explicite ou implicite, pour le nom de table temporaire soit SESSION. DB2 UDB ne crée pas une bibliothèque ou un schéma appelé SESSION : il utilise simplement le qualificateur SESSION comme une sorte d’alias pour la bibliothèque QTEMP. A l’instar des objets dans QTEMP, DB2 UDB supprime automatiquement la table temporaire à la fin de la connexion.

Lire l'article
La V5R4 donne un coup de fouet à  SQL

La V5R4 donne un coup de fouet à  SQL

La plupart des nouvelles releases de DB2 UDB for iSeries incluent des améliorations progressives de SQL, comme de nouveaux types de données et de nouvelles fonctions intégrées. La V5R4 n’est pas différente à cet égard et présente de nouvelles fonctions intégrées pour le cryptage Triple DES, le traitement des dates et les fonctions d’échantillonnage. Par Kent Milligan - Dossier publié en Mai 2006

 

 

 

 

 

 

Les fonctions de SQL V5R4 dont il est question ici exigent le SQE (SQL Query Engine). Par conséquent, si votre environnement ou votre requête SQL contient un attribut non reconnu par SQE et si vous essayez d’utiliser l’une de ces nouvelles fonctions SQL, DB2 UDB signalera une erreur.

Voici quelques-uns des facteurs qui empêchent SQE d’honorer une requête SQL :

 

 

 

 

Utilisation de la fonction UPPER , LOWER ou TRANSLATE

Séquence de tri en langue nationale

UDTF (user-defined table function)

Références de fichier logique sur la clause FROM

Fichiers logiques select/omit définis sur la table sousjacente

Pour plus de détails sur le support SQE, visitez www.ibm.com/iseries/db2/sqe.html.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Lire l'article
Groupes d’activation : premier aperçu

Groupes d’activation : premier aperçu

Le terme « groupes d’activation » est peu évocateur, a une résonance technique, et est un peu intimidant ! IBM aurait peut-être dû parler de « troupeaux de programmes ». On aurait alors imaginé des programmes informatiques parcourant les plaines herbeuses, se regroupant pour survivre, vivant ensemble et mourant ensemble. Mais peut-être suis-je un peu trop amateur de westerns. Plus prosaïquement, dans cet article, j’explique ce que sont les groupes d’activation et leur mérite pour un programmeur RPG.

Lire l'article