> Data
7 étapes pour le cryptage SSL

7 étapes pour le cryptage SSL

par Gary Zaika - Mis en ligne le 21/01/2004

Instaurez le cryptage automatique dans un environnement SQL Server 2000 en cluster

Dans SQL Server 2000, Microsoft a introduit de nouvelles fonctions pour apporter toujours plus à  ses clients en matière de sécurité des données. A cet égard, il existe une fonction peu comprise : le support automatique du trafic de réseau crypté par SSL ( Secure Sockets Layer) entre les clients et le serveur.

Dans SQL Server 2000, Microsoft a introduit de nouvelles fonctions pour apporter toujours plus à  ses clients en matière de sécurité des données. A cet égard, il existe une fonction peu comprise : le support automatique du trafic de réseau crypté par SSL ( Secure Sockets Layer) entre les clients et le serveur. Certes, le cryptage ralentit légèrement la performance parce qu'il demande des actions supplémentaires des deux côtés de la connexion réseau. Mais, pour les utilisateurs soucieux de sécuriser leurs communications en réseau, les avantages du cryptage l'emportent largement sur ce léger ralentissement. Le cryptage est particulièrement utile quand les clients se connectent au SQL Server par Internet et que les données empruntent des réseaux publics.
Le cryptage SSL est devenu un standard : c'est celui que la plupart des entreprises utilisent pour leurs applications Internet et e-commerce. Il existe deux niveaux de cryptage SSL, 40 bits et 128 bits, qui offrent différents types de protection. SQL Server 2000 gère les deux niveaux de cryptage. Pour faire fonctionner le cryptage SSL, vous devez obtenir une clé (ou certificat) valide auprès d'une CA (Certificate Authority) de confiance ou trusted. Après avoir installé le certificat sur un système qui utilise SQL Server 2000, vous pouvez configurer SQL Server pour qu'il impose le cryptage entre les clients et le serveur. Windows 2000 est livré avec son propre CA utilisable pour des applications intranet. La plupart des sociétés utilisent des CA tierce partie pour les applications Internet. (Pour plus d'informations sur les CA, voir l'encadré « Principes de base du CA », ci-après).
Le cryptage SSL est différent du cryptage Multiprotocol Net-Library que l'on trouve dans les releases SQL Server antérieures à  SQL Server 2000. Le cryptage SSL supporte toutes les bibliothèques et protocoles de réseau, y compris les types les plus répandus : TCP/IP et Name Pipes (pour des installations en cluster, seules ces deux bibliothèques de réseau sont disponibles). Vous pouvez aussi utiliser le cryptage SSL pour des instances multiples de SQL Server, alors que le cryptage Multiprotocol Net-Library qui utilise l'API de cryptage Windows RPC, ne reconnaît que l'instance par défaut de SQL Server 2000. Le client ou le serveur (mais pas les deux) peut demander le cryptage SSL. Le cryptage demandé par le client précise que toutes les communications allant de ce client à  tous les serveurs connectés seront cryptées. Le cryptage demandé par le serveur stipule que toutes les connexions entrant dans le serveur seront cryptées puis décryptées sur celui-ci.
Il est plus difficile de configurer le cryptage pour des instructions en cluster que pour un serveur autonome. Beaucoup de sources expliquent comment installer le cryptage SSL sur une seule boîte, mais il est plus difficile de trouver des informations sur l'installation du cryptage SSL dans un environnement en cluster. Malheureusement, SQL Server Books Online (BOL) ne renseigne pas beaucoup sur la manière de configurer le cryptage SSL et ne fait qu'effleurer les exigences de configuration pour un environnement en cluster. Il faut aussi chercher à  l'extérieur de BOL pour obtenir des informations sur la manière d'installer les certificats d'authentification appropriés. Mais, avec des instructions claires, la mise en place du cryptage SSL s'effectue sans mal. Voyons en détail comment installer le cryptage SSL dans un environnement en cluster pour une société fictive appelée IDM.

Lire l'article
Testez par unités vos procédures stockées

Testez par unités vos procédures stockées

par Dan Sawyer - Mis en ligne le 21/01/2004

Mettez en forme votre code de procédure

