40
Technologies Web Technologies Web Microsoft Microsoft Benoit BARTHELEMY Benoit BARTHELEMY Fabrice JACOB Fabrice JACOB

Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

Embed Size (px)

Citation preview

Page 1: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

Technologies Web Technologies Web

MicrosoftMicrosoft

Benoit BARTHELEMYBenoit BARTHELEMY

Fabrice JACOBFabrice JACOB

Page 2: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

SommaireSommaire

IntroductionIntroduction

Internet Information ServiceInternet Information Service

ASPASP

.Net et ASP.NET.Net et ASP.NET

Web serviceWeb service

Page 3: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

SommaireSommaire

IntroductionIntroduction

Internet Information ServiceInternet Information Service

ASPASP

.Net et ASP.NET.Net et ASP.NET

Web serviceWeb service

Page 4: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

Internet Information ServiceInternet Information Service

Service WWWService WWW

Service FTPService FTP

Service NNTPService NNTP

Service SMTPService SMTP

Sécurité et AuthentificationSécurité et Authentification

Filtres ISAPIFiltres ISAPI

Page 5: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

Service WWWService WWW WWW = World Wide Web ServiceWWW = World Wide Web Service

HTTP - HyperText Transfert Protocol - fondé par Tim HTTP - HyperText Transfert Protocol - fondé par Tim Berners Lee, développé et utilisé par le WWW à Berners Lee, développé et utilisé par le WWW à partir de 1990.partir de 1990. Le protocole HTTP sert à la communication entre Le protocole HTTP sert à la communication entre

le client et le serveurle client et le serveur L'avantage de ce processus est de limiter au L'avantage de ce processus est de limiter au

maximum le temps d'occupation du serveurmaximum le temps d'occupation du serveur

HTTP 1.1 (RFC 2616)HTTP 1.1 (RFC 2616) Nouvelles méthodesNouvelles méthodes Nouvelles directivesNouvelles directives Les cachesLes caches Négociation de contenuNégociation de contenu SécuritéSécurité

Page 6: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

Echange Client-ServeurEchange Client-Serveur

Client Client

WebWeb

ServeurServeur

IISIIS

Emission d’une RequeteEmission d’une Requete

Réponse de la requete ( HTTP + HTML )Réponse de la requete ( HTTP + HTML )

Une fois que le serveur à répondu, il ne garde aucune trace de la requete

Page 7: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

FTP – NNTP - SMTPFTP – NNTP - SMTP• FTP = File Transfer Protocol ServiceFTP = File Transfer Protocol Service

L’un des premiers protocoles utilisés sur le réseau TCP/IP L’un des premiers protocoles utilisés sur le réseau TCP/IP et sur internet servant au transfert de fichieret sur internet servant au transfert de fichier

• SMTP = Simple Mail Transfer Protocol Service SMTP = Simple Mail Transfer Protocol Service Service de messagerie securisé et evolutifService de messagerie securisé et evolutif Prend en charge les messageries éléctonique distribuée Prend en charge les messageries éléctonique distribuée

utilisant les protocoles SMTP et POP3utilisant les protocoles SMTP et POP3

• NNTP = Network News Transport Protocol ServiceNNTP = Network News Transport Protocol Service Création de groupes de discussion avec authentificationCréation de groupes de discussion avec authentification Fourni les autorisations d’acces aux groupes de Fourni les autorisations d’acces aux groupes de

discussiondiscussion Authentification sécurisée basée sur le technologie NT Authentification sécurisée basée sur le technologie NT

server ou cryptée à l’aide du SSL (Secure Sockets Layer)server ou cryptée à l’aide du SSL (Secure Sockets Layer)

Page 8: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

Sécurité & authentificationSécurité & authentification

• SSLSSL

• SGCSGC

• FortezzaFortezza

• Authentification de baseAuthentification de base

• Authentification digest

• Authentification par CertificatsAuthentification par Certificats

Page 9: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

Filtres ISAPIFiltres ISAPI• Signifie Internet Server Application Programming InterfaceSignifie Internet Server Application Programming Interface

• Permet d’executer des applications écrites sous formes de Permet d’executer des applications écrites sous formes de DLLDLL

• Il permet de soulager la charge des serveurs IIS grâce au Il permet de soulager la charge des serveurs IIS grâce au prétraitement des paquets.prétraitement des paquets.

• Ce sont des outils très puissants permettant de simplifier un Ce sont des outils très puissants permettant de simplifier un certain nombre de procédures telles que :certain nombre de procédures telles que : CompressionCompression CryptageCryptage Authentification Authentification Autres requêtesAutres requêtes

Page 10: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

