Microsoft TechNet - Les End Points ou points de terminaison



Documents pareils
Installation de SQL Server Reporting Services avec l intégration dans un site Windows SharePoint Services V3

Sauvegarde des bases SQL Express

Créer un rapport pour Reporting Services

La double authentification dans SharePoint 2007

Exploiter les statistiques d utilisation de SQL Server 2008 R2 Reporting Services

Corrigé de l'atelier pratique du module 8 : Implémentation de la réplication

Reporting Services - Administration

Déploiement d'une application Visual Studio Lightswitch dans Windows Azure.

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2

Les Utilisateurs dans SharePoint

SQL Historique

Installation de SharePoint Foundation 2013 sur Windows 2012

Déployer une application Web avec WebMatrix et Ma Plateforme Web

Vulnérabilités et sécurisation des applications Web

Déploiement d'une base SQL Express

RTE Technologies. RTE Geoloc. Configuration avec Proxy ou Firewall

Microsoft Application Center Test

SQL Server et Active Directory

Mettre en place un accès sécurisé à travers Internet

Microsoft OSQL OSQL ou l'outil de base pour gérer SQL Server

La réplication sous SQL Server 2005

Sommaire. Etablir une connexion avec une base de données distante sur PostGreSQL

CREATION WEB DYNAMIQUE

TUTORIEL RADIUS. I. Qu est-ce que RADIUS? II. Création d un groupe et d utilisateur

Encryptions, compression et partitionnement des données

INTRODUCTION AUX TESTS DE PERFORMANCE ET DE CHARGE

Utiliser SQL Server 2008 R2 Reporting Services comme source de donne es pour Microsoft Excel

Bee Ware. Cible de Sécurité CSPN. Validation Fonctionnelle Validation Fonctionnelle Bon pour application AMOA BEEWARE BEEWARE

K?ellaWeb Saisie des absences, retards et sanctions APLON en mode Web


AVANT PROPOS. Merci d avoir choisi WATCHDOC!

Bases de données relationnelles

Création et Gestion des tables

Corrigé de l'atelier pratique du module 3 : Récupération d'urgence

Mise en place d un serveur HTTPS sous Windows 2000

Host Integration Server 2000

Procédures Stockées WAVESOFT ws_sp_getidtable Exemple : ws_sp_getnextsouche Exemple :... 12

Corrigé de l'atelier pratique du module 5 : Analyse de SQL Server

MOBILITE. Datasheet version 3.0

Utiliser Reporting Services pour des NewsLetter

Authentification avec CAS sous PRONOTE.net Version du lundi 19 septembre 2011

Sécurisation des accès au CRM avec un certificat client générique

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement

Serveur FTP. 20 décembre. Windows Server 2008R2

Gestion des utilisateurs et de leurs droits

Assistance à distance sous Windows

LES ACCES ODBC AVEC LE SYSTEME SAS

CS REMOTE CARE - WEBDAV

Olivier Mondet

Procédure d utilisation et de paramétrage (filtrage) avec IPFIRE

MANUEL D INSTALLATION DE WATCHDOC 2011 (EVALUATION)

Gestion des utilisateurs, des groupes et des rôles dans SQL Server 2008

Pratique et administration des systèmes

Langage SQL : créer et interroger une base

Configuration de Microsoft Internet Explorer pour l'installation des fichiers.cab AppliDis

Sophos Endpoint Security and Control Guide de configuration pour réseaux étendus. Enterprise Console, version 3.1 EM Library, version 1.

Connexion à SQL Server 2005 à partir du serveur d application SJSAS 9 Utilisation d une interface JDBC

Pré-requis pour les serveurs Windows 2003, Windows 2008 R2 et Windows 2012

Installation d un groupe de disponibilité avec SQL Server 2012 AlwaysOn (CTP3) qsjdlkqjs

Installation de Premium-RH

INSTALLATION D UN PORTAIL CAPTIF PERSONNALISE PFSENSE

Mise en place d'un antivirus centralisé

MANUEL D INSTALLATION D UN PROXY

Service de certificat


INSTALLATION DE L APPLICATION DU CONTEXTE ITASTE

Vulnérabilités et solutions de sécurisation des applications Web