Imaginez ceci : vous venez juste de finir le débogage de la dernière procédure stockée pour la dernière application SQL Server du département. Etes-vous satisfait de votre travail ? Etesvous certain que votre code T-SQL sera à  la hauteur des attentes des utilisateurs ? Quid des fonctionnalités que vous avez placées dans le code ? ...

Imaginez ceci : vous venez juste de finir le débogage de la dernière procédure stockée pour la dernière application SQL Server du département. Etes-vous satisfait de votre travail ? Etesvous certain que votre code T-SQL sera à  la hauteur des attentes des utilisateurs ? Quid des fonctionnalités que vous avez placées dans le code ? Avezvous couvert tous les aspects de la gestion ? Chaque fonction tient-elle ses promesses comme prévu dans tous les scénarios d'exploitation normaux?

Même si vous pouvez répondre par oui à  toutes ces questions, le moment de relâcher votre effort n'est pas encore venu. Qu'en est-il des suites possibles ? Avez-vous testé les conditions d'erreur courantes qui ont causé des problèmes par le passé ? Et qu'en est-il des gestionnaires d'erreurs ? Sont-ils eux-mêmes impeccables ? Si vous vous sentez faiblards dans l'un de ces domaines, il vaut peut-être mieux réévaluer la manière dont vos procédures stockées sont testées par unités.
Contrairement aux tests système que les testeurs professionnels effectuent après qu'une application ait été entièrement codée, le test par unités recherche les erreurs dans des modules individuels, comme les procédures stockées, tout au long du développement de ces modules. Le test par unités n'est pas difficile mais, pour être efficace, il exige du planning, de la documentation et, par-dessus tout, une compréhension partagée de certains principes de base. Donc, avant de plonger dans le processus de test, commençons par dissiper quelques préjugés courants sur le test par unités, qui nuisent souvent à  son efficacité.

Lire l'article
Audit des bases de données MS SQL Server 7 et 2000

Audit des bases de données MS SQL Server 7 et 2000

iNetsoft propose un outil pour l'audit des bases de données MS SQL Server 7 et 2000 : OmniAudit de l'éditeur américain Krell Software.

OmniAudit permet d'identifier de manière automatique et transparente toutes les modifications apportées aux données dans vos bases de données Microsoft SQL Server 7.0 ou 2000.

Lire l'article
Dénicher des profils et des tendances

Dénicher des profils et des tendances

par Christine Y. Mato et Greg Meyer - Mis en ligne le 17/03/2004

Une application géologique de data warehousing et de data mining avec SQL Server 2000

Pour notre master's degree program en Management of Information Systems, nous avons dû réaliser un projet d'analyse visant à  apprendre les nuances du data mining en utilisant des données « réelles ». Notre travail précédent utilisait des données qui avaient été nettoyées afin que les élèves utilisateurs obtiennent tous les mêmes résultats...Notre école avait choisi SQL Server 2000 parce qu'il offre la fonctionnalité d'une base de données d'entreprise associée à  un faible prix et à  une maintenance facile. Nous étions libres de choisir le sujet d'analyse. Beaucoup d'autres élèves ont choisi les analyses de marketing ou de vente, mais comme nous avions un bagage de sciences naturelles, nous avons préféré les données géologiques et biologiques. En créant un data warehouse et en y pratiquant le data mining, nous avons constaté que SQL Server 2000 fournit un moyen rapide pour observer statistiquement les données géologiques.
Les scientifiques du monde entier amassent sans cesse de grandes quantités de données géologiques. C'est à  partir de ces sources que nous avons obtenu nos données échantillon. Comme SQL Server est plus facile à  utiliser que la méthodologie statistique traditionnelle, nous avons décidé de rassembler les sources de données existantes dans un data warehouse SQL Server. Nous avons dû aussi utiliser SQL Server pour vérifier les analyses originales des données géologiques, qui avaient été effectuées par des méthodes statistiques usuelles. Nous avons construit deux data warehouses à  partir de deux sources de données géologiques différentes. Ces sources étaient comparativement petites parce que notre projet était académique ; mais nous pensons que les constatations garderaient toute leur pertinence quelle que soit la taille de l'ensemble de données. Un ensemble de données constitué de plus de 20 fichiers provenait d'une étude de Eastern Continental Shelf qui avait été collectée et analysée par le United States Geological Survey (USGS) entre 1955 et 1970. La seconde base de données contenait les résultats d'une étude des effets de la décomposition de l'enfouissement de six espèces de bois différentes aux Bahamas et dans le Golfe du Mexique. La quantité de bois qui se conserve ou se désagrège dans l'eau dans le monde est phénoménale. La décomposition du bois produit des gaz à  effet de serre, mais ce phénomène cesse quand le bois est enfoui. Cette étude est intéressante parce qu'elle procure aux scientifiques des informations supplémentaires précieuses sur les sources d'émission d'hydrocarbures dans notre atmosphère.

