Compartir a través de


Publicación y recuperación de metadatos a través de un enlace personalizado

System.ServiceModel.Description.ServiceMetadataBehavior proporciona soporte para agregar el extremo de metadatos a un servicio. Estos puntos de conexión de metadatos pueden responder a solicitudes HTTP GET en una dirección URL que tiene una cadena de consulta ?wsdl y a solicitudes WS-Transfer GET, tal y como se define en la especificación de WS-MetadataExchange (MEX). Los puntos de conexión MEX implementan el contrato System.ServiceModel.Description.IMetadataExchange.

Publicar los metadatos a través de un enlace personalizado

Los puntos de conexión de metadatos HTTP GET y los puntos de conexión de metadatos de HTTPS GET se habilitan estableciendo ServiceMetadataBehavior.HttpGetEnabled o las propiedades ServiceMetadataBehavior.HttpsGetEnabled en true. No se pueden configurar los enlaces para estos extremos.

Sin embargo, el contrato IMetadataExchange se puede usar con cualquier punto de conexión, incluidos los que usan enlaces personalizados, ya que los puntos de conexión IMetadataExchange son idénticos a cualquier otro punto de conexión de servicio Windows Communication Foundation (WCF). Si sabe cómo modificar la configuración de un enlace proporcionado por el sistema, o sabe cómo configurar System.ServiceModel.Channels.CustomBinding, puede configurar un enlace para usarlo con un extremo IMetadataExchange.

Recuperar los metadatos a través de un enlace personalizado

Los metadatos se pueden recuperar de los extremos de metadatos HTTP Get y HTTPS Get utilizando solicitudes estándares HTTP o HTTPS GET.

Para recuperar metadatos de un punto de conexión de metadatos MEX, por lo general puede usar uno de los enlaces MEX estándar que admite WCF. Para obtener más información, vea System.ServiceModel.Description.MetadataExchangeBindings. El tipo System.ServiceModel.Description.MetadataExchangeClient y la herramienta Svcutil.exe seleccionan automáticamente uno de estos enlaces MEX estándar basándose en la dirección del extremo de metadatos especificado.

Si un extremo de metadatos MEX utiliza un enlace diferente que uno de los enlaces MEX estándares, puede configurar el enlace utilizado por MetadataExchangeClient utilizando código o proporcionando una configuración de extremo de cliente IMetadataExchange. La herramienta Svcutil.exe automáticamente carga de su archivo de configuración una configuración de punto de conexión de cliente IMetadataExchange que tiene el mismo nombre que el esquema del URI para la dirección del punto de conexión de metadatos.

Seguridad

Al publicar los metadatos a través de un enlace personalizado, asegúrese de que el enlace proporcione el soporte de seguridad que sus metadatos requieren. Por ejemplo, para evitar la divulgación de información y asegurarse de que su cliente tenga el derecho a obtener los metadatos, puede hacer que sus metadatos y su aplicación sean más seguros configurando su punto de conexión IMetadataExchange para que requiera autenticación y cifrado. En el ejemplo de punto de conexión de metadatos seguro personalizado se muestra este escenario.

Consulte también