Concepts fondamentaux concernant Windows Communication FoundationFundamental Windows Communication Foundation Concepts

Ce document fournit une vue d’ensemble de l’architecture de Windows Communication Foundation (WCF).This document provides a high-level view of the Windows Communication Foundation (WCF) architecture. Il vise à vous expliquer des concepts clés et la manière dont ils se combinent.It is intended to explain key concepts and how they fit together. Pour obtenir un didacticiel sur la création de la version la plus simple d’un client et d’un service WCF, consultez le didacticiel prise en main.For a tutorial on creating the simplest version of a WCF service and client, see Getting Started Tutorial. Pour découvrir la programmation WCF, consultez la page programmation WCF de base.To learn WCF programming, see Basic WCF Programming.

Principes de base de WCFWCF Fundamentals

WCF est un Runtime et un ensemble d’API permettant de créer des systèmes qui envoient des messages entre les services et les clients.WCF is a runtime and a set of APIs for creating systems that send messages between services and clients. La même infrastructure et les mêmes API sont utilisées pour créer des applications qui communiquent avec d'autres applications sur le même système informatique ou sur un système qui réside dans une autre société et accessible sur Internet.The same infrastructure and APIs are used to create applications that communicate with other applications on the same computer system or on a system that resides in another company and is accessed over the Internet.

Messagerie et points de terminaisonMessaging and Endpoints

WCF est basé sur la notion de communication basée sur les messages, et tout ce qui peut être modélisé en tant que message (par exemple, une requête HTTP ou un message Message Queuing (également appelé MSMQ)) peut être représenté de façon uniforme dans le modèle de programmation.WCF is based on the notion of message-based communication, and anything that can be modeled as a message (for example, an HTTP request or a Message Queuing (also known as MSMQ) message) can be represented in a uniform way in the programming model. Cela permet d'avoir une API unifiée à travers des mécanismes de transport différents.This enables a unified API across different transport mechanisms.

Le modèle fait la distinction entre les clients, qui sont des applications qui initient la communication, et les services, qui sont des applications qui attendent que les clients communiquent avec eux et répondent à cette communication.The model distinguishes between clients, which are applications that initiate communication, and services, which are applications that wait for clients to communicate with them and respond to that communication. Une application peut agir à la fois comme un client et comme un service.A single application can act as both a client and a service. Pour obtenir des exemples, consultez services duplex et réseau pair à pair.For examples, see Duplex Services and Peer-to-Peer Networking.

