Compartir vía


Dirección del punto de conexión

Una dirección de punto de conexión representa la dirección de un servicio en la red. Al abrir un canal de , llamando a la función WsOpenChannel, debe proporcionar la dirección del punto de conexión del servicio con el que se va a comunicar, así como especificar el canal con el que desea abrir.

Una dirección de punto de conexión consta de:

  • una dirección URL de
  • un conjunto de encabezados (opcional)
  • un conjunto de extensiones (opcional)
  • una identidad de opcional que representa la identidad de seguridad del servicio.

Cuando se direcciona un mensaje, la dirección URL se convierte en el encabezado "To" del mensaje. Los encabezados que forman parte de la dirección del punto de conexión también se agregan al mensaje.

Diagrama en el que se muestran los encabezados de dirección del punto de conexión que se agregan a un mensaje.

Los canales abordan automáticamente los mensajes que se envían mediante la estructura de WS_ENDPOINT_ADDRESS que se pasó al WsOpenChannel. También puede usar la funciónWsAddressMessage para invalidar este comportamiento predeterminado.

Cuando se pasa WS_ENDPOINT_ADDRESS como parámetro, las funciones WsOpenChannel y WsOpenServiceProxycrean una copia del parámetro WS_ENDPOINT_ADDRESS en memoria y su tamaño está limitado por 65536 bytes. WsAddressMessage no tiene esta limitación porque no requiere crear una copia del parámetro WS_ENDPOINT_ADDRESS.

Las extensiones especificadas en el extensiones campo de WS_ENDPOINT_ADDRESS no se usan para direccionar el mensaje, sino que son un mecanismo de extensibilidad que se puede usar para proporcionar información adicional (por ejemplo, metadatos) sobre el servicio. Las extensiones comunes se pueden leer con la funciónWsReadEndpointAddressExtension.

El campo de identidad opcional de la dirección del punto de conexión puede incluir, por ejemplo, el nombre DNS de la máquina en la que se ejecuta el servicio o el UPN de la cuenta de Windows en la que se ejecuta el servicio. El campo de identidad no se usa para dirigir el mensaje, pero se puede usar para obtener un token de seguridad para el servicio (por ejemplo, para obtener un vale Kerberos al UPN de destino) y para comprobar la identidad de las respuestas del servicio (por ejemplo, una identidad DNS usada para las comprobaciones de nombres en el certificado de servicio devuelto durante SSL).

Las direcciones de punto de conexión se pueden leer y escribir mediante de serialización con el valor de enumeración WS_ENDPOINT_ADDRESS_TYPE de WS_TYPE. Tenga en cuenta que para serializar una dirección de punto de conexión, debe conocer la versión de la especificación utilizada para los encabezados de direccionamiento, tal como se especifica en la enumeración WS_ADDRESSING_VERSION.