Condividi tramite


Pubblicazione e recupero di metadati su un'associazione personalizzata

La classe System.ServiceModel.Description.ServiceMetadataBehavior fornisce supporto per l'aggiunta di endpoint dei metadati a un servizio. Tali endpoint dei metadati possono rispondere a richieste GET HTTP a un URL che presenta un querystring ?wsdl e a richieste GET WS-Transfer come definito nella specifica WS-MetadataExchange (MEX). Gli endpoint MEX implementano il contratto System.ServiceModel.Description.IMetadataExchange.

Pubblicazione di metadati su un'associazione personalizzata

Gli endpoint di metadati GET di HTTP e di HTTPS vengono attivati impostando le proprietà System.ServiceModel.Description.ServiceMetadataBehavior.HttpGetEnabled o System.ServiceModel.Description.ServiceMetadataBehavior.HttpsGetEnabled su true. Non è possibile configurare le associazioni per questi endpoint.

Il contratto IMetadataExchange, tuttavia, può essere utilizzato con qualsiasi endpoint, compresi gli endpoint che utilizzano associazioni personalizzate, poiché gli endpoint IMetadataExchange sono identici a qualsiasi altro endpoint del servizio Windows Communication Foundation (WCF). Se si sa come modificare la configurazione di un'associazione fornita dal sistema o come configurare un elemento System.ServiceModel.Channels.CustomBinding, è possibile configurare un'associazione da utilizzare con un endpoint IMetadataExchange.

Recupero di metadati su un'associazione personalizzata

I metadati possono essere recuperati da endpoint di metadati Get HTTP e Get HTTPS utilizzando richieste GET HTTP o HTTPS standard.

Per recuperare metadati da un endpoint di metadati MEX è generalmente possibile utilizzare una delle associazioni MEX standard supportate in WCF. Per ulteriori informazioni, vedere System.ServiceModel.Description.MetadataExchangeBindings. Il tipo System.ServiceModel.Description.MetadataExchangeClient e lo strumento Svcutil.exe consentono di selezionare automaticamente una di queste associazioni MEX standard in base all'indirizzo dell'endpoint dei metadati specificato.

Se un endpoint di metadati MEX utilizza un'associazione diversa dalle associazioni MEX standard, è possibile configurare l'associazione utilizzata da MetadataExchangeClient mediante codice o fornendo una configurazione dell'endpoint del client IMetadataExchange. Lo strumento Svcutil.exe carica automaticamente dal file di configurazione una configurazione dell'endpoint del client IMetadataExchange che ha lo stesso nome dello schema URI per l'indirizzo dell'endpoint dei metadati.

Protezione

Quando si pubblicano metadati su un'associazione personalizzata, accertarsi che l'associazione fornisca il supporto di sicurezza necessario per i metadati. Per impedire la diffusione di informazioni, ad esempio, e fare in modo che il client sia autorizzato a ottenere i metadati, è possibile rendere più protetti i metadati e l'applicazione configurando l'endpoint IMetadataExchange perché richieda l'autenticazione e la crittografia. Nell'esempio Endpoint di metadati protetto personalizzato viene illustrato questo scenario.

Vedere anche

Attività

Procedura: configurare un'associazione WS-Metadata Exchange personalizzata
Procedura: recuperare metadati attraverso un'associazione non MEX

Concetti

Protezione dei servizi
Associazioni WS-MetadataExchange