Lire l'article
Actualités – Novembre 2003

Actualités – Novembre 2003

Les actualités SQL Server pour le mois de Novembre

Lire l'article
Beaucoup d’ADO pour rien

Beaucoup d’ADO pour rien

par William Vaughn - Mis en ligne le 17/03/2004

Parmi les moyens que les développeurs désirent le plus, on trouve une manière éprouvée de déterminer les meilleurs moyens pour tester et établir des valeurs NULL dans leurs applications - quel que soit leur langage.Par exemple, quand ils doivent signifier que les dates DateShipped et Date- Died ont été atteintes et ne sont pas connues, la plupart des développeurs de bases de données relationnelles doivent définir ces données et d'autres colonnes de données similaires pour permettre des valeurs NULL. A noter qu'une valeur NULL dans une colonne de données n'est pas la même chose qu'une chaîne vide ou NULL ou tout autre occupant qui peut servir à  montrer que la valeur n'est pas connue. Le langage que vous utilisez peut traiter une chaîne vide ou une valeur placeholder (comme Unknown) comme une chaîne ou une valeur valide et peut stocker un NULL comme une valeur « connue » dans la base de données. Le concept de l'état NULL existe dans les bases de données relationnelles depuis leur création et les NULL ont toujours suscité un traitement spécial. Sans trop m'étendre sur la pertinence qu'il y a à  utiliser des NULL, j'estime que NULL est un meilleur placeholder que BHOM (Beats the Hell Out of Me) que j'utilisais quand j'enseignais la programmation dans l'armée US.
En ADO classique, les développeurs sont confrontés à  des valeurs NULL parce qu'ils ne peuvent pas attribuer un NULL à  une variable numérique, une chaîne, la propriété Value d'un contrôle TextBox, ou tout contrôle qui n'accepte un type de données variant (que l'on peut mettre à  NULL). Si l'on oublie de traiter les valeurs NULL et si l'on essaie d'attribuer un NULL à  un contrôle TextBox, Visual Basic (VB) 6.0 émet un message d'erreur Invalid Use of NULL (94). Mais ADO.NET et Visual Basic .NET prennent mieux en charge les valeurs NULL. Quand on travaille avec le CLR (Common Language Runtime) et les langages .NET, ADO.NET permet de stocker, de définir, et de tester des valeurs NULL de diverses manières - beaucoup plus qu'avec ADO classique. Cet article utilise Visual Basic .NET pour présenter la façon dont ADO.NET et Visual Basic .NET traitent la valeur NULL.

Lire l'article
Diviser et conquérir

Diviser et conquérir

par Edward Whalen, Geoff Langos et Alexander Stamenkovich - Mis en ligne le 26/11/2003

Reconception architecturale + réplication transactionnelle = performance écrasante

Les DBA savent que le premier pas, pour déterminer la viabilité et la capacité à  long terme d'un système, consiste à  effectuer des mesures de supervision des performancesLes DBA savent que le premier pas, pour déterminer la viabilité et la capacité à  long terme d'un système, consiste à  effectuer des mesures de supervision des performances. C'est dans cet esprit que, voilà  plusieurs années, nous avons conçu un programme chargé de suivre les variations des performances dans le système de traitement d'un centre d'appel sous Windows NT et SQL Server 7.0. Au début, nous avons constaté que le Performance Monitor nous donnait bien un programme chargé de suivre les variations des performances dans le système de traitement d'un centre d'appel sous Windows NT et SQL Server 7.0. Au début, nous avons constaté que le Performance Monitor nous donnait bien long terme en prenant des instantanés chaque demi-heure de certaines mesures comme l'utilisation de la CPU et des I/O, le nombre d'utilisateurs et de processus, les traitements de commandes, et les transactions. Nous avons rangé ces mesures dans une base de données SQL Server. L'année où nous avons commencé notre programme de supervision, nous n'avons recueilli les données que pour quelques mois consécutifs. Et constaté ainsi que les données glanées pendant une période aussi courte ne produisaient que des informations à  court terme: trop peu de points de données pour dessiner une tendance. En revanche, l'année suivante, quand nous avons supervisé des tranches de temps plus longues, les données recueillies ont révélé des tendances significatives. En une année, nous avons observé une hausse inquiétante de l'utilisation de la CPU que nous avons attribuée à  une augmentation des fonctions applicatives personnalisées dans le centre et à  l'ajout de nombreux utilisateurs du système.