Gestion des ProcessusGestion des Processus Processus d'écoutes ou Workers ProcessesProcessus d'écoutes ou Workers Processes

HTTP.SYSHTTP.SYS

W3CoreW3Core

Filtres ISAPIFiltres ISAPI

W3WP.exeW3WP.exe

All AppsAll Apps

Application PoolApplication Pool

W3CoreW3Core

Filtres ISAPIFiltres ISAPI

W3WP.exeW3WP.exe

All AppsAll Apps

Application PoolApplication Pool

W3CoreW3Core

W3WP.exeW3WP.exe

Application PoolApplication Pool

Appls. Appls. ASP.netASP.net.Net App .Net App DomainDomain

.Net App .Net App DomainDomainAppl. Appl.

Domain .NEDomain .NETT

Page 11: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

SommaireSommaire

IntroductionIntroduction

IISIIS

ASPASP

.Net et ASP.NET.Net et ASP.NET

Web serviceWeb service

Page 12: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

HistoriqueHistorique

HTML fait sont apparation dans les années 90.HTML fait sont apparation dans les années 90.

En 1994, C'était le HTML 2.0. En 1994, C'était le HTML 2.0.

C'est en 1996 que le C'est en 1996 que le W3CW3C fut créé afin de mettre fin fut créé afin de mettre fin à l'anarchie des balises qui prévalait jusque là. à l'anarchie des balises qui prévalait jusque là. C'était la version HTML 3.2. Depuis, suite à C'était la version HTML 3.2. Depuis, suite à l'incessante évolution d'Internet, les versions se l'incessante évolution d'Internet, les versions se sont succédées jusqu'à arriver à la version actuelle, sont succédées jusqu'à arriver à la version actuelle, le HTML 4.01le HTML 4.01

En 1996, Microsoft annonce l'arrivée des ASP, afin En 1996, Microsoft annonce l'arrivée des ASP, afin de rendre dynamique les contenus HTML.de rendre dynamique les contenus HTML.

Page 13: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

Présentation ASPPrésentation ASP

Communication Client/ServeurCommunication Client/Serveur

Persistance d'informationsPersistance d'informations

Prise en charge de language de type Script (Vb Prise en charge de language de type Script (Vb script et Java script)script et Java script)

Gestion des base de donnée (ADO)Gestion des base de donnée (ADO)

Page 14: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

DescriptionDescription

Structure HTML classiqueStructure HTML classique

Balisage Spécifique ScriptBalisage Spécifique Script

ObjetsObjets ServerServer ApplicationApplication SessionSession RequestRequest

Page 15: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

FonctionnemetFonctionnemet

ASP (Active Server Pages) repose sur une ASP (Active Server Pages) repose sur une bibliothèque dynamique ISAPI (asp.dll)bibliothèque dynamique ISAPI (asp.dll) Interprête les scriptsInterprête les scripts

Réponse au client en HTTPRéponse au client en HTTP

Page 16: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

ExemplesExemples

Source ASPSource ASP

<<%@%@LanguageLanguage="VBScript" %="VBScript" %>>

<HTML><HTML>

<HEAD><HEAD>

<TITLE>Le titre de la page</TITLE><TITLE>Le titre de la page</TITLE>

</HEAD></HEAD>

<BODY><BODY>

<% FOR i = 1 to 6 %><% FOR i = 1 to 6 %>

<H<%= i%>>Titre de niveau <%= i<H<%= i%>>Titre de niveau <%= i%></H<%= i %>>%></H<%= i %>>

<% NEXT %> <% NEXT %>

</BODY></BODY>

</HTML></HTML>

Page 17: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

ExemplesExemples

Resultat clientResultat client

<HTML> <HTML>

<HEAD><HEAD>

<TITLE>Le titre de la page</TITLE><TITLE>Le titre de la page</TITLE>

</HEAD></HEAD>

<BODY> <BODY>

<H1>Titre de niveau 1</H1><H1>Titre de niveau 1</H1>

<H2>Titre de niveau 2</H2><H2>Titre de niveau 2</H2>

<H3>Titre de niveau 3</H3><H3>Titre de niveau 3</H3>

<H4>Titre de niveau 4</H4> <H4>Titre de niveau 4</H4>

<H5>Titre de niveau 5</H5><H5>Titre de niveau 5</H5>

<H6>Titre de niveau 6</H6><H6>Titre de niveau 6</H6>

</BODY></BODY>

</HTML></HTML>

Page 18: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

ConclusionConclusion

le code source des pages du site se trouve sur le le code source des pages du site se trouve sur le serveur de productionserveur de production

