> Data
Comment éviter les attaques par injection de code SQL

Comment éviter les attaques par injection de code SQL

par William Sheldon - Mis en ligne le 23/11/2005 - Publié en Décembre 2004

Au moment de définir votre infrastructure de sécurité, la protection des données de votre organisation constitue votre principal objectif. SQL Server, en tant que référentiel de données, devient le centre de votre univers axé sur la sécurité. Pour sécuriser vos données, vous avez exécuté l'outil MBSA (Microsoft Baseline Security Analyzer), limité les communications avec la base de données, mis en oeuvre le protocole IPSec (Internet Protocol Security) afin de crypter vos communications et peut-être même ajouté un pare-feu séparé. Malgré tout, il reste un moyen pour les intrus d'attaquer votre base de données : par le biais des applications qu'elle prend en charge. Toute stratégie de sécurité comporte un maillon faible et, du point de la conception, l'élément le plus faible de votre stratégie sera l'application Web car elle constitue le principal point d'entrée pour les intrus, les autres chemins d'accès possibles ayant normalement été verrouillés. Toutefois, une gestion incorrecte de ce point d'entrée peut rendre vos données vulnérables à  l'attaque potentiellement dévastatrice qu'est l'injection de code SQL. Ce type d'attaque est extrêmement dommageable car elle permet aux intrus d'exécuter des commandes directement sur votre base de données.

Lire l'article
Les paramètres en première ligne

Les paramètres en première ligne

par Rodney Landrum - Mis en ligne le 25/10/2005 - Publié en Décembre 2004

En tant qu'administrateur de base de données (DBA) et analyste de données, je ne peux pas, en dépit de tous mes efforts, toujours éviter d'écrire du code pour résoudre des problèmes complexes ou tirer parti de la richesse des outils de gestion proposés par SQL Server. Au fil des années, j'ai écrit des scripts de solutions pour toutes sortes de projets liés à  SQL Server, allant de la création de lots DTS (Data Transformation Services) à  l'écriture de code ASP (Active Server Pages), me réjouissant chaque fois que je suis parvenu à  me dépêtrer des erreurs de syntaxe et de la logique des boucles imbriquées. Toutefois, lorsque Microsoft a sorti SQL Server 2000 Reporting Services, une solution qui requiert Visual Studio .NET 2003 pour l'élaboration de rapports, j'ai craint d'être obligé de franchir le pas et de devenir un développeur accompli. Mais, en fait, vous n'avez pas besoin d'être un programmeur pour développer un rapport Reporting Services. Cet outil propose deux fonctionnalités de rapports puissantes, les paramètres et les expressions, qui une fois combinées permettent aux créateurs de rapports d'ajouter des fonctionnalités sophistiquées à  leurs rapports sans écrire du code à  rallonge.

Lire l'article
L’automatisation des traces en 9 étapes

L’automatisation des traces en 9 étapes

par Steven Berringer - Mis en ligne le 25/10/2005 - Publié en Décembre 2004

Le Générateur de profils, la fonctionnalité de trace intégrée de SQL Server, constitue un outil précieux pour l'optimisation des performances et le débogage des applications SQL Server. Vous pouvez ainsi tracer chaque requête soumise par une application de base de données à  SQL Server et exploiter ces informations pour améliorer les performances. Par exemple, si vous exécutez une trace du Générateur de profils au cours d'un processus de longue durée, vous pourrez constater que SQL Server utilise une analyse de table, rencontrant ainsi des verrous de table ou aboutissant à  d'autres événements nuisibles pour les performances. Dans la majorité des cas, je me sers du Générateur de profils à  la demande d'un développeur qui essaie de déboguer du code de base de données épineux. Parfois, si j'ai le temps, j'adopte une approche préventive et j'exécute ma trace favorite, à  savoir la trace Duration. Celle-ci recherche les processus accédant à  SQL Server et dont la durée d'exécution est supérieure à  1 seconde. Cette valeur d'une seconde semble une limite appropriée, car cela vous permet de voir les processus qui consomment le plus de ressources sans tout monopoliser.

Lire l'article
UDM : le meilleur des deux mondes

