énumération WS_MESSAGE_PROPERTY_ID (webservices.h)
Chaque propriété de message est de type WS_MESSAGE_PROPERTY, est identifiée par un ID et a une valeur associée.
Syntax
typedef enum {
WS_MESSAGE_PROPERTY_STATE = 0,
WS_MESSAGE_PROPERTY_HEAP = 1,
WS_MESSAGE_PROPERTY_ENVELOPE_VERSION = 2,
WS_MESSAGE_PROPERTY_ADDRESSING_VERSION = 3,
WS_MESSAGE_PROPERTY_HEADER_BUFFER = 4,
WS_MESSAGE_PROPERTY_HEADER_POSITION = 5,
WS_MESSAGE_PROPERTY_BODY_READER = 6,
WS_MESSAGE_PROPERTY_BODY_WRITER = 7,
WS_MESSAGE_PROPERTY_IS_ADDRESSED = 8,
WS_MESSAGE_PROPERTY_HEAP_PROPERTIES = 9,
WS_MESSAGE_PROPERTY_XML_READER_PROPERTIES = 10,
WS_MESSAGE_PROPERTY_XML_WRITER_PROPERTIES = 11,
WS_MESSAGE_PROPERTY_IS_FAULT = 12,
WS_MESSAGE_PROPERTY_MAX_PROCESSED_HEADERS = 13,
WS_MESSAGE_PROPERTY_USERNAME = 14,
WS_MESSAGE_PROPERTY_ENCODED_CERT = 15,
WS_MESSAGE_PROPERTY_TRANSPORT_SECURITY_WINDOWS_TOKEN = 16,
WS_MESSAGE_PROPERTY_HTTP_HEADER_AUTH_WINDOWS_TOKEN = 17,
WS_MESSAGE_PROPERTY_MESSAGE_SECURITY_WINDOWS_TOKEN = 18,
WS_MESSAGE_PROPERTY_SAML_ASSERTION = 19,
WS_MESSAGE_PROPERTY_SECURITY_CONTEXT = 20,
WS_MESSAGE_PROPERTY_PROTECTION_LEVEL = 21
} WS_MESSAGE_PROPERTY_ID;
Constantes
WS_MESSAGE_PROPERTY_STATE Valeur : 0 Cette propriété est utilisée avec WsGetMessageProperty. Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est la WS_MESSAGE_STATE actuelle du message. Cette propriété est disponible dans tous les états de message. |
WS_MESSAGE_PROPERTY_HEAP Valeur : 1 Cette propriété est utilisée avec WsGetMessageProperty. Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est le WS_HEAP du message. Le tas est appartenant au message. Un utilisateur d’un message est libre d’effectuer des allocations dans ce tas. Les allocations au sein du tas sont libérées lorsqu’un message est réinitialisé/libéré. L’utilisateur du tas retourné ne doit pas appeler WsResetHeap sur le tas. Cela entraîne un comportement non défini. L’objet message n’utilise pas l’objet tas, sauf si l’un des les API de message sont appelées. Cette propriété est disponible dans tous les états de message, à l’exception de WS_MESSAGE_STATE_EMPTY. L’utilisation du tas d’un message vide entraîne un comportement non défini. |
WS_MESSAGE_PROPERTY_ENVELOPE_VERSION Valeur : 2 Cette propriété est utilisée avec WsGetMessageProperty. Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est le WS_ENVELOPE_VERSION du message. Lors de la création d’un message à l’aide de WsCreateMessage, le la version d’enveloppe est spécifiée en tant que paramètre explicite (à la place en tant que propriété). Cette propriété peut être spécifiée lorsque des propriétés de message sont spécifiées à l’aide de structure WS_MESSAGE_PROPERTIES . Cette propriété est disponible dans tous les états de message, à l’exception de WS_MESSAGE_STATE_EMPTY. |
WS_MESSAGE_PROPERTY_ADDRESSING_VERSION Valeur : 3 Cette propriété est utilisée avec WsGetMessageProperty. Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est le WS_ADDRESSING_VERSION du message. Lors de la création d’un message à l’aide de WsCreateMessage, le la version d’adressage est spécifiée en tant que paramètre explicite (à la place en tant que propriété). Cette propriété peut être spécifiée lorsque des propriétés de message sont spécifiées à l’aide de structure WS_MESSAGE_PROPERTIES . Cette propriété est disponible dans tous les états de message, à l’exception de WS_MESSAGE_STATE_EMPTY. |
WS_MESSAGE_PROPERTY_HEADER_BUFFER Valeur : 4 Cette propriété est utilisée avec WsGetMessageProperty. Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est un WS_XML_BUFFER qui contient les en-têtes du message (ainsi que les éléments d’enveloppe et de corps). Cette mémoire tampon est valide jusqu’à ce que le message soit réinitialisé/libéré. Cette propriété est disponible dans tous les états de message, à l’exception de WS_MESSAGE_STATE_EMPTY. |
WS_MESSAGE_PROPERTY_HEADER_POSITION Valeur : 5 Cette propriété est utilisée avec WsGetMessageProperty. Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est le WS_XML_NODE_POSITION de l’élément header dans la mémoire tampon d’en-tête (l’élément qui contient tous les éléments les en-têtes de message en tant qu’enfants). La mémoire tampon d’en-tête elle-même peut être obtenue à l’aide de WS_MESSAGE_PROPERTY_HEADER_BUFFER. Une application peut utiliser le WS_XML_NODE_POSITION retourné comme démarrage point lors de la lecture ou de l’écriture manuelle des en-têtes (lorsque vous n’utilisez pas WsSetHeader, WsGetHeader, WsGetCustomHeader ou WsAddCustomHeader). Par exemple, la position peut être passée à WsSetWriterPosition ou WsSetReaderPosition pour positionner un lecteur XML ou un enregistreur XML dans le WS_XML_BUFFER contenant les en-têtes. En outre : WsMoveReader ou WsMoveWriter peut être utilisé pour déplacer relatif à la position définie. Lorsque les en-têtes d’un message sont lus (via WsReadMessageStart ou WsReadEnvelopeStart, un élément d’en-tête est automatiquement ajouté à mémoire tampon d’en-tête si l’un d’eux n’est pas présent dans le message en cours de lecture. Quand un message est initialisé (via WsInitializeMessage), un élément d’en-tête est ajouté automatiquement au message. Cette propriété est disponible dans tous les états de message, à l’exception de WS_MESSAGE_STATE_EMPTY. La position d’en-tête est valide jusqu’à ce que le message soit réinitialisé ou libéré. |
WS_MESSAGE_PROPERTY_BODY_READER Valeur : 6 Cette propriété est utilisée avec WsGetMessageProperty. Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est un WS_XML_READER qui peut être utilisé pour lire corps du message. Le lecteur appartient à l’objet de message et est valide uniquement jusqu’à ce que WsFreeMessage ou WsResetMessage soient appelés. Cette propriété n’est disponible que lorsque le message est dans l’état WS_MESSAGE_STATE_READING . |
WS_MESSAGE_PROPERTY_BODY_WRITER Valeur : 7 Cette propriété est utilisée avec WsGetMessageProperty. Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est un WS_XML_WRITER qui peut être utilisé pour écrire corps du message. Cette propriété n’est disponible que lorsque le message est dans WS_MESSAGE_STATE_WRITING état. L’enregistreur appartient à l’objet de message et est valide uniquement jusqu’à ce que WsFreeMessage ou WsResetMessage soient appelés. |
WS_MESSAGE_PROPERTY_IS_ADDRESSED Valeur : 8 Cette propriété est utilisée avec WsGetMessageProperty. Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est un BOOL indiquant si le message a ont été traités. Lorsqu’un message est créé ou réinitialisé, cette propriété est défini sur FALSE. Lorsqu’un message est lu (WsReadMessageStart ou WsReadEnvelopeStart, alors cette propriété est défini sur TRUE. Cette propriété est disponible dans tous les états de message, à l’exception de WS_MESSAGE_STATE_EMPTY. Pour plus d’informations, consultez WsAddressMessage . |
WS_MESSAGE_PROPERTY_HEAP_PROPERTIES Valeur : 9 Cette propriété est utilisée avec WsCreateMessage pour spécifier les propriétés de la WS_HEAP associée au message. Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est de type WS_HEAP_PROPERTIES. Le tas est utilisé pour mettre en mémoire tampon les en-têtes du message. Les propriétés de tas suivantes peuvent être spécifiées : |
WS_MESSAGE_PROPERTY_XML_READER_PROPERTIES Valeur : 10 Cette propriété est utilisée avec WsCreateMessage pour spécifier des propriétés qui s’appliquent aux lecteurs XML utilisés avec le message. Ces propriétés de lecteur XML sont utilisées par l’objet message lors de la lecture des en-têtes. En outre, les canaux utilisent ces propriétés pour les lecteurs qu’ils créent pour lire d’information. Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est de type WS_XML_READER_PROPERTIES. Les propriétés suivantes peuvent être spécifiées :
|
WS_MESSAGE_PROPERTY_XML_WRITER_PROPERTIES Valeur : 11 Cette propriété est utilisée avec WsCreateMessage pour spécifier les propriétés des enregistreurs XML utilisés avec le message. Ces propriétés xml Writer sont utilisées par l’objet message lors de l’écriture d’en-têtes. En outre, les canaux utilisent ces propriétés pour les enregistreurs qu’ils créent pour écrire d’information. Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est de type WS_XML_WRITER_PROPERTIES. Les propriétés suivantes peuvent être spécifiées : |
WS_MESSAGE_PROPERTY_IS_FAULT Valeur : 12 Cette propriété est utilisée avec WsGetMessageProperty ou WsSetMessageProperty pour indiquer si un message contient une erreur. Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est un BOOL. Lorsqu’un message est lu (WsReadMessageStart ou WsReadEnvelopeStart), cette propriété est définie selon que le premier élément du corps est une erreur . Une application peut tester cette propriété pour décider si pour lire le corps en tant qu’erreur. Pour lire le corps en tant qu’erreur, utilisez WsReadBody avec WS_FAULT_TYPE pour obtenir un WS_FAULT. Lorsqu’un message est écrit (WsWriteMessageStart ou WsWriteEnvelopeStart) cette propriété peut être utilisée pour indiquer si l’application écrit ou non une erreur dans le corps. Certains canaux utilisent ces informations pour déterminer comment envoyer le message. Par exemple, HTTP envoie un code 500 status pour les erreurs au lieu de 200. Lorsqu’un message est initialisé à l’aide de WsInitializeMessage avec WS_FAULT_MESSAGE, la propriété a la valeur TRUE. Pour les autres valeurs WS_MESSAGE_INITIALIZATION , la propriété est définie sur FALSE. Cette propriété est disponible dans tous les états de message, à l’exception de WS_MESSAGE_STATE_EMPTY. |
WS_MESSAGE_PROPERTY_MAX_PROCESSED_HEADERS Valeur : 13 Cette propriété est utilisée avec WsCreateMessage pour spécifier le nombre maximal d’en-têtes qui sera autorisé lors du traitement des en-têtes de message. Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est un ULONG. L’objectif de cette limite est de placer une limite supérieure sur le nombre d’itérations passé l’analyse d’un en-tête. Étant donné qu’une application peut modifier directement le contenu de la mémoire tampon d’en-tête, cette limite n’est pas appliquée dans tous les cas. Elle n’est appliquée que lorsque l’un des les API d’accès à l’en-tête sont utilisées (WsSetHeader, WsGetHeader, WsGetCustomHeader ou WsGetMappedHeader). La valeur par défaut est 64. |
WS_MESSAGE_PROPERTY_USERNAME Valeur : 14 Cette propriété est utilisée avec WsGetMessageProperty pour récupérer les données de l’expéditeur nom d’utilisateur d’un message reçu, si la sécurité basée sur le nom d’utilisateur/mot de passe est activé ou si un canal personnalisé a défini la valeur. Le membre de valeur associé à la structure WS_MESSAGE_PROPERTY est une structure WS_STRING . La valeur retournée est bonne jusqu’à ce que le message soit libéré ou réinitialisé. Un canal personnalisé peut utiliser WsSetMessageProperty pour définir nom d’utilisateur de l’expéditeur à partir du message s’il prend en charge le nom d’utilisateur/mot de passe sécurité basée sur la sécurité. La fonction effectue une copie de la valeur spécifiée. Cette propriété est disponible dans tous les états de message, sauf WS_MESSAGE_STATE_EMPTY. |
WS_MESSAGE_PROPERTY_ENCODED_CERT Valeur : 15 Cette propriété est utilisée avec WsGetMessageProperty pour récupérer les données de l’expéditeur certificat d’un message reçu en tant qu’octets encodés, si un mode de sécurité basé sur un certificat (tel que SSL) est activé, ou si un canal personnalisé a défini la valeur. Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est une structure WS_BYTES . La valeur retournée est bonne jusqu’à ce que le message soit libéré ou réinitialisé. Un canal personnalisé peut utiliser WsSetMessageProperty pour définir le certificat de l’expéditeur à partir d’un message reçu s’il prend en charge un mode de sécurité basé sur un certificat. La fonction effectue une copie de la valeur spécifiée. Cette propriété est disponible dans tous les états de message, sauf WS_MESSAGE_STATE_EMPTY. |
WS_MESSAGE_PROPERTY_TRANSPORT_SECURITY_WINDOWS_TOKEN Valeur : 16 Cette propriété est utilisée avec WsGetMessageProperty pour récupérer windows jeton représentant l’expéditeur d’un message reçu. Cette propriété est disponible dans les cas suivants : Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est un HANDLE.
La valeur retournée est bonne jusqu’à ce que le message soit libéré ou réinitialisé. Un canal personnalisé peut utiliser WsSetMessageProperty pour définir certificat de l’expéditeur à partir d’un message reçu s’il prend en charge un mode de sécurité basé sur un certificat. La fonction dupliquera le handle spécifié. Cette propriété est disponible dans tous les états de message, à l’exception de WS_MESSAGE_STATE_EMPTY. |
WS_MESSAGE_PROPERTY_HTTP_HEADER_AUTH_WINDOWS_TOKEN Valeur : 17 Cette propriété est utilisée avec WsGetMessageProperty pour récupérer windows jeton représentant l’expéditeur d’un message reçu, si WS_HTTP_HEADER_AUTH_SECURITY_BINDING est utilisé, ou si un canal personnalisé a défini la valeur. Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est un HANDLE. La valeur retournée est bonne jusqu’à ce que le message soit libéré ou réinitialisé. Un canal personnalisé peut utiliser WsSetMessageProperty pour définir jeton Windows représentant l’expéditeur d’un message reçu. La fonction dupliquera le handle spécifié. Cette propriété est disponible dans tous les états de message, à l’exception de WS_MESSAGE_STATE_EMPTY. |
WS_MESSAGE_PROPERTY_MESSAGE_SECURITY_WINDOWS_TOKEN Valeur : 18 Cette propriété est utilisée avec WsGetMessageProperty pour récupérer windows jeton représentant l’expéditeur d’un message reçu, si une sécurité de message liaison telle que WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING est utilisée, ou si un canal personnalisé a défini la valeur. Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est un HANDLE. La valeur retournée est bonne jusqu’à ce que le message soit libéré ou réinitialisé. Un canal personnalisé peut utiliser WsSetMessageProperty pour définir jeton représentant l’expéditeur d’un message reçu. La fonction dupliquera le handle spécifié. Cette propriété est disponible dans tous les états de message, à l’exception de WS_MESSAGE_STATE_EMPTY. |
WS_MESSAGE_PROPERTY_SAML_ASSERTION Valeur : 19 Cette propriété est utilisée avec WsGetMessageProperty pour récupérer l’assertion SAML représentant l’expéditeur à partir d’un message reçu, si WS_SAML_MESSAGE_SECURITY_BINDING est utilisé côté serveur, ou si un canal personnalisé a défini la valeur. Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est un WS_XML_BUFFER. La valeur retournée est bonne jusqu’à ce que le message soit libéré ou réinitialisé. Un canal personnalisé peut utiliser WsSetMessageProperty pour définir assertion SAML représentant l’expéditeur d’un message reçu. La fonction dupliquera la mémoire tampon spécifiée. Cette propriété est disponible dans tous les états de message, à l’exception de WS_MESSAGE_STATE_EMPTY. |
WS_MESSAGE_PROPERTY_SECURITY_CONTEXT Valeur : 20 Cette propriété est utilisée avec WsGetMessageProperty pour récupérer le handle de conversation sécurisé si le WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING est utilisé côté serveur. Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est un WS_SECURITY_CONTEXT. La valeur retournée est bonne jusqu’à ce que le message soit libéré ou réinitialisé. |
WS_MESSAGE_PROPERTY_PROTECTION_LEVEL Valeur : 21 Cette propriété est utilisée avec WsGetMessageProperty pour récupérer le niveau de protection de sécurité du message. Le membre de valeur associé de la structure WS_MESSAGE_PROPERTY est une valeur WS_PROTECTION_LEVEL . Si le canal n’utilise pas la sécurité ou si la vérification de la sécurité a échoué, le niveau de protection est défini sur WS_PROTECTION_LEVEL_NONE. Sinon, il est défini sur le niveau demandé par l’application. Cette propriété peut être utilisée pour déterminer la status de la vérification de sécurité lors de la WS_CHANNEL_PROPERTY_ALLOW_UNSECURED_FAULTS a la valeur FALSE. Un canal personnalisé peut utiliser WsSetMessageProperty pour définir niveau de protection d’un message reçu. Cette propriété est disponible dans tous les états de message, à l’exception de WS_MESSAGE_STATE_EMPTY. |
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 7 [applications de bureau | Applications UWP] |
Serveur minimal pris en charge | Windows Server 2008 R2 [applications de bureau | Applications UWP] |
En-tête | webservices.h |