Lire l'article
WINSIGHT, pour le décisionnel

WINSIGHT, pour le décisionnel

WINSIGHT, spécialiste français du Décisionnel en environnement Microsoft, annonce ReportSmith.Net.
 

WINSIGHT a obtenu la certification Microsoft Gold Certified Partner for Business Intelligence en France. La société ajoute un nouveau produit à sa gamme de logiciels OLAP WEBHOUSE : ReportSmith. Net.

Lire l'article
Actualités – Mars 2004

Actualités – Mars 2004

Les actualités SQL Server pour le mois de Mars 2004

Lire l'article
Plongez au coeur de « BizTalk Server 2004 » avec ce White Paper exclusif de Chappell & Associates !

Plongez au coeur de « BizTalk Server 2004 » avec ce White Paper exclusif de Chappell & Associates !

"Comprendre BizTalk Server 2004" est un White Paper en Français signé de David CHAPPELL de Chappell & Associates, San Francisco, Californie. Son tout dernier ouvrage de référence, Understanding .NET, a été publié par Addison-Wesley en 2002. Découvrez maintenant ce White Paper !

Lire l'article
Faire dialoguer ses applications avec BizTalk Server

Faire dialoguer ses applications avec BizTalk Server

SPECIAL REPORT : MICROSOFT BizTalk Server

Automatiser ses processus métier, fiabiliser ses échanges applicatifs, ouvrir son système d’information vers l’extérieur : Microsoft BizTalk Server tient toutes les promesses de l’EAI en jouant le rôle de chef d’orchestre des échanges inter applicatifs de l’entreprise et des partenaires extérieurs.Le système d’information des entreprises est constitué de nombreuses applications « spécifiques » ou progiciels de gestion intégrés (ERPs) bâtis sur des technologies disparates. Dans le passé, lors d’un développement d’une nouvelle application, une grande partie du travail des services informatiques consistait à développer des interfaces pour soutenir l’échange des informations entre applications. En permettant de faire communiquer ces applications entre elles, l’EAI -Intégration des Applications d'Entreprise- a totalement changé la donne. Mais pourquoi faire communiquer les applications ? Tout simplement parce qu’elles sont excessivement liées entre elles. Si une application de CRM répond à un besoin fonctionnel précis lié à la relation client, elle nécessite cependant des informations générées par d’autres applications, comme la comptabilité client, la gestion des stocks, le support technique.
Dans un contexte de réseau local, cette communication inter applicative peut se gérer plus ou moins facilement. Mais dès que le système d’information s’ouvre sur l’extérieur, vers les partenaires commerciaux (BtoB) ou qu’il est réparti sur de multiples sites, le problème se corse.

Lire l'article
Actualités – Février 2004

Actualités – Février 2004

Les actualités SQL Server pour le mois de Février 2004

Lire l'article
Actualités – Juin 2003

Actualités – Juin 2003

Les actualités SQL Server pour le mois de Juin

Lire l'article
Outils client pour Analysis Services

Outils client pour Analysis Services

par l'équipe OLAP d'ASPIRITY - mis en ligne le 19/05/2003

En 1996, Microsoft a fait son entrée dans le monde de l'analyse online en acquérant la technologie de la société israélienne Panorama Software. Sous le nom d'OLAP Services, cette technologie est devenue partie intégrante de SQL Server 7.0 en 1999. Dans SQL Server 2000, le produit a été étendu et rebaptisé Analysis Services. Le dernier produit d'analyse est un puissant fournisseur d'OLAP (online analytical processing), mais dépourvu d'un outil client pour consulter, présenter ou analyser des données. Les clients qui veulent utiliser Analysis Services sans écrire un navigateur client maison doivent par conséquent trouver une application client du commerce adéquate. Pour aider les lecteurs à  choisir l'application client la mieux adaptée à  leurs besoins, nous avons comparé cinq de ces produits. Après qu'au moins deux consultants aient évalué chaque outil, nous avons rapproché et récapitulé les conclusions. Nous nous sommes aussi assurés qu'au moins l'un des examinateurs de chaque outil l'avait utilisé dans un vrai contexte client.