Les messages sont envoyés d'un point de terminaison à un autre.Messages are sent between endpoints. Les points de terminaison sont des emplacements où les messages sont envoyés ou reçus (ou les deux), et ils définissent toutes les informations requises pour l’échange de messages.Endpoints are places where messages are sent or received (or both), and they define all the information required for the message exchange. Un service expose un ou plusieurs points de terminaison d'application (ainsi que zéro ou plusieurs points de terminaison d'infrastructure), et le client génère un point de terminaison compatible avec l'un des points de terminaison du service.A service exposes one or more application endpoints (as well as zero or more infrastructure endpoints), and the client generates an endpoint that is compatible with one of the service's endpoints.

Un point de terminaison décrit de manière standard où les messages doivent être envoyés, comment ils doivent être envoyés et à quoi ressemblent les messages.An endpoint describes in a standard-based way where messages should be sent, how they should be sent, and what the messages should look like. Un service peut exposer ces informations en tant que métadonnées que les clients peuvent traiter pour générer les clients WCF et les _piles_de communication appropriés.A service can expose this information as metadata that clients can process to generate appropriate WCF clients and communication stacks.

Protocoles de communicationCommunication Protocols

L’un des éléments requis de la pile de communication est le protocole de transport.One required element of the communication stack is the transport protocol. Les messages peuvent être envoyés sur des intranets et sur Internet à l'aide de transports communément utilisés, tels que le HTTP et le TCP.Messages can be sent over intranets and the Internet using common transports, such as HTTP and TCP. D'autres transports inclus prennent en charge la communication avec les applications et les nœuds Message Queuing sur une maille de réseau homologue.Other transports are included that support communication with Message Queuing applications and nodes on a Peer Networking mesh. D’autres mécanismes de transport peuvent être ajoutés à l’aide des points d’extension intégrés de WCF.More transport mechanisms can be added using the built-in extension points of WCF.

Autre élément requis dans la pile de communication : l'encodage qui spécifie comment un message donné est mis en forme.Another required element in the communication stack is the encoding that specifies how any given message is formatted. WCF fournit les encodages suivants :WCF provides the following encodings:

  • L'encodage de texte, un encodage interopérable.Text encoding, an interoperable encoding.

  • L'encodage MTOM (Message Transmission Optimisation Mécanisme), une manière interopérable d'envoyer efficacement des données binaires non structurées à destination et en provenance d'un service.Message Transmission Optimization Mechanism (MTOM) encoding, which is an interoperable way for efficiently sending unstructured binary data to and from a service.

  • L'encodage binaire pour un transfert efficace.Binary encoding for efficient transfer.

D’autres mécanismes d’encodage (par exemple, un encodage de compression) peuvent être ajoutés à l’aide des points d’extension intégrés de WCF.More encoding mechanisms (for example, a compression encoding) can be added using the built-in extension points of WCF.

Modèles de messagesMessage Patterns

WCF prend en charge plusieurs modèles de messagerie, y compris la communication demande-réponse, unidirectionnelle et duplex.WCF supports several messaging patterns, including request-reply, one-way, and duplex communication. Les différents transports prennent en charge des modèles de messagerie différents, ce qui affecte les types d’interactions qu’ils prennent en charge.Different transports support different messaging patterns, and thus affect the types of interactions that they support. Les API et le runtime WCF vous aident également à envoyer des messages de manière sécurisée et fiable.The WCF APIs and runtime also help you to send messages securely and reliably.

Termes de WCFWCF Terms

Les autres concepts et termes utilisés dans la documentation WCF sont les suivants :Other concepts and terms used in the WCF documentation include the following:

MessageMessage
Unité autonome de données qui peut se composer de plusieurs parties, y compris d'un corps et d'un en-tête.A self-contained unit of data that can consist of several parts, including a body and headers.

ServiceService
Construction qui expose un ou plusieurs points de terminaison, chacun de ces derniers exposant une ou plusieurs opérations de service.A construct that exposes one or more endpoints, with each endpoint exposing one or more service operations.

EndpointEndpoint
Construction à laquelle les messages sont envoyés ou de laquelle ils sont reçus (ou les deux).A construct at which messages are sent or received (or both). Il comprend un emplacement (une adresse) qui définit où les messages peuvent être envoyés, une spécification du mécanisme de communication (une liaison) qui décrit la façon dont les messages doivent être envoyés et une définition pour un ensemble de messages qui peuvent être envoyés ou reçus (ou les deux) à ce emplacement (contrat de service) qui décrit le message qui peut être envoyé.It comprises a location (an address) that defines where messages can be sent, a specification of the communication mechanism (a binding) that describes how messages should be sent, and a definition for a set of messages that can be sent or received (or both) at that location (a service contract) that describes what message can be sent.

Un service WCF est exposé au monde extérieur comme une collection de points de terminaison.A WCF service is exposed to the world as a collection of endpoints.

Point de terminaison d’applicationApplication endpoint
Point de terminaison exposé par l'application et qui correspond à un contrat de service implémenté par l'application.An endpoint exposed by the application and that corresponds to a service contract implemented by the application.

Point de terminaison d’infrastructureInfrastructure endpoint
Point de terminaison exposé par l'infrastructure pour faciliter les fonctionnalités qui sont exigées ou sont fournies par le service qui n'est pas en rapport avec un contrat de service.An endpoint that is exposed by the infrastructure to facilitate functionality that is needed or provided by the service that does not relate to a service contract. Par exemple, un service peut avoir un point de terminaison d'infrastructure qui fournit des informations de métadonnées.For example, a service might have an infrastructure endpoint that provides metadata information.

AdresseAddress
Spécifie l'emplacement de réception des messages.Specifies the location where messages are received. Elle est indiquée comme un URI (Uniform Resource Identifier).It is specified as a Uniform Resource Identifier (URI). La partie schématique de l'URI nomme le mécanisme de transport à utiliser pour atteindre l'adresse, tel que HTTP et TCP.The URI schema part names the transport mechanism to use to reach the address, such as HTTP and TCP. La partie hiérarchique de l'URI contient un emplacement unique dont le format dépend du mécanisme de transport.The hierarchical part of the URI contains a unique location whose format is dependent on the transport mechanism.

L'adresse de point de terminaison vous permet de créer des adresses uniques pour chaque point de terminaison d'un service, ou dans certaines conditions, de faire partager une adresse à plusieurs points de terminaison.The endpoint address enables you to create unique endpoint addresses for each endpoint in a service or, under certain conditions, to share an address across endpoints. L'exemple suivant représente une adresse qui fait appel au protocole HTTPS avec un port non défini par défaut :The following example shows an address using the HTTPS protocol with a non-default port:

HTTPS://cohowinery:8005/ServiceModelSamples/CalculatorService

LiaisonBinding
Définit la façon dont un point de terminaison communique avec le monde.Defines how an endpoint communicates to the world. Elle est construite à l'aide d'un ensemble de composants appelés éléments de liaison qui « s'empilent » les uns sur les autres pour créer l'infrastructure de communication.It is constructed of a set of components called binding elements that "stack" one on top of the other to create the communication infrastructure. Au minimum, une liaison définit le transport (HTTP ou TCP par exemple) et l'encodage utilisés (tel que texte ou binaire).At the very least, a binding defines the transport (such as HTTP or TCP) and the encoding being used (such as text or binary). Une liaison peut contenir des éléments de liaison qui spécifient des informations détaillées comme les mécanismes de sécurité utilisés pour sécuriser les messages, ou le modèle de message utilisé par un point de terminaison.A binding can contain binding elements that specify details like the security mechanisms used to secure messages, or the message pattern used by an endpoint. Pour plus d’informations, consultez Configuration des services.For more information, see Configuring Services.

Élément de liaisonBinding element
Représente un composant particulier de la liaison, tel qu’un transport, un encodage, une implémentation d’un protocole au niveau de l’infrastructure (comme WS-ReliableMessaging) ou tout autre composant de la pile de communication.Represents a particular piece of the binding, such as a transport, an encoding, an implementation of an infrastructure-level protocol (such as WS-ReliableMessaging), or any other component of the communication stack.

ComportementsBehaviors
Composant qui contrôle plusieurs aspects de l'exécution d'un service, d'un point de terminaison, d'une opération particulière ou d'un client.A component that controls various run-time aspects of a service, an endpoint, a particular operation, or a client. Les comportements sont groupés en fonction de leur portée : les comportements courants affectent tous les points de terminaison globalement, les comportements de service affectent uniquement des aspects relatifs à un service, les comportements de point de terminaison affectent uniquement des propriétés connexes à un point de terminaison, et les comportements au niveau de l'opération affectent des opérations particulières.Behaviors are grouped according to scope: common behaviors affect all endpoints globally, service behaviors affect only service-related aspects, endpoint behaviors affect only endpoint-related properties, and operation-level behaviors affect particular operations. Par exemple, le comportement de service « limitation » spécifie comment un service réagit lorsqu'un trop grand nombre de messages menace de submerger ses fonctions de traitement.For example, one service behavior is throttling, which specifies how a service reacts when an excess of messages threaten to overwhelm its handling capabilities. Un comportement de point de terminaison, en revanche, contrôle uniquement les aspects pertinents aux points de terminaison, par exemple comment et où rechercher une information d'identification de sécurité.An endpoint behavior, on the other hand, controls only aspects that are relevant to endpoints, such as how and where to find a security credential.

Liaisons fournies par le systèmeSystem-provided bindings
WCF inclut plusieurs liaisons fournies par le système.WCF includes a number of system-provided bindings. Il s'agit de collections d'éléments de liaison optimisés pour des scénarios spécifiques.These are collections of binding elements that are optimized for specific scenarios. Par exemple, le WSHttpBinding est conçu pour l’interopérabilité avec les services qui implémentent* différentes spécifications WS.For example, the WSHttpBinding is designed for interoperability with services that implement various WS-* specifications. Ces liaisons prédéfinies vous font gagner du temps en vous présentant uniquement les options qui peuvent être appliquées correctement au scénario spécifique.These predefined bindings save time by presenting only those options that can be correctly applied to the specific scenario. Si une liaison prédéfinie ne satisfait pas vos spécifications, vous pouvez créer votre propre liaison personnalisée.If a predefined binding does not meet your requirements, you can create your own custom binding.

Configuration et codageConfiguration versus coding
Le contrôle d'une application peut être réalisé par l'encodage, par la configuration, ou par les deux.Control of an application can be done either through coding, through configuration, or through a combination of both. La configuration a l'avantage de permettre à quelqu'un d'autre que le développeur (par exemple, un administrateur réseau) de définir les paramètres de client et de service après que le code a été écrit et sans devoir le recompiler.Configuration has the advantage of allowing someone other than the developer (for example, a network administrator) to set client and service parameters after the code is written and without having to recompile. La configuration vous permet non seulement de définir des valeurs comme des adresses de point de terminaison, mais aussi de procéder à un contrôle approfondi en vous permettant d'ajouter des points de terminaison, des liaisons et des comportements.Configuration not only enables you to set values like endpoint addresses, but also allows further control by enabling you to add endpoints, bindings, and behaviors. L'encodage permet au développeur de conserver un contrôle étroit sur tous les composants du service ou client, et tous les paramètres définis par la configuration peuvent être inspectés et si besoin être remplacés par le code.Coding allows the developer to retain strict control over all components of the service or client, and any settings done through the configuration can be inspected and if needed overridden by the code.

Opération de serviceService operation
Procédure définie dans le code d'un service qui implémente les fonctionnalités d'une opération.A procedure defined in a service's code that implements the functionality for an operation. Cette opération est exposée aux clients de la même manière que le sont les méthodes sur un client WCF.This operation is exposed to clients as methods on a WCF client. La méthode peut renvoyer une valeur et accepter un nombre facultatif d’arguments, ou n’accepter aucun argument et ne renvoyer aucune réponse.The method can return a value, and can take an optional number of arguments, or take no arguments, and return no response. Par exemple, une opération qui fonctionne comme un simple « Bonjour » peut être utilisée comme notification de la présence d'un client et pour commencer une série d'opérations.For example, an operation that functions as a simple "Hello" can be used as a notification of a client's presence and to begin a series of operations.

Contrat de serviceService contract
Joint plusieurs opérations connexes dans une unité fonctionnelle unique.Ties together multiple related operations into a single functional unit. Il peut définir des paramètres au niveau du service, tels que l'espace de noms du service, un contrat de rappel correspondant et d'autres paramètres de ce type.The contract can define service-level settings, such as the namespace of the service, a corresponding callback contract, and other such settings. Dans la plupart des cas, le contrat est défini en créant une interface dans le langage de programmation de votre choix et en appliquant l'attribut ServiceContractAttribute à l'interface.In most cases, the contract is defined by creating an interface in the programming language of your choice and applying the ServiceContractAttribute attribute to the interface. Le code de service réel résulte de l'implémentation de l'interface.The actual service code results by implementing the interface.

Contrat d’opérationOperation contract
Un contrat d'opération définit les paramètres et le type de retour d'une opération.An operation contract defines the parameters and return type of an operation. Lorsque vous créez une interface qui définit le contrat de service, vous indiquez un contrat d'opération en appliquant l'attribut OperationContractAttribute à chaque définition de méthode qui fait partie du contrat.When creating an interface that defines the service contract, you signify an operation contract by applying the OperationContractAttribute attribute to each method definition that is part of the contract. Les opérations peuvent être conçues de manière à prendre un message unique et à renvoyer un message unique, ou à prendre un jeu de types et à renvoyer un type.The operations can be modeled as taking a single message and returning a single message, or as taking a set of types and returning a type. Dans ce cas, le système détermine le format des messages qui doivent être échangés pour cette opération.In the latter case, the system will determine the format for the messages that need to be exchanged for that operation.

Contrat de messageMessage contract
Décrit le format d'un message.Describes the format of a message. Par exemple, il déclare si les éléments du message doivent entrer dans les en-têtes au lieu du corps, quel niveau de sécurité doit être appliqué à quels éléments du message, et ainsi de suite.For example, it declares whether message elements should go in headers versus the body, what level of security should be applied to what elements of the message, and so on.

Contrat d’erreurFault contract
Peut être associé à une opération de service pour désigner des erreurs qui peuvent être renvoyées à l'appelant.Can be associated with a service operation to denote errors that can be returned to the caller. Une opération peut être associée à plusieurs erreurs ou n'être associée à aucune erreur.An operation can have zero or more faults associated with it. Ces erreurs sont des erreurs SOAP modélisées comme des exceptions dans le modèle de programmation.These errors are SOAP faults that are modeled as exceptions in the programming model.

Contrat de donnéesData contract
Descriptions dans les métadonnées des types de données utilisés par un service.The descriptions in metadata of the data types that a service uses. Cela permet à d'autres d'interagir avec le service.This enables others to interoperate with the service. Les types de données peuvent être utilisés dans n’importe quelle partie d’un message, par exemple comme paramètres ou types de retour.The data types can be used in any part of a message, for example, as parameters or return types. Si le service n'utilise que des types simples, l'utilisation explicite des contrats de données est inutile.If the service is using only simple types, there is no need to explicitly use data contracts.

HébergementHosting
Un service doit être hébergé dans un processus.A service must be hosted in some process. Un hôte est une application qui contrôle la durée de vie du service.A host is an application that controls the lifetime of the service. Les services peuvent être auto-hébergés ou gérés par un processus d'hébergement existant.Services can be self-hosted or managed by an existing hosting process.

Service auto-hébergéSelf-hosted service
Service qui s'exécute dans une application de processus créée par le développeur.A service that runs within a process application that the developer created. Ce dernier définit les propriétés du service, contrôle sa durée de vie, ouvre le service (ce qui le définit en mode d'écoute) et le ferme.The developer controls its lifetime, sets the properties of the service, opens the service (which sets it into a listening mode), and closes the service.

