Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O System.ServiceModel.Description.ServiceMetadataBehavior fornece suporte para adicionar um endpoint de metadados a um serviço. Esses pontos de extremidade de metadados podem responder a pedidos HTTP GET num URL que contenha uma ?wsdl querystring e pedidos WS-Transfer GET, como definido na especificação WS-MetadataExchange (MEX). Os endpoints MEX implementam o contrato System.ServiceModel.Description.IMetadataExchange.
Publicando metadados em uma associação personalizada
Os pontos de extremidade de metadados HTTP GET e HTTPS GET são habilitados ao definir as propriedades ServiceMetadataBehavior.HttpGetEnabled ou ServiceMetadataBehavior.HttpsGetEnabled para true. As ligações para esses pontos de extremidade não podem ser configuradas.
O IMetadataExchange contrato, no entanto, pode ser usado com qualquer ponto de extremidade, incluindo aqueles que usam associações personalizadas, porque IMetadataExchange os pontos de extremidade são idênticos a qualquer outro ponto de extremidade de serviço do Windows Communication Foundation (WCF). Se você souber como modificar a configuração de uma associação fornecida pelo sistema ou como configurar um System.ServiceModel.Channels.CustomBinding, poderá configurar uma associação para uso com um IMetadataExchange ponto de extremidade.
Recuperando metadados em uma associação personalizada
Os metadados podem ser recuperados dos pontos de extremidade de metadados HTTP Get e HTTPS Get usando solicitações HTTP ou HTTPS GET padrão.
Para recuperar metadados de um endpoint de metadados MEX, pode geralmente utilizar uma das bindings MEX padrão suportadas pelo WCF. Para obter mais informações, consulte System.ServiceModel.Description.MetadataExchangeBindings. O tipo System.ServiceModel.Description.MetadataExchangeClient e a ferramenta Svcutil.exe selecionam automaticamente uma das ligações padrão MEX com base no endereço do endpoint de metadados especificado.
Se um ponto de extremidade de metadados MEX usar uma associação diferente de uma das associações MEX padrão, poderá configurar a associação usada pelo MetadataExchangeClient usando código ou fornecendo uma configuração de ponto de extremidade de cliente IMetadataExchange. A ferramenta Svcutil.exe carrega automaticamente de seu arquivo de configuração uma IMetadataExchange configuração de ponto de extremidade do cliente que tem o mesmo nome que o esquema de URI para o endereço do ponto de extremidade de metadados.
Segurança
Ao publicar metadados sobre uma associação personalizada, certifique-se de que a associação fornece o suporte de segurança necessário para os metadados. Por exemplo, para evitar a divulgação de informações e garantir que seu cliente tenha o direito de obter os metadados, você pode tornar seus metadados e seu aplicativo mais seguros configurando seu IMetadataExchange ponto de extremidade para exigir autenticação e criptografia. O exemplo de Custom Secure Metadata Endpoint demonstra esse cenário.