UDM : le meilleur des deux mondes

par Michael Otey - Mis en ligne le 30/03/2005 - Publié en Juin 2004

Le nouveau modèle d'Analysis Services combine le meilleur du reporting relationnel et du reporting OLAP

La prochaine version d'Analysis Services, fournie avec la nouvelle mouture de SQL Server (Yukon), regroupera les meilleurs aspects de l'analyse OLAP traditionnelle et du reporting relationnel dans un modèle dimensionnel unique, UDM (Unified Dimensional Model), à  même de couvrir les deux catégories de besoins. Par rapport aux accès directs liés aux bases de données relationnelles, la technologie OLAP procure de nombreux avantages aux analystes ...Le modèle de données dimensionnel d'OLAP permet de comprendre, de parcourir et d'explorer facilement les données. Par ailleurs, sa fonction de précalcul des données agrégées permet de répondre rapidement aux requêtes ad hoc, même sur des volumes de données importants. Un moteur analytique prenant en charge le langage d'interrogation MDX (Multidimensional Expression) vous permet d'effectuer des calculs analytiques. Par ailleurs, le modèle de données d'OLAP inclut des métadonnées riches, grâce auxquelles il est par exemple possible d'utiliser des noms orientés métier conviviaux.

Toutefois, le reporting s'appuyant directement sur la base de données sous-jacente demeure avantageux. OLAP, qui est traditionnellement structuré autour de schémas en étoile ou en flocon, ne gère pas les relations complexes arbitraires pouvant exister entre les tables. Le reporting à  partir de la base de données sous-jacente permet de manipuler un schéma flexible. Les cubes OLAP exposent également les données dans des hiérarchies prédéterminées, ce qui rend inenvisageable de véritables requêtes ad hoc sur des tables comportant des centaines de colonnes. L'accès direct au référentiel relationnel signifie que les résultats sont en temps réel, qu'ils reflètent toutes les modifications au fur et à  mesure qu'elles sont apportées et que vous pouvez explorer les données jusqu'au niveau de détail le plus poussé. De surcroît, le fait de ne pas introduire un référentiel OLAP distinct est synonyme d'économies en termes de gestion et de coût total de possession (TCO). Le tableau 1 compare les avantages du reporting relationnel et du reporting OLAP.

De nombreux outils de reporting relationnel essaient d'exploiter certains avantages procurés par OLAP en fournissant un modèle de données orienté utilisateur au-dessus de la base de données relationnelle et en réacheminant l'accès au reporting à  travers ce modèle. Ainsi, les nombreuses entreprises qui ont besoin du reporting OLAP et du reporting relationnel finissent toutes avec de multiples outils de reporting, chacun avec des modèles propriétaires, des API et des outils utilisateurs finaux distincts. Cette duplication des modèles aboutit à  une architecture hétérogène complexe. En revanche, le nouveau modèle UDM d'Analysis Services combine le meilleur des approches OLAP et relationnelle afin d'étendre les fonctionnalités et la souplesse d'utilisation du reporting.

Lire l'article
Plug in Microsoft SQL Server

Plug in Microsoft SQL Server

Arkeia Corporation, éditeur international de solutions de sauvegarde destinées aux entreprises, vient d'annoncer la sortie d'un plug-in destiné à la sauvegarde à chaud des données de Microsoft SQL Server.

Le nouveau plug-in Arkeia Network Backup protège les serveurs MS SQL en environnement hétérogène sans interrompre pour ce faire les services en cours d'exploitation.

Lire l'article
Types de documents XML

Types de documents XML

par Michael Otey - Mis en ligne le 30/03/2005 - Publié en Avril 2004

XML est devenu un outil d'interopérabilité vital et un composant essentiel de nombreuses applications. Visual Studio .NET l'utilise en tant que principale infrastructure de programmation pour les communications intra-objets et pour la création de fichiers de projet ...Voici les sept types de documents XML utilisés le plus fréquemment par les développeurs dans les applications de base de données SQL Server.

Lire l'article
SQL Server Actualités – Semaine 3 –  2005

SQL Server Actualités – Semaine 3 – 2005

