Vue d'ensemble des services d'application ASP.NET

Mise à jour : novembre 2007

Les services d'application ASP.NET sont des services Web intégrés qui fournissent un accès à diverses fonctionnalités telles que l'authentification par formulaire, les rôles et les propriétés de profil. Ces services font partie d'une architecture orientée services (SOA), dans laquelle une application se compose d'un ou plusieurs service(s) fourni(s) sur le serveur, et d'un ou plusieurs client(s). Pour plus d'informations sur l'architecture SOA, consultez Understanding Service-Oriented Architecture, sur le site Web MSDN.

L'une des principales fonctionnalités des services d'application ASP.NET est leur large accessibilité ; en effet, ces services sont accessibles depuis de nombreuses applications clientes, pas seulement depuis les applications Web ASP.NET. Les services d'application ASP.NET sont disponibles à tout client basé sur le .NET Framework. De plus, toute application cliente qui peut envoyer et recevoir des messages au format SOAP peut utiliser des services d'application ASP.NET.

Cette rubrique contient les informations suivantes :

  • Scénarios

  • Contexte

  • Exemples

  • Référence de classe

  • Ressources supplémentaires

Scénarios

Les applications clientes pour les services d'application ASP.NET peuvent être de différents types et s'exécuter sous des systèmes d'exploitation différents. Ces applications comprennent les types de clients suivants :

  • Clients AJAX. Il s'agit de pages Web ASP.NET (fichiers .aspx) qui s'exécutent dans le navigateur et accèdent aux services d'application depuis le script client. Les clients AJAX utilisent en général le format JSON pour échanger des données. Pour plus d'informations, consultez Utilisation de services Web dans ASP.NET AJAX.

  • Clients .NET Framework. Il s'agit d'applications Windows .NET Framework qui accèdent aux services d'application sur HTTP à l'aide de l'infrastructure de modèle de fournisseur et utilisent le protocole JSON pour échanger des données. Pour plus d'informations, consultez Vue d'ensemble des services d'application cliente.

    Remarque :

    Le modèle de fournisseur adapte le système d'appartenance de sorte à pouvoir utiliser des magasins de données différents ou des magasins de données présentant des schémas différents. Pour plus d'informations, consultez Fournisseurs d'appartenances.

  • Clients SOAP. Certains clients peuvent accéder aux services d'application via SOAP 1.1. Cela peut s'avérer utile pour les clients qui s'exécutent sous un système d'exploitation différent ou qui utilisent d'autres technologies, telles que les applications JAVA. Pour plus d'informations, consultez Procédure pas à pas : utilisation de services d'application ASP.NET.

L'illustration suivante montre comment des clients différents communiquent avec ces services.

Communication avec des services Web

Contexte

Les services d'application fournis par ASP.NET permettent aux applications clientes d'accéder et de partager des informations qui font partie d'une application Web. ASP.NET propose les services d'application suivants :

  • Service d'authentification. Ce service permet à des utilisateurs de se connecter à une application. Il accepte les informations d'identification utilisateur et retourne un ticket (cookie) d'authentification. Pour plus d'informations, consultez Vue d'ensemble de l'authentification par formulaire ASP.NET.

  • Service de rôles. Ce service détermine les rôles liés à l'application pour un utilisateur authentifié, selon les informations rendues disponibles par un fournisseur de rôles ASP.NET. Cela peut s'avérer utile si vous souhaitez fournir une interface utilisateur spécifique ou autoriser l'accès à des ressources spécifiques, en fonction du rôle de l'utilisateur. Pour plus d'informations, consultez Gestion de l'autorisation à l'aide de rôles.

  • Service de profil. Ce service fournit des informations pour chaque utilisateur sous la forme d'un profil utilisateur stocké sur le serveur. Cela permet à votre application d'accéder aux paramètres d'un utilisateur à différents moments et à partir de composants UI clients différents. Pour plus d'informations, consultez Vue d'ensemble des propriétés du profil ASP.NET.

Clients des services d'application

Cette section fournit des informations détaillées sur les types d'applications clientes qui peuvent utiliser des services d'application ASP.NET et explique comment le client communique avec un service d'application.

Clients AJAX

Les clients AJAX (pages Web ASP.NET AJAX) échangent des données avec les services d'application sur HTTP à l'aide de demandes POST. Les données sont empaquetées au format JSON. L'application cliente communique avec les services d'application à travers des classes proxy de script client. Ces classes proxy sont générées par le serveur et téléchargées dans le navigateur en tant que parties de toute page appelant un service d'application. Pour plus d'informations, consultez Utilisation de services Web dans ASP.NET AJAX.

Clients .NET Framework

Les services d'application ASP.NET échangent des données avec les clients .NET Framework via HTTP, à l'aide de demandes POST. Les données sont empaquetées au format JSON. L'application cliente communique avec les services d'application à l'aide du modèle de fournisseur .NET Framework. Pour les services d'application ASP.NET, le modèle de fournisseur fait référence aux types de clients .NET Framework et aux fournisseurs d'appartenance connexes qui stockent et récupèrent les informations d'identification utilisateur à partir d'une source de données. Par exemple, cela inclut la classe SqlMembershipProvider.  