FileMaker Server 14. Aide FileMaker Server

Procédure pas à pas de découverte de l offre. Service Cloud Cloudwatt

Standard. Manuel d installation

Procédure d'installation de SQL Server Express 2005

SQL Express face à la concurrence

L identité numérique. Risques, protection

Déployer une application cliente avec le Framework.NET 3.5 Client Profile

Pré-requis serveur d'applications AppliDis pour Microsoft Windows Server 2012

WDpStats Procédure d installation

Bases de Données relationnelles et leurs systèmes de Gestion

Olivier Deheurles Ingénieur conception et développement.net

GUIDE D INSTALLATION DE L APPLICATION GECOL SUR

Un exemple d'authentification sécurisée utilisant les outils du Web : CAS. P-F. Bonnefoi

Service Systèmes et Réseaux

Interagir avec le SharePoint. Version 1.0

Administration Centrale : Opérations

ArcGIS 10.1 for Server

Guide d installation d AppliDis Free Edition sur Windows Serveur 2008 R2

1. Mise en œuvre du Cegid Web Access Server en https

Chapitre 1 Windows Server

Rafraichissement conditionné d'une page en.net

Création d'un site web avec identification NT

KPI (Key Performance Indicator) dans MOSS

1 Introduction et installation

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

Système Normalisé de Gestion des Bibliothèques -SYNGEB : version Réseau-

Pré requis Microsoft Windows Server 2008

contact@nqicorp.com - Web :

Cours de SQL SERVER 2005 SQL SERVER 2005

Sécuriser les serveurs Web (IIS5 et IIS6) Benoît HAMET Ingénieur d étude / Formateur MVP Concept Réseau

Transcription:

Page 1 sur 5 Plan du site Accueil International Rechercher sur Microsoft France : Ok Accueil TechNet Produits & Technologies Solutions IT Sécurité Interoperabilité Déploiement des postes de travail Scripting en anglais Téléchargements Support Newsletter TechNet Abonnement TechNet Evénements et séminaires Ressources en ligne Ressources communautaires Formation et certification Comment acheter Informations pour Repérez-vous Newsletter TechNet Contactez -Nous Produits & Technologies > Produits Serveurs > SQL Server Les End Points ou points de terminaison Par Romelard Fabrice, MVP.NET et Consultant Technique Ilem SA Membre du Groupe Utilisateurs SQL Server Avec SQL Server 2005, nous avons la possibilité de publier des objets SQL sous la forme de Web Services. Ceux-ci sont appelé des «End Points» EP ou points de terminaison. Nous allons donc voir comment mettre en place et gérer un EP. Dans un prochain article, nous verrons comment utiliser cet EP dans nos développements. Sur cette page Introduction Principe Création du Point de Terminaison Listage des EP présents sur notre serveur SQL Suppression ou modification d un EP Conclusion Introduction SQL Server 2000 supportait plus ou moins le XML grâce à l option FOR XML en sortie, avec la nouvelle version «SQL Server 2005», Microsoft a voulu franchir le pas du support complet du format XML. Cela a été facilité par l utilisation du FrameWork.NET 2.0. Dans cette stratégie, il fallait donc aussi regarder ce qui était possible avec les Web Services. En effet, depuis le développement des interactions entre les applications, les Web Services sont devenus très importants avec des architectures de plus en plus complexes. Jusqu à maintenant avec SQL Server 2000, on était obligé de développer ce Web Service alors que celui-ci ne fait par exemple que lister le contenu d une table SQL. Ainsi, on se retrouvait dans une situation nous obligeant à trouver un serveur IIS afin d héberger ce Web Service qui lui-même transfère la demande vers SQL Server afin d exécuter la procédure stockée. Ce résultat était alors retourné au serveur IIS qui l embarquait dans le flux XML pour le transférer au demandeur. On avait donc du travail inutile du point de vue du développement, mais surtout beaucoup de travail et de flux inutiles du point de vue des serveurs et du réseau. De plus, on savait déjà que le FrameWork.NET était capable de gérer des requêtes HTTP Cassini en est le parfait exemple. Ainsi, la solution a été de faire usage de cette possibilité directement dans SQL Server 2005. De ce fait, avec SQL Server 2005, nous pouvons directement référencer un Web Service qui sera exposé et géré par le moteur SQL Server lui-même. L objectif de cet article est donc de présenter ce travail et par la suite de présenter comment intégrer ce Web Service dans votre développement.net. Principe SQL Server 2005 est basé sur le FrameWork.NET 2.0 pour une partie de son fonctionnement interne, ainsi les EP sont une mise à la disposition des utilisateurs extérieurs de Web Services. Ces Web Services ne seront pas installés comme il est habituellement le cas dans le monde Windows sur IIS. En effet, avec le FrameWork.NET est venue la possibilité de répondre à des requêtes HTTP via HTTP.SYS. Ainsi lors de la mise à disposition de ces objets, il faudra d abord réserver un nom dans HTTP.SYS qui transférera toutes les requêtes correspondantes à cette réservation vers SQL Server 2005. Cette réservation est associée avec le paramétrage de cet EP qui lui permet de spécifier l URL d accès ainsi que toutes les options de cet EP. On pourra alors ajouter des méthodes à cet EP, ce sont les méthodes qui correspondent aux objets uniquement les fonctions ou Procédures Stockées de SQL Server 2005.