Processus d’hébergementHosting process
Application conçue pour héberger des services.An application that is designed to host services. Ces derniers incluent les services IIS (Internet Information Services), les services WAS (Windows Activation Services) et les services Windows.These include Internet Information Services (IIS), Windows Activation Services (WAS), and Windows Services. Dans ces scénarios hébergés, l'hôte contrôle la durée de vie du service.In these hosted scenarios, the host controls the lifetime of the service. Par exemple, vous pouvez installer un répertoire virtuel qui contient l'assembly de service et le fichier de configuration à l'aide d'IIS.For example, using IIS you can set up a virtual directory that contains the service assembly and configuration file. Lorsqu'un message est reçu, IIS démarre le service et contrôle sa durée de vie.When a message is received, IIS starts the service and controls its lifetime.

InstanciationInstancing
Un service dispose d'un modèle d'instanciation.A service has an instancing model. Il existe trois modèles d'instanciation : « unique », dans lequel un objet CLR unique prend en charge tous les clients ; « par appel », dans lequel un nouvel objet CLR est créé pour gérer chaque appel du client ; et « par session », dans lequel un ensemble d'objets CLR est créé, un pour chaque session.There are three instancing models: "single," in which a single CLR object services all the clients; "per call," in which a new CLR object is created to handle each client call; and "per session," in which a set of CLR objects is created, one for each separate session. Le choix d’un modèle d’instanciation dépend des spécifications de l’application et du modèle d’utilisation attendu du service.The choice of an instancing model depends on the application requirements and the expected usage pattern of the service.

