Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement...

18
Agenda de la journée Agenda de la journée 10h00 : La place d’ASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide d’applications Web en ASP.NET 12h00 : Construire des intranets de collaboration 12h30 : Pause Repas 14H00 : Solution d’hébergement 14H15 : Déployer et gérer des applications ASP.NET en production (IIS6) 14H45 : Starter Kits, Accélérateurs de projets Web 15h30 : Pause, Tirage du Jeu Concours 16h00 : ASP.NET Avancé: architecture en couches,

Transcript of Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement...

Page 1: Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide dapplications Web en ASP.NET 12h00 : Construire.

Agenda de la journéeAgenda de la journée

10h00 : La place d’ASP.NET dans la plate-forme Microsoft10h30 : Développement rapide d’applications Web en

ASP.NET12h00 : Construire des intranets de collaboration12h30 : Pause Repas14H00 : Solution d’hébergement14H15 : Déployer et gérer des applications

ASP.NET en production (IIS6)14H45 : Starter Kits, Accélérateurs de projets Web15h30 : Pause, Tirage du Jeu Concours16h00 : ASP.NET Avancé: architecture en couches,

Services Web, composants17h15 : Conclusion17h30 - 19H30 : Questions/Réponses,

Ateliers de prise en main, Apéro

Page 2: Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide dapplications Web en ASP.NET 12h00 : Construire.

Le serveur Web -Le serveur Web -Déploiement - SécuritéDéploiement - Sécurité

Rencontres ASP.NET : Rencontres ASP.NET : Développement RapideDéveloppement Rapided’Applications Webd’Applications Web

Page 3: Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide dapplications Web en ASP.NET 12h00 : Construire.

Agenda détailléAgenda détaillé

Rappels IIS 5 versus IIS 6.0IIS 6.0 : Internet Information Services

SécuritéRecyclageFiabilitéAdministrabilité WMI, ADSI, …

Déploiement d’application ASP.NETRessources et outilsQuestions / Réponses

Page 4: Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide dapplications Web en ASP.NET 12h00 : Construire.

Le modèle de IIS 5Le modèle de IIS 5

INETINFO.exeINETINFO.exe

MétabaseMétabase FTP, SMTP, FTP, SMTP, NNTPNNTP

W3SVCW3SVC

WinsockWinsock

Filtres ISAPIFiltres ISAPI

Appl.Appl.In-In-

processprocess

ASP.NETASP.NET

.Net App .Net App DomainDomain

.Net App .Net App DomainDomain

Application Application Domain .NETDomain .NET

ASPNET_WP.exeASPNET_WP.exe

Appl. Appl. Poolées Poolées

OOPOOP

DLLHOST.exeDLLHOST.exe

Isolated Isolated OOP AppOOP App

DLLHOST.exeDLLHOST.exe

Isolated Isolated OOP AppOOP App

DLLHOST.exeDLLHOST.exe

Appl. Appl. Poolées Poolées

OOPOOP

DLLHOST.exeDLLHOST.exe

Mode Utilisateur

Mode Noyau

Page 5: Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide dapplications Web en ASP.NET 12h00 : Construire.

Internet Information Services 6.0Internet Information Services 6.0Traitement des requêtesTraitement des requêtes

AdministrationAdministration& &

MonitoringMonitoring

AdministrationAdministration& &

MonitoringMonitoring

W3ADMW3ADM

HTTP.sysHTTP.sysHTTP.sysHTTP.sysCacheCacheCacheCacheQueueQueueQueueQueue

Kernel modeKernel mode

User modeUser mode

XMLXMLMetabaseMetabase

InetinfoInetinfo

FTPFTPFTPFTP

NNTPNNTPNNTPNNTP

SMTPSMTPSMTPSMTP

IIS 6.0IIS 6.0

RequestRequest ResponseResponse

Application Pools

……XX

TCP/IP

Page 6: Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide dapplications Web en ASP.NET 12h00 : Construire.

IIS 6.0IIS 6.0 Sécurité à plusieurs niveauxSécurité à plusieurs niveaux

Pas installé par défaut

Installé dans un état verrouillé

Fonctionne sous un compte à faibles privilèges

Extensions de fichiers connues

Outils en ligne de commande non accessibles aux utilisateurs

Contenus protégés en écriture

Protection contre les dépassements de buffers

Page 7: Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide dapplications Web en ASP.NET 12h00 : Construire.

Sécurité à l’installationSécurité à l’installation

Windows Server 2003 désactive plus de 20+ services

IIS n’est pas installé par défaut sur Windows Server 2003

Même une fois IIS installé :IIS components IIS 5.0 clean

installIIS 6.0 clean install

Static file support enabled enabled

ASP enabled disabled

Server-side includes enabled disabled

Internet Data Connector enabled disabled

WebDAV enabled disabled

Index Server ISAPI enabled disabled

Internet Printing ISAPI enabled disabled

CGI enabled disabled

Frontpage Server Extensions enabled disabled

Password Change Functionality enabled disabled

SMTP enabled disabled

FTP enabled disabled

ASP.NET X disabled

BITS X disabled

Page 8: Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide dapplications Web en ASP.NET 12h00 : Construire.

Architecture IIS 6.0Architecture IIS 6.0 Pools d’ApplicationsPools d’Applications

Un ou plusieurs pools d’applications

Chacun est servi par un ou plusieurs W3WP.exe

Chaque W3WP.exe ne sert qu’un pool