Page 2 sur 5 De ce fait, lorsque l application cliente de ce Web Service demande l url de celui-ci, le noyau HTTP du serveur HTTP.SYS détecte qu une réservation a bien été faite sur cette URL. Une fois cette vérification faite, le transfert est effectué et SQL Server prend en charge cette requête afin de retourner ce qui est demandé résultat WSDL, exécution de la méthode,. Maintenant que nous avons vu le principe de fonctionnement, voyons comment faire pour créer un EP. Création du Point de Terminaison On ne peut publier que certains objets SQL Server en EP, il s agit en effet uniquement des fonctions et des procédures stockées utilisateurs. Nous baserons notre exemple sur la base fournie avec SQL Server 2005: AdventureWorks Cette base contient un ensemble de tables permettant de construire une maquette. Nous prendrons un exemple simple de sélection des 10 premiers clients classés par ordre alphabétique Nom, Prénom et Email. Cette procédure stockée ne prend donc aucun paramètre en entrée. USE AdventureWorks CREATE PROCEDURE Selection10PremiersClients AS SELECT TOP 10 Cont.LastName AS Nom, Cont.FirstName AS Prénom, Cont.EmailAddress AS Email FROM Person.Contact Cont ORDER BY Cont.LastName ASC, Cont.FirstName ASC Nous avons donc maintenant une procédure stockée très simple qui doit ensuite être utilisée dans une application Web qui n a pas accès au serveur SQL, nous souhaitons donc utiliser un Web Service pour cela. Il faut donc alors utiliser la procédure de création des End Points avec un script comme celui qui suit : CREATE ENDPOINT SQLEP_ArticleTechnet STATE = STARTED AS HTTP PATH = '/EndPointArticleTechnet', AUTHENTICATION = INTEGRATED, PORTS = CLEAR, CLEAR_PORT = 8080, SITE = 'localhost' WEBMETHOD 'Liste10PremiersClients' NAME='AdventureWorks.dbo.Selection10PremiersClients', BATCHES = DISABLED, WSDL = DEFAULT, DATABASE = 'AdventureWorks', NAMESPACE = 'http://adventure-works/persons' Vous pouvez trouver toutes les options et paramètres possibles pour cette commande de création sur le site de la MSDN : CREATE ENDPOINT Transact-SQL Pour simplifier, la première partie correspond aux options de ce Web Service, la seconde est liée à la méthode qui va être associée à ce Web Service.