Les languages de script utilisés ne sont pas Les languages de script utilisés ne sont pas « typés ». « typés ».

Le Le scriptingscripting a également l’inconvénient d’être a également l’inconvénient d’être interprété interprété

ASP 3.0 est la dernière version d’asp qui n’évoluera ASP 3.0 est la dernière version d’asp qui n’évoluera plusplus

Page 19: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

SommaireSommaire

IntroductionIntroduction

Internet Information ServiceInternet Information Service

ASPASP

.Net et ASP.NET.Net et ASP.NET

Web serviceWeb service

Page 20: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

Objectif de .NetObjectif de .Net

Une plate-forme de développement qui s'installe de Windows (9x, NT, 2000, XP). L’architecture .NET est une couche logicielle (dll) de Windows qui comprend une librairie de classes et un environnement d’exécution.

Objectifs : Développer rapidement des applications n-tiers Web et Windows. Simplifier le développement, le déploiement et la maintenance du code, grâce au framework et à l’approche objet

Page 21: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

Structuration en coucheStructuration en couche

Page 22: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

DéfinitionsDéfinitions

Qu'est-ce que le MSIL ?Qu'est-ce que le MSIL ?

Microsoft Intermediate Language est, comme Microsoft Intermediate Language est, comme son son nom l'indique, un langage intermédiaire. nom l'indique, un langage intermédiaire.

Qu’est-ce que le CLR ?Qu’est-ce que le CLR ?

Le Common Language Runtime est Le Common Language Runtime est l'environnement l'environnement d'exécution. L'environnement d'exécution. L'environnement d'exécution (CLR) d'exécution (CLR) transforme le code MSIL en transforme le code MSIL en opcode compris par le opcode compris par le microprocesseur. Cette microprocesseur. Cette transformation est faite par le transformation est faite par le compilateur JIT compilateur JIT (Just In Time = à la volée)(Just In Time = à la volée)

Page 23: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

DéfinitionsDéfinitions

Qu'est-ce que le framework ?Qu'est-ce que le framework ?

C'est un ensemble de classes qui facilitent la C'est un ensemble de classes qui facilitent la vie vie du développeur (liste chaînée, fonctions du développeur (liste chaînée, fonctions mathématiques,...) et qui permettent mathématiques,...) et qui permettent d'accéder d'accéder au système (fichiers, fenêtres, graphiques, ...).au système (fichiers, fenêtres, graphiques, ...).

Page 24: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

Caractéristiques .NETCaractéristiques .NET Les applications sous .NET ne s’exécutent plus Les applications sous .NET ne s’exécutent plus

directement en code machine natif directement en code machine natif