La communication entre le client et le serveur est synchrone. Pour plus d'informations, consultez Vue d'ensemble des services d'application cliente. Les services d'application sont implémentés par les types définis dans l'espace de noms System.Web.ClientServices.Providers.

Pour accéder à un service d'application, une application cliente .NET Framework doit être correctement configurée. La configuration du serveur est identique à celle utilisée pour les services d'application dans AJAX.

Pour plus d'informations sur le modèle de fournisseur, consultez ASP.NET 2.0 Provider Model : Introduction to the Provider Model et Introduction à l'appartenance (membership).

Clients SOAP

Vous pouvez accéder à l'authentification, au profil et aux services de rôles ASP.NET à partir de toute application cliente sous tout système d'exploitation qui peut utiliser le protocole SOAP 1.1. Les services d'application ASP.NET reposent sur Windows Communication Foundation (WCF) et échangent des données avec le client au format SOAP. Pour plus d'informations, consultez Infrastructure des services Web XML sur le site Web MSDN.

La communication entre le client et les services d'application se fait à l'aide de classes proxy qui s'exécutent dans le client et qui représentent le service d'application. Vous pouvez générer des classes proxy qui prennent en charge les services d'application ASP.NET à l'aide de l'outil Service Model Metadata Utility Tool (svcutil.exe). Pour plus d'informations, consultez Procédure pas à pas : utilisation de services d'application ASP.NET.

Les classes proxy suivantes sont prises en charge :

  • Client de service d'authentification. La classe proxy du client de service d'authentification générée vous permet d'utiliser le service d'authentification à partir de toute application cliente qui peut envoyer et lire des messages SOAP. Les utilisateurs d'une application ASP.NET et d'une application qui n'utilise pas .NET Framework peuvent s'identifier à l'aide des mêmes informations d'identification utilisateur. Les tickets d'authentification publiés par le service sont créés comme cookies HTTP et sont compatibles avec l'authentification par formulaire ASP.NET. Pour plus d'informations, consultez Comment : activer le service d'authentification de WCF. Pour plus d'informations sur les tickets d'authentification, consultez FormsAuthenticationTicket.

    Remarque :

    Le service d'authentification ne prend pas en charge l'incorporation du ticket d'authentification dans l'URL. Par conséquent, les cookies doivent être pris en charge et activés sur le client pour conserver le ticket d'authentification.

  • Client de service de rôles. Le proxy du client de service de rôles généré vous permet d'utiliser le service de rôles à partir de toute application cliente qui peut envoyer et lire des messages SOAP. Pour plus d'informations, consultez Comment : activer le service de rôle de WCF.

  • Client de service de profil. Le proxy du client de service de profil généré vous permet d'utiliser le service de profil à partir de toute application cliente qui peut envoyer et lire des messages SOAP. Les utilisateurs d'une application ASP.NET et d'une application qui n'utilise pas .NET Framework peuvent accéder aux mêmes paramètres utilisateur. Pour plus d'informations, consultez Comment : activer le service de profil de WCF.

Retour au début

Exemples

Pour obtenir des exemples d'appel de services d'application à partir de clients AJAX, consultez les rubriques suivantes :

Pour obtenir des exemples d'appel de services d'application à partir de clients .NET Framework, consultez les rubriques suivantes :

Pour obtenir des exemples d'appel de services d'application à partir de clients SOAP, consultez les rubriques suivantes :

Retour au début

Référence de classe

Les tableaux suivants répertorient les principaux types associés à l'appel de services d'application ASP.NET à partir d'applications clientes.

Espaces de noms clients

Le tableau suivant répertorie des espaces de noms qui contiennent des classes et des types utilisés avec un script client pour appeler des services d'application ASP.NET.

Nom

Description

Sys.Services, espace de noms

Contient des types qui fournissent, dans les applications ASP.NET AJAX, un accès de script aux services d'authentification, de profil et d'application de rôles ASP.NET. L'espace de noms Sys.Services fait partie de Microsoft AJAX Library.

Espaces de noms serveur

Le tableau suivant répertorie des espaces de noms qui contiennent des classes et des types prenant en charge les services d'application ASP.NET dédiés à la programmation serveur.

Nom

Description

System.Web.ApplicationServices

Fournit des classes qui vous permettent d'accéder aux services d'application Web.

System.Web.ClientServices

Fournit des classes qui prennent en charge l'accès dans les applications Windows à la connexion, aux rôles et aux services de profil ASP.NET.

System.Web.ClientServices.Providers

Contient des fournisseurs de services clients et d'autres classes qui prennent en charge l'accès, dans les applications Windows, aux services d'application Web.

Retour au début

Ressources supplémentaires

Qu'est-ce que Windows Communication Foundation ?

Fonctionnement de l'architecture de services

Infrastructure des services Web XML

Retour au début

Voir aussi

Tâches

Comment : activer le service d'authentification de WCF

Comment : activer le service de rôle de WCF

Comment : activer le service de profil de WCF

Concepts

Utilisation de services Web dans ASP.NET AJAX