Lire l'article
L’outil Database Hammer

L’outil Database Hammer

par Joseph Isaac Sack - Mis en ligne le 19/05/2003
Je travaille comme administrateur de base de données (DBA) sous contrat dans une grande société de recherche et de fabrication. Mon manager m'a récemment demandé de trouver la meilleure configuration de base de données pour notre nouveau grand SAN (Storage Area Network) RAID 5. Le fournisseur du SAN n'avait pas de documentation quant aux recommandations de placement de fichiers base de données SQL Server 2000 ou aux meilleures pratiques. Il fallait donc faire un test pour voir si en plaçant les fichiers de données et les fichiers log sur des partitions SAN RAID 5 séparées, les performances étaient meilleures qu'en plaçant les deux fichiers sur une partition SAN RAID 5 unique. En règle générale, le fait de placer les fichiers base de données et log sur des matrices séparées (RAID 5 ou RAID 10 pour les données et RAID 1 pour le log) améliore la performance. Comme SQL Server écrit séquentiellement dans le fichier log de transactions, et aléatoirement dans les fichiers de données, la séparation des fichiers réduit le risque de contention de lecture ou d'écriture simultanée.

Lire l'article
Actualités – Mai 2003

Actualités – Mai 2003

Les actualités SQL Server pour le mois de Mai

Lire l'article
Evitez la zone rouge

Evitez la zone rouge

par Gregory A. Larsen - Mis en ligne le 26/11/2003

Suivez ce processus en 2 étapes pour suivre et surveiller l'utilisation des disques

Vos clients ou managers vous ont-ils jamais demandé de combien leurs bases de données avaient grandi au cours de l'année écoulée ? Avez-vous dû prévoir la capacité disque nécessaire pour la prochaine année d'après le taux de croissance moyen de la base de données au cours des 12 derniers mois ?Vos clients ou managers vous ont-ils jamais demandé de combien leurs bases de données avaient grandi au cours de l'année écoulée ? Avez-vous dû prévoir la capacité disque nécessaire pour la prochaine année d'après le taux de croissance moyen de la base de données au cours des 12 derniers mois ? Compte tenu du présent taux de croissance, combien de temps durera votre espace disque non alloué actuel ? Pour répondre à  ce genre de questions sur la croissance de la base de données ou sur l'espace disque, il faut disposer d'un historique de l'utilisation de l'espace touchant à  vos bases de données. J'ai créé un processus qui vous permettra de collecter automatiquement des statistiques d'utilisation de l'espace pour chacune de vos bases de données. Muni de ces chiffres, il vous sera facile d'effectuer un simple calcul de taux de croissance.