Support de plus de 27 langages de Support de plus de 27 langages de programmation (VB.NET, C#, COBOL.NET, programmation (VB.NET, C#, COBOL.NET, Jscript…)Jscript…)

Apparition d’un nouveau langage : Apparition d’un nouveau langage : C#C#, proche , proche de Java, nouveau langage objet.de Java, nouveau langage objet.

Un framework :Une librairie de classes très riche Un framework :Une librairie de classes très riche ((Base Class LibrairieBase Class Librairie).).

Un atelier de développement complet : Un atelier de développement complet : Visual Visual Studio.NETStudio.NET

Page 25: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

La librairie des classesLa librairie des classes

Page 26: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

Qu’est-ce que ASP.NET ?Qu’est-ce que ASP.NET ?

ASP.NET est une architecture qui s’appuie sur le ASP.NET est une architecture qui s’appuie sur le framework .NET avec des contrôles framework .NET avec des contrôles supplémentairessupplémentaires

Son rôle est de simplifier le développement des Son rôle est de simplifier le développement des applications WEBapplications WEB

On applique le modèle de programmation Windows On applique le modèle de programmation Windows au monde du WEB (Événement)au monde du WEB (Événement)

Page 27: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

Caractéristiques de Caractéristiques de ASP.NETASP.NET

Les pages ASPX sont compiléesLes pages ASPX sont compilées

Le modèle utilise une technique (Code Behind) Le modèle utilise une technique (Code Behind) permettant une séparation entre le code de permettant une séparation entre le code de présentation et le code applicatifprésentation et le code applicatif

ASP.NET ASP.NET est basé sur un modèle composant coté serveurest basé sur un modèle composant coté serveur repose sur le Framework .NETrepose sur le Framework .NET prend en compte les différentes capacités des prend en compte les différentes capacités des

navigateurs (support JavaScript, DHTML)navigateurs (support JavaScript, DHTML)

Page 28: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

ASP Vs ASP.NETASP Vs ASP.NET

Le contenu et le traitement sont séparésLe contenu et le traitement sont séparés

Les développeurs et les graphistes peuvent, en Les développeurs et les graphistes peuvent, en standard, travailler indépendammentstandard, travailler indépendamment

Form1.aspForm1.asp Form1.aspxForm1.aspx Form1.aspx.csForm1.aspx.cs

<balises> codecode

Fichiers distincts / séparation logiqueUn seul fichier

ASPASP ASP .NETASP .NET

<balises>codecode

<balises>codecode

codecode

<balises>

Form1.aspxForm1.aspx

Page 29: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

La compilation à la voléLa compilation à la volé

RéponseRéponse

RéponseRéponse

ClasseClassede lade lapagepage Instanciation, Instanciation,

traitement,traitement,affichageaffichage

Classegénérée

GénèreGénère

InstancieInstancie

AnalyseAnalysemoteurmoteurASPXASPX

FichierASPX

RequêteRequête

RequêteRequête

Bro

wse

r W

ebB

row

ser

Web

Page 30: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

ConclusionConclusion

ASP .NET simplifie le développement d'applications ASP .NET simplifie le développement d'applications WebWeb

Montée en charge et performancesMontée en charge et performances

Meilleure productivité des développeursMeilleure productivité des développeurs

Robustesse des applicationsRobustesse des applications

Page 31: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

SommaireSommaire

IntroductionIntroduction

Internet Information ServiceInternet Information Service

ASPASP

.Net et ASP.NET.Net et ASP.NET

Web serviceWeb service

Page 32: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

ConceptConcept

Un service Web est une fonction applicative Un service Web est une fonction applicative échangeant des données au format XMLéchangeant des données au format XML

Communication Client / ServeurCommunication Client / Serveur httphttp

SOAPSOAP XMLXML

Destiné a tousDestiné a tous

Basé sur annuaire UDDI : Universal description, Basé sur annuaire UDDI : Universal description, discovery and integrationdiscovery and integration

Page 33: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

Les 4 phases d’un WebServiceLes 4 phases d’un WebService

AnnuaireUDDI

AnnuaireUDDI

ClientClientService

Web

ServiceWeb

InterfaceWSDL

SOAP

Enregistrement du service1

Recherche d’un service2

Récupération de l’interface du service3

Utilisation du service4

SOAP

HTTP

SOAP

Dév

elop

pem

ent

Pro

duc

tion

Wsdl : Web service description languageWsdl : Web service description language

Page 34: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

Les outils de développementLes outils de développement

De plus en plus de produits de développement ont De plus en plus de produits de développement ont une API pour gérer des Services Web.une API pour gérer des Services Web. Microsoft .NET : Visual Studio.NETMicrosoft .NET : Visual Studio.NET JavaJava Borland Delphi 6,7Borland Delphi 6,7 IBM WebService ToolkitIBM WebService Toolkit Apache SOAApache SOA

Page 35: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

Les WebServices .NETLes WebServices .NET

Windows 2000Windows 2000

IISIIS .Net Framework.Net Framework

ASP.NetASP.Net

ASMX

Service Web

WindowsWindows

.Net Framework.Net Framework

EXE

IISIISASP.NetASP.Net

ASPX

BDRBDR

AD

O.N

etA

DO

.Net

SOAP

Syste

m.W

eb

.Se

rvices

Syste

m.W

eb

.Se

rvices

Client

Page 36: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

RecommandationsRecommandations

Penser légerPenser léger XML est lourd à transporterXML est lourd à transporter

Gestion de la chargeGestion de la charge

SécuritéSécurité Attention aux données sensibleAttention aux données sensible

Page 37: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

ExempleExemple

Printemps.com : Gestion des listes de mariagePrintemps.com : Gestion des listes de mariage

Application Application PrintempsadeuxPrintempsadeux

Services Services

WebWebServices Services

WebWeb

HTMLHTML

Site webSite web

PartenairesPartenaires

Site webSite web

printempsadeuxprintempsadeux

Caisse Caisse magasinmagasin

Architecture: .NET (c#) et SQL server Architecture: .NET (c#) et SQL server 20002000

Page 38: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

Bilan sur le WebserviceBilan sur le Webservice

Surveiller les spécificationsSurveiller les spécifications AccèsAccès Sécurité et fiabilitéSécurité et fiabilité

Sur InternetSur Internet

Sur IntranetSur Intranet

Page 39: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

Conclusion de la Conclusion de la PrésentationPrésentation

Orientation des technologies MicrosoftOrientation des technologies Microsoft

Page 40: Technologies Web Microsoft Benoit BARTHELEMY Fabrice JACOB

Démonstration ?Démonstration ?