Les actualités SQL Server pour le mois de Janvier 2005

Lire l'article
SQL Server Actualités – Semaine 11 –  2005

SQL Server Actualités – Semaine 11 – 2005

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

Lire l'article
Quest Central pour SQL Server

Quest Central pour SQL Server

Quest Software annonce la disponibilité de la version 5.0 de Quest Central pour SQL Server.

La suite intégrée d'outils d'administration pour les bases de données Quest Central, s'enrichit de fonctions avancées pour l'analyse et l'optimisation des performances des environnements Microsoft SQL Server.

Lire l'article
Gestimum PME V3

Gestimum PME V3

GESTIMUM, éditeur d'une offre alternative de gestion intégrée destinée aux PME & PMI, filiale du Groupe EBP, lance GESTIMUM PME V3.

S'appuyant sur la technologie Microsoft SQL Server Mode Client/Serveur, GESTIMUM PME V3 se caractérise par sa richesse fonctionnelle, sa simplicité d'utilisation ses capacités inégalées de personnalisation et son ouverture sur les autres applications de l'entreprise.

Lire l'article
Un BLOB d’une autre couleur

Un BLOB d’une autre couleur

par Michael Otey - Mis en ligne le 19/01/2004 - Publié en Février 2004

Peut-être êtes-vous habitués aux BLOB dans ADO. Mais un BLOB dans ADO.NET, c'est autre chose

Il faut beaucoup de travail pour convertir d'anciennes applications ADO en ADO.NET. Et l'une des principales difficultés pour passer à  ADO.NET est la conversion du code d'import ou d'export de BLOB. De nombreuses fonctions d'ADO.NET et d'ADO sont très voisines ; mais l'accès BLOB n'est pas l'une d'elles ...Dans ADO, on manipule les données BLOB en utilisant les objets Recordset et Field standard avec soit les méthodes de découpage de l'objet Field, soit l'objet Stream. Or, aucun de ces objets n'existe dans ADO.NET. Dans ADO.NET, on peut utiliser le SqlDataReader pour extraire des données BLOB de la base de données SQL Server, puis utiliser les objets ADO.NET DataSet et DataField pour importer des données BLOB du système de fichiers dans SQL Server. Avant d'examiner le code utilisé pour accéder aux BLOB dans ADO.NET, commençons par examiner les BLOB.

Lire l'article
Clustering de SQL Server

Clustering de SQL Server

par Brian Knight - Mis en ligne le 16/03/2005 - Publié en Avril 2004

6 étapes vers la haute disponibilité de SQL Server

Pour l'administrateur de bases de données (DBA), la mise en cluster d'un SQL Server est source d'inquiétude, un peu parce que cet exercice était déjà  difficile dans SQL Server 7.0 et les releases antérieures. Heureusement, dans SQL Server 2000, le clustering est moins intimidant. Les six étapes que je couvre dans cet article constituent un canevas de base permettant d'établir un environnement en cluster pour SQL Server 2000 ...Le failover clustering est le meilleur moyen d'instaurer la haute disponibilité dans un environnement SQL Server. Pour mettre en cluster des serveurs Windows, on utilise le service Microsoft Cluster pour relier entre eux plusieurs serveurs. Avec le service Cluster, si une panne survient dans un composant matériel crucial ou dans le service SQL Server, les lecteurs, SQL Server, et les services associés, basculent tous sur un serveur secondaire. Ce basculement généralisé est automatique et prend entre 30 et 60 secondes. Avec d'autres solutions haute disponibilité de SQL Server, comme le log shipping ou la réplication, en cas de défaillance du serveur principal, quelqu'un doit changer manuellement les rôles sur le serveur secondaire. Bien que le log shipping offre une bonne solution de redondance, il s'appuie sur la maintenance manuelle et il peut être difficile à  instaurer.
Avant de commencer l'opération de clustering, il faut bien comprendre que la seule fin du clustering Windows est la haute disponibilité. En effet, le clustering n'améliore pas la performance de SQL Server puisqu'un seul serveur travaille à  la fois - les serveurs reliés ne traitent pas les requêtes ensemble. Pour voir comment le clustering trouve sa place dans le puzzle de la haute disponibilité de SQL Server, voir l'article de Michael Hotek « Solutions haute disponibilité », dans ce numéro.