Voilà  quelques mois, j'ai décidé d'élaborer un processus de capture d'informations sur l'utilisation de l'espace disque pour chaque base de données d'un système, afin d'en suivre la consommation au fil du temps. Je voulais connaître la quantité d'espace allouée et utilisée pour les fichiers de données et de journalisation. En fait, je recherchais la même information que celle que l'on voit dans le panneau Database Details d'Enterprise Manager quand on consulte l'information Space Allocated, mais il me fallait cette information en code T-SQL. En utilisant SQL Server Profiler, j'ai constaté qu'Enterprise Manager obtient des informations sur l'espace alloué en utilisant deux instructions DBCC. La première, SQLPERF, est documentée ; la seconde, SHOWFILESTATS, ne l'est pas. En exécutant manuellement DBCC SHOWFILESTATS sur chaque base de données et en comparant la sortie obtenue avec celle qu'Enterprise Manager affichait, j'ai vu que cette commande me fournirait l'information sur l'espace disque par base de données.
SQL Server 2000 et SQL Server 7.0 utilisent tous deux ces instructions DBCC pour peupler l'écran Space Allocated d'Enterprise Manager. L'instruction DBCC SQLPERF(LOGSPACE) renvoie des informations sur l'espace de journalisation des transactions - la taille du journal allouée pour chaque base de données en méga-octets et le pourcentage d'espace de journalisation utilisé pour chaque base de données - et ce pour toutes les bases de données. Un simple calcul permet de convertir facilement le pourcentage de l'espace journal utilisé, en méga-octets. Cette instruction DBCC m'a aidé à  connaître l'espace de fichier log que je voulais suivre.
J'ai utilisé l'instruction DBCC SHOWFILESTATS non documentée qui donne des informations sur l'utilisation de l'espace pour les données d'une base de données, pour obtenir le reste des statistiques d'espace disque souhaité. Cette instruction renvoie un enregistrement par fichier de données physique. Chaque enregistrement statistique ainsi obtenu occupe six colonnes : Fileid, FileGroup, TotalExtents, UsedExtends, Name et FileName. On peut utiliser la colonne TotalExtents pour déterminer l'espace total alloué aux données et la colonne UsedExtents pour déterminer l'espacetotal utilisé pour les données. En additionnant les valeurs TotalExtents et UsedExtents de tous les fichiers d'une base de données, puis en convertissant le nombre d'extensions en méga-octets, j'ai calculé l'espace total alloué aux données et l'espace total utilisé pour elles. Ces calculs m'ont fourni l'information d'utilisation de l'espace que je voulais suivre dans le temps. La figure 1 montre un exemple de sortie de la commande DBCC SHOWFILESTATS après qu'on l'aie appliquée à  la base de données maîtresse.
J'ai intégré ces deux instructions DBCC dans un processus qui collecte l'information d'espace par base de données. Il s'exécute périodiquement et enregistre les statistiques sur l'utilisation de l'espace dans une table de base de données. Le processus est constitué d'un job SQL Server Agent qui contient deux étapes. La première exécute une procédure stockée nommée u

Lire l'article
</A>SQL Server Magazine : Offre spéciale de lancement

SQL Server Magazine : Offre spéciale de lancement

Il y a quelques jours, est paru le dernier numéro gratuit de SQL Server Magazine.

DBA, DBM, Responsables Bases de données, nous vous avons réservé une offre d'abonnement spéciale.

Certains de votre participation, nous vous donnons rendez-vous pour la prochaine édition de SQL Server Magazine, à  paraître fin Septembre 2003.

Dans l'attente de vous compter parmi nos premiers abonnés, transformez l'essai !

Lire l'article
Réponses rapides

Réponses rapides

par William R. Vaughn - Mis en ligne le 24/06/2003
Quand vous voulez consulter votre base de données, vous commencez par coder une instruction SELECT qui renverra une ou plusieurs lignes - un ensemble de lignes - contenant la réponse à  votre question. Parfois, vous voulez une information exhaustive, mais parfois, une simple réponse par oui ou non. Si vous demandez « Y a-t-il des places disponibles sur le prochain vol pour Cleveland ? », vous ne demandez pas la liste de ces places - mais seulement s'il y en a de disponibles. Dans certains cas, vous voulez obtenir un nombre en réponse à  une requête. Toujours dans notre exemple, vous pourriez demander le nombre de places libres sur cet avion pour Cleveland, parce que vous voulez faire voyager une équipe de football. Là  encore, une telle réponse n'a pas besoin de SQL Server pour renvoyer un ensemble de lignes. Bien entendu, ces requêtes sont bien incapables de juger de la pertinence d'aller à  Cleveland : il faudrait pour cela un système bien plus sophistiqué que tout SGBD connu.

Lire l'article
Droit au but avec ADO .Net

Droit au but avec ADO .Net

par Burton Roberts - Mis en ligne le 24/06/2003

Un rapport tabulaire, ou en colonnes, présente l'information dans des lignes, comme celles d'une base de données. Les en-têtes de colonnes d'un rapport tabulaire correspondent aux noms des colonnes de la table. Un rapport à  tabulation croisée (crosstab en raccourci) est une matrice ou une feuille de calcul à  deux dimensions qui a des critères de recherche horizontaux dans les en-têtes de colonnes et verticaux dans les en-têtes de lignes, à  gauche. Les données que vous recherchez - généralement résumées par une fonction d'agrégation comme SUM(), AVERAGE() ou COUNT() - occupent les cellules intérieures de la matrice.

Lire l'article