Page 3 sur 5 L URL de ce Web Service est dans notre cas : http://localhost:8080/endpointarticletechnet Nous avons activé la publication du WSDL c est une vision XML qui permet de connaître les méthodes exposées et leurs paramètres, cette vision est disponible en ajoutant «?WSDL» à notre URL, ce qui donne dans notre exemple : http://localhost:8080/endpointarticletechnet?wsdl Si on ouvre cette URL dans un navigateur internet, nous aurons une demande d authentification puis le WSDL de ce Web Service. Listage des EP présents sur notre serveur SQL En tant que DBA, il est utile de savoir si des EP ont été mis en place sur un serveur, pour cela il faut interroger des tables système en utilisant les requêtes suivantes. FROM sys.endpoints WHERE sys.endpoints.protocol_desc= 'HTTP'; FROM sys.http_endpoints; FROM sys.soap_endpoints; FROM sys.endpoint_webmethods; La première table «sys.endpoints» permet de lister les End Points créés. En effet, le protocole HTTP est une des possibilités de points de terminaison, mais il existe d autres. La seconde table «sys.http_endpoints» nous donne la liste des EP HTTP ainsi que les paramètres d accès de chacun sécurité, URL, port,. La troisième table «sys.soap_endpoints» retourne les paramètres SOAP et WSDL ce ces points de terminaison vision WSDL ou non, base de données par défaut, espace de nom,. La dernière table «sys.endpoints_webmethods» retourne la liste des méthodes associées à ces EP. On peut bien sur associer plusieurs méthodes pour un seul point de terminaison.

Page 4 sur 5 Suppression ou modification d un EP Dans le cas où un point de terminaison n est plus utile, on peut bien sur le supprimer avec la commande DROP, comme suit : DROP ENDPOINT SQLEP_ArticleTechnet On peut aussi désactiver un EP, afin éventuellement de le réutiliser plus tard sans pour autant le supprimer. STATE = DISABLED On peut choisir pour cette option «DISABLED» qui demande au serveur de ne plus du tout écouter le point de terminaison et donc ne plus répondre aux demandes. La seconde option possible est «STOPPED» pour laquelle le serveur continue d écouter le point de terminaison, mais de retourner une erreur. Dans le cadre d un développement, on peut souhaiter laisser la vision du WSDL, mais le désactiver pour les serveurs de production pour des raisons de sécurité, il faut alors exécuter le script suivant. WSDL = NONE La vision de la précédente URL dans un navigateur retournera alors une page blanche. Maintenant, comme nous l avons expliqué juste au dessus, nous souhaitons ajouter une seconde méthode à cet EP, il faut alors passer par un script de mise à jour. Nous créerons dans un premier temps une procédure stockée afin d obtenir les dix premiers contacts dont le nom commence par une lettre transmise. USE AdventureWorks CREATE PROCEDURE Selection10PremiersClientsSuivantLettre @Lettre AS char AS SELECT TOP 10 Cont.LastName AS Nom, Cont.FirstName AS Prénom, Cont.EmailAddress AS Email FROM Person.Contact Cont WHERE Cont.LastName LIKE @Lettre +'%' ORDER BY Cont.LastName ASC, Cont.FirstName ASC Il nous faut donc mettre à jour notre EP afin d ajouter la procédure nouvellement créée. Cela se fait toujours avec la commande «ALTER ENDPOINT» comme suit. ADD WEBMETHOD 'Liste10PremiersClientsSuivantLettre' name='[adventureworks].[dbo].[selection10premiersclientssuivantlettre]' ; Nous pouvons comme dans tout Web Service publier autant de méthodes que nous le souhaitons. Conclusion Nous avons vu cette nouvelle possibilité offerte avec la version SQL Server 2005. Cette mise à disposition de Web Service n est pas possible avec SQL Server 2005 Express Edition. Pour les autres versions, cette possibilité permet de penser autrement ses mises en place de Web Service. On peut même réfléchir sur de nouvelles architectures pour des développements ou l ouverture du port SQL Server standard est un problème. En effet, le gain de temps dans les développements utilisant les Web Services comme alimentation de données trouveront un intérêt tout particulier à cette possibilité. Pour ce qui est de la sécurité, il faut faire très attention et s accorder avec les administrateurs des serveurs lors du choix de la mise en place de cette solution. Elle peut en effet impacter de nombreuses configurations pour les FireWall et les

Page 5 sur 5 routeurs par exemple. Nous allons pouvoir nous attarder dans la prochaine partie sur l utilisation de cet End Point dans un développement.net Gérez votre profil Contactez Microsoft 2006 Microsoft Corporation. Tous droits réservés. Conditions d'utilisation Marques Confidentialité A propos de ce site