Application clienteClient application
Programme qui échange des messages avec un ou plusieurs points de terminaison.A program that exchanges messages with one or more endpoints. L'application cliente commence par créer l'instance d'un client WCF et appelle les méthodes de ce client.The client application begins by creating an instance of a WCF client and calling methods of the WCF client. Il est important de noter qu'une même application peut être à la fois un client et un service.It is important to note that a single application can be both a client and a service.

CanalChannel
Implémentation concrète d'un élément de liaison.A concrete implementation of a binding element. La liaison représente la configuration, et le canal est l’implémentation associée à cette configuration.The binding represents the configuration, and the channel is the implementation associated with that configuration. Par conséquent, un canal est associé à chaque élément de liaison.Therefore, there is a channel associated with each binding element. Les canaux s’empilent les uns sur les autres pour créer l’implémentation concrète de la liaison : la pile de canaux.Channels stack on top of each other to create the concrete implementation of the binding: the channel stack.

Client WCFWCF client
Construction d’application cliente qui expose les opérations de service en tant que méthodes (dans le .NET Framework langage de programmation de votre choix, tel C#que Visual Basic ou visuel).A client-application construct that exposes the service operations as methods (in the .NET Framework programming language of your choice, such as Visual Basic or Visual C#). N'importe quelle application peut accueillir un client WCF, y compris une application hébergeant un service.Any application can host a WCF client, including an application that hosts a service. Par conséquent, il est possible de créer un service qui inclut des clients WCF d'autres services.Therefore, it is possible to create a service that includes WCF clients of other services.

Un client WCF peut être généré automatiquement à l’aide de l' outil ServiceModel Metadata Utility Tool (Svcutil. exe) et en le faisant pointer sur un service en cours d’exécution qui publie des métadonnées.A WCF client can be automatically generated by using the ServiceModel Metadata Utility Tool (Svcutil.exe) and pointing it at a running service that publishes metadata.

MétadonnéesMetadata
Dans un service, décrivent les caractéristiques du service qu'une entité externe doit comprendre pour communiquer avec ce service.In a service, describes the characteristics of the service that an external entity needs to understand to communicate with the service. Les métadonnées peuvent être consommées par l' outil ServiceModel Metadata Utility Tool (Svcutil. exe) pour générer un client WCF et la configuration associée qu’une application cliente peut utiliser pour interagir avec le service.Metadata can be consumed by the ServiceModel Metadata Utility Tool (Svcutil.exe) to generate a WCF client and accompanying configuration that a client application can use to interact with the service.

Les métadonnées exposées par le service incluent des documents de schéma XML qui définissent le contrat de données du service, et des documents WSDL qui décrivent les méthodes du service.The metadata exposed by the service includes XML schema documents, which define the data contract of the service, and WSDL documents, which describe the methods of the service.

En cas d'activation, les métadonnées du service sont générées automatiquement par WCF par inspection du service et de ses points de terminaison.When enabled, metadata for the service is automatically generated by WCF by inspecting the service and its endpoints. Pour publier les métadonnées d'un service, vous devez explicitement activer le comportement des métadonnées.To publish metadata from a service, you must explicitly enable the metadata behavior.

SécuritéSecurity
Dans WCF, comprend la confidentialité (chiffrement des messages pour empêcher l’espionnage), l’intégrité (la détection de la falsification du message), l’authentification (la validation des serveurs et des clients) et l’autorisation (le contrôle de l’accès à ressources).In WCF, includes confidentiality (encryption of messages to prevent eavesdropping), integrity (the means for detection of tampering with the message), authentication (the means for validation of servers and clients), and authorization (the control of access to resources). Ces fonctions sont fournies par l’utilisation de mécanismes de sécurité existants, tels que TLS sur http (également appelé https), ou en implémentant une ou plusieurs des diverses spécifications WS* -Security.These functions are provided by either leveraging existing security mechanisms, such as TLS over HTTP (also known as HTTPS), or by implementing one or more of the various WS-* security specifications.

Mode de sécurité du transportTransport security mode
Spécifie que la confidentialité, l'intégrité et l'authentification sont assurées par les mécanismes de la couche de transport (tels que HTTPS).Specifies that confidentiality, integrity, and authentication are provided by the transport layer mechanisms (such as HTTPS). Lors de l'utilisation d'un transport comme le HTTPS, ce mode a l'avantage d'être efficace en termes de performances, et d'être bien compris grâce à sa prédominance sur Internet.When using a transport like HTTPS, this mode has the advantage of being efficient in its performance, and well understood because of its prevalence on the Internet. L’inconvénient est que ce type de sécurité est appliqué séparément sur chaque saut dans la voie de communication, et rend la communication susceptible d’être victime d’une attaque de « l’homme du milieu ».The disadvantage is that this kind of security is applied separately on each hop in the communication path, making the communication susceptible to a "man in the middle" attack.

Mode de sécurité des messagesMessage security mode
Spécifie que la sécurité est fournie en implémentant une ou plusieurs des spécifications de sécurité, telles que la spécification nommée Web Services Security : Sécuritédes messages SOAP.Specifies that security is provided by implementing one or more of the security specifications, such as the specification named Web Services Security: SOAP Message Security. Chaque message contient les mécanismes nécessaires pour assurer la sécurité pendant son transit et permettre aux récepteurs de détecter la falsification et de déchiffrer le message.Each message contains the necessary mechanisms to provide security during its transit, and to enable the receivers to detect tampering and to decrypt the messages. En ce sens, la sécurité est encapsulée dans chaque message, en assurant la sécurité de bout en bout sur des sauts multiples.In this sense, the security is encapsulated within every message, providing end-to-end security across multiple hops. Étant donné que les informations de sécurité deviennent une partie du message, il est également possible d’inclure plusieurs types d’informations d’identification avec le message (ils sont appelés « _revendications_»).Because security information becomes part of the message, it is also possible to include multiple kinds of credentials with the message (these are referred to as claims). Cette approche a également l'avantage de permettre au message de voyager en toute sécurité sur n'importe quel transport, y compris les transports multiples, entre son origine et sa destination.This approach also has the advantage of enabling the message to travel securely over any transport, including multiple transports between its origin and destination. L'inconvénient de cette approche réside dans la complexité des mécanismes de chiffrement employés, ce qui affecte les performances.The disadvantage of this approach is the complexity of the cryptographic mechanisms employed, resulting in performance implications.

Transport avec le mode de sécurité des informations d’identification de messageTransport with message credential security mode
Spécifie l'utilisation de la couche de transport pour assurer la confidentialité, l'authentification et l'intégrité des messages, tandis que chacun des messages peut contenir plusieurs informations d'identification (revendications) requises par les récepteurs du message.Specifies the use of the transport layer to provide confidentiality, authentication, and integrity of the messages, while each of the messages can contain multiple credentials (claims) required by the receivers of the message.

WEB*WS-*
Abrégé pour l'ensemble croissant des spécifications de services Web (WS), telles que WS-Security, WS-ReliableMessaging et ainsi de suite, implémentées dans WCF.Shorthand for the growing set of Web Service (WS) specifications, such as WS-Security, WS-ReliableMessaging, and so on, that are implemented in WCF.

Voir aussiSee also