Lire l'article
Tout sur Reporting Services

Tout sur Reporting Services

par Brian Larson et Martin Voegele - Mis en ligne le 19/01/2004 - Publié en Février 2004

Tout sur le nouvel outil SQL Server 2000 : le reporting de la conception à  la livraison

Initialement, Microsoft avait l'intention de livrer Reporting Services dans le cadre de la prochaine release Yukon de SQL Server. Mais les utilisateurs qui ont reçu les toutes premières descriptions et démonstration de Reporting Services ont été séduits et ont dit à  Microsoft qu'ils voulaient ces fonctions le plus tôt possible. Microsoft a écouté et a réagi de deux manières : en faisant de Reporting Services un add-in à  SQL Server 2000 et en intégrant les fonctions dans Yukon ...Mais pourquoi ce vif intérêt ? Sans Reporting Services, le seul moyen de délivrer des informations de gestion de dernière minute sur Internet ou sur l'intranet de la société consiste à  coder des pages Web dynamiques ou à  utiliser un outil de reporting tierce partie. Malheureusement, le coding de pages dynamique est une opération longue qui nécessite généralement un développeur expérimenté et les solutions de reporting tierce partie sont onéreuses.
Grâce à  Reporting Services, des utilisateurs plus ou moins compétents pourront créer leurs propres rapports dynamiques. Bien que vous puissiez ajouter du code à  un rapport pour mieux contrôler le formatage et les données, vous pouvez construire des rapports très élaborés sans aucune expérience de programmation. Vous pouvez présenter des rapports sur Internet ou sur un intranet en plusieurs formats, dont PDF et TIFF, de bonne apparence à  la fois dans un navigateur et sous forme imprimée. De plus, Reporting Services permet d'accéder à  ces rapports de manière commode et sécurisée.
Plutôt que de créer un nouvel environnement de développement pour produire des rapports Reporting Services, Microsoft a utilisé son IDE (integrated development environment) existant, Visual Studio .NET. Vous pouvez créer des rapports avec n'importe quelle édition de Visual Studio .NET 2003. Vous pouvez déployer les rapports provenant de Visual Studio .NET sur un Report Server, qui gère la sécurité, la mise en cache des données et autres fonctions de reporting. Le Report Server délivre les rapports aux destinataires dans divers formats par la méthode pull (à  la demande de l'utilisateur) ou push (livraison planifiée).
La « colle » qui relie le rapport conçu dans Visual Studio .NET au rapport que Report Server délivre est le nouveau RDL (Report Definition Language) de Microsoft. Ce langage de type XML contient toutes les informations concernant la conception de rapports. Vous commencez par créer un rapport comme un document RDL dans Visual Studio. Ce dernier déploie ensuite le RDL sur un Report Server, lequel le stocke dans une base de données SQL Server. Quand Reporting Services délivre un rapport à  un utilisateur, il traite la définition du rapport RDL et le présente dans un format plus usuel comme une page HTML ou un document Adobe PDF.

Lire l'article
SQL Server Actualités – Semaine 9 –  2005

SQL Server Actualités – Semaine 9 – 2005

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

Lire l'article
Fonctionnalités de haute disponibilité

Fonctionnalités de haute disponibilité

La famille de produits SQL Server 2005 a été repensée afin de mieux répondre aux besoins de toutes les entreprises.

Cette ligne de produits apporte des fonctionnalités de haute disponibilité, de montée en charge, de sécurité, d'administration et d'analyse décisionnelle.

Lire l'article
Une division entièrement dédiée aux éditeurs de logiciels

Une division entièrement dédiée aux éditeurs de logiciels

par Michael Hotek - Mis en ligne le 3/03/2005 - Publié en Avril 2004

Daniel Cohen-Zardy, Responsable Relation Editeurs de logiciels, Microsoft France répond à  quelques questions.

Lire l'article
SQL Server Actualités – Semaine 21 –  2005