Requêtes routées directement au Pool par le HTTP.sys

Isolation basée sur :Site/Client

Fonctionnalité

Fiabilité

Page 9: Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide dapplications Web en ASP.NET 12h00 : Construire.

Architecture IIS 6.0Architecture IIS 6.0 Recyclage Périodique des ProcessusRecyclage Périodique des Processus

Recyclage périodique des applications basé sur :

Uptime [Défaut]

Nb. requêtes

A heure planifiée

Conso. mémoire

A la demande (GUI)

Pourquoi ?Rafraîchir les applications pour s’assurer de leur disponibilité

Éviter que des applications ne perturbent le système

Comment ?Recouvrement au recyclage

Pas de perte de connexions pendant le recyclage

Page 10: Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide dapplications Web en ASP.NET 12h00 : Construire.

Architecture IIS 6.0 Architecture IIS 6.0 Recommandations sur les App. PoolsRecommandations sur les App. Pools

Mettez les sites/applications critiques dans leur propre pool

Regroupez les applications non critiques et sans défaillances quand c’est possible

Économise les ressources serveur

Sites/applis d’un même client ou entité

Créez un App Pool recycléConfigurez un recyclage agressif

Placez les sites/applis posant problème dans ce Pool recyclé

Page 11: Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide dapplications Web en ASP.NET 12h00 : Construire.

Architecture IIS 6.0Architecture IIS 6.0Self-Healing ArchitectureSelf-Healing Architecture

Vérification de bonne santé (Ping)

Qu’est-ce ?Conçu pour détecter les blocage d’applicationComment ça fonctionne ?W3ADM va “pinger” chaque W3WP.exe, à intervalle régulierSi sans réponse dans la limite de temps, tue le process

ASP & ASP.NET peuvent explicitement solliciter un recyclage si l’application est instable

Page 12: Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide dapplications Web en ASP.NET 12h00 : Construire.

FiabilitéFiabilitéDétection de Crash et repriseDétection de Crash et reprise

Détection de CrashWAS détecte les crash des W3WP.exeWAS démarre un nouveau W3WP.exe si besoinRequêtes en file d’attente dans HTTP.sys pendant que W3WP démarreRésultat -> Pas d’Interruption de Service

Rapid Fail ProtectionN’autorise que X fautes par intervalle de tempsStoppe automatiquement le Pool si la valeur est dépassée

IIS6 retourne des codes 503 aux requêtes sur ce pool

Page 13: Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide dapplications Web en ASP.NET 12h00 : Construire.

Nouveau compte systèmeNouveau compte systèmeNetworkService / Service RéseauNetworkService / Service Réseau

IIS fonctionne désormais sous le compte système NetworkService

NetworkService est prédéfini

Compte à faibles privilègesNe peut pas accéder au système de fichiers

Ne peut pas accéder à la registry

Moins de privilèges = plus sur !

Page 14: Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide dapplications Web en ASP.NET 12h00 : Construire.

Comptes UtilisateurComptes Utilisateur NetworkService / Service RéseauNetworkService / Service Réseau

Si vous avez besoin de plus de permissions que ce qu’offre NetworkService :

N’ajoutez pas des permissions à NetworkServiceCela affecterait tous les sites sous IIS

Créez plutôt un nouveau compte avec les privilèges supplémentaires requis et dans le groupe IIS_WPGDonnez-lui en le moins possible !

Les application Web utilisent l’ “impersonation” pour utiliser ces nouveaux comptes

Page 15: Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide dapplications Web en ASP.NET 12h00 : Construire.

En synthèseEn synthèseAméliorations dans IIS 6Améliorations dans IIS 6

FiabilitéFiabilité

Montée en chargeMontée en charge

Recyclage des Processus basé sur la durée, Recyclage des Processus basé sur la durée, l’utilisation et la consommation mémoirel’utilisation et la consommation mémoire

Support du debugging amélioréSupport du debugging amélioré Isolation intégrale des ApplicationsIsolation intégrale des Applications

Augmentation des PerformancesAugmentation des Performances Serveurs Web natifs 32bit et 64bitServeurs Web natifs 32bit et 64bit Plusieurs milliers de sites par machinePlusieurs milliers de sites par machine Support amélioré des dossiers partagésSupport amélioré des dossiers partagés

AdministrabilitéAdministrabilité

Métabase XML, possibilité d’édition directeMétabase XML, possibilité d’édition directe Import/Export de la config. des sites et applicationsImport/Export de la config. des sites et applications Scripting WMIScripting WMI Outils en ligne de commandeOutils en ligne de commande Rollback de Versions et de ConfigurationRollback de Versions et de Configuration Isolation des utilisateurs en mode FTPIsolation des utilisateurs en mode FTP

Page 16: Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide dapplications Web en ASP.NET 12h00 : Construire.

DéploiementDéploiement

Mode de déploiement d’application ASP.NET

Copie de fichier / ftp

Msi

One Click Hosting

Déploiement de base MSDE / SQL Server

SQL Server Web Data Administrator

Page 17: Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide dapplications Web en ASP.NET 12h00 : Construire.

DémonstrationDémonstration

Déploiement du site test chez l’hébergeur

MSI

One Click Hosting

SQL Server Web Data Administrator

Page 18: Agenda de la journée 10h00 : La place dASP.NET dans la plate-forme Microsoft 10h30 : Développement rapide dapplications Web en ASP.NET 12h00 : Construire.

Questions ?Questions ?