SQL Server Actualités – Semaine 21 – 2005

Les actualités SQL Server pour le mois de Mai 2005

Lire l'article
Solutions Haute Disponibilité

Solutions Haute Disponibilité

par Michael Hotek - Mis en ligne le 3/03/2005 - Publié en Avril 2004

Pour rendre un système vraiment disponible

La haute disponibilité est l'un des crédos de l'industrie informatique, mais savez- vous ce qu'elle signifie et comment l'obtenir ? Les spécialistes des technologies de l'information tentent chaque jour d'instaurer la haute disponibilité à  grand renfort de matériel et de logiciel coûteux, sans s'attaquer au vrai problème ...Techniciens et managers, ils sont nombreux à  croire que la haute disponibilité est une solution « en boîte » qu'on met en place puis qu'on oublie. Malheureusement, la technologie n'est qu'une pièce du puzzle haute disponibilité.

La véritable haute disponibilité est une combinaison de gens, de processus et de technologies. Bien que l'on puisse bâtir des solutions hautement disponibles sans l'un de ces composants, le fait de faire appel aux trois assure une disponibilité de niveau professionnel, même dans des environnements modestes. Sans les gens compétents capables de gérer les processus rendant les systèmes hautement disponibles, la seule technologie ne suffira pas. Comment mesure-t-on la disponibilité ? Les professionnels IT la définissent par cette équation :
A = (F - (D + R))/F
où A est la disponibilité, F est le temps moyen entre des défaillances, D est le temps moyen pour détecter la défaillance et adopter un remède, et R est le temps moyen de réparation. Les trois facteurs que vous maîtrisez le plus sont : le temps moyen de réparation, le temps moyen de détection d'une défaillance, et le temps moyen pour choisir un remède. Pour détecter une défaillance, il faut de la technologie et du personnel formé. Une personne compétente peut prévenir certaines défaillances et en détecter d'autres avant qu'elles ne sévissent, et appliquer des remèdes qui gardent le système online. Cette maintenance préventive englobe de puissants processus qui fournissent des chiffres de performances servant d'étalon de supervision et de comparaison à  l'équipe d'exploitation. Pour un administrateur de base de données (DBA, database administrator), il est très important de savoir quand le système fonctionne comme prévu et quand quelque chose d'anormal se produit. Si des processus de test de charge ne sont pas en place, on ne peut obtenir des chiffres de performances qu'en observant l'application après sa mise en production, au risque d'obtenir de faux résultats si elle déraille dès le départ. Les résultats de test de performances d'une application permettent aux DBA de diagnostiquer rapidement des problèmes en cours de production.
Le seul facteur que vous ne maîtrisez pas est le temps moyen entre défaillances : il est totalement imprévisible. Par conséquent, les investissements en haute disponibilité doivent être consacrés d'une part aux gens et aux processus pour réduire le temps de détection et de prise de décision, et d'autre part à  la technologie pour réduire le temps de détection et de réparation.
Retenez l'ensemble de règles suivant :

  • La bonne gestion impose la haute disponibilité.
  • Ce sont des personnes qui gèrent les solutions haute disponibilité.
  • Les processus assurent le bon fonctionnement de ces solutions.
  • La technologie apporte l'élément « physique » de la haute disponibilité.
Le diagramme de la figure 1 résume ces règles. Sans gens et sans processus, pas de haute disponibilité.

Lire l'article
Microsoft SQL Server 2000 Reporting Services

Microsoft SQL Server 2000 Reporting Services

Geac annonce l'intégration dans MPC, sa solution de gestion de la performance, d'un nouveau module de business intelligence, basé sur les outils de l'offre 'Microsoft SQL Server 2000 Reporting Services'.

Ce nouveau module permettra aux clients de Geac et de Microsoft, de disposer d'outils de reporting puissants, au travers de l'édition automatique de rapports adaptables et configurables en fonction de différents cibles d'entreprise : analystes, auditeurs, comités de direction, managers...

Lire l'article
SQL Server Actualités – Semaine 7 –  2005

SQL Server Actualités – Semaine 7 – 2005

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

Lire l'article