Como eu criaria um console administrativo remoto para um serviço WCF usando Telnet/Raw?

StackOverflow https://stackoverflow.com/questions/757926

  •  09-09-2019
  •  | 
  •  

Pergunta

Eu tenho um serviço WCF atualmente usando um terminal TCP. Em vez de criar um aplicativo de cliente de console separado para administrar o servidor, eu quero a capacidade de telnet no servidor ou até mesmo conectar usando uma conexão bruta usando o PuTTY e executar comandos ASCII diretamente no servidor.

Alguma idéia de como eu iria fazer isso? Não é um especialista no WCF, por isso apreciaria qualquer ajuda. Obrigado

Foi útil?

Solução

Eu não acho que o WCF suporta o processamento de comando personalizado fora da caixa e será um pouco de salto para fazer isso funcionar. eu sugeriria

  1. Hospedar o serviço WCF dentro de um serviço do Windows em vez de IIS
  2. Crie um ouvinte de soquete dentro do serviço Windows ouvindo na porta de sua escolha
  3. Escreva algum código para processar seu comando quando os dados chegarem ao soquete

Outras dicas

Duvido que você possa fazer isso - o WCF sempre terá que usar seus pontos de extremidade definidos - TCP, HTTP - qualquer que seja. Não estou ciente de nenhuma ligação de telnet ou conexão bruta, como você a menciona.

Na minha perspectiva, por que não criar um contrato de serviço para fins de administração e apenas atingi -lo com HTTP e/ou TCP de um aplicativo de console? Parece mais fácil do que tentar "aparafusar" algo que não foi realmente pensado.

Marc

Para administrar meus aplicativos WCF, hospede -me no IIS e tenho uma subpasta no diretório virtual do aplicativo com as páginas Admin ASPX. A pasta é protegida do acesso não autorizado usando as funções ASP.NET.

A pasta Admin inclui páginas independentes do aplicativo (por exemplo, gerenciamento de log, visualize arquivos de log) e quando apropriado páginas específicas do aplicativo.

Como as páginas do ASP.NET são executadas dentro do mesmo aplicativo que os Serviços WCF hospedados, o Sky é o limite, na medida em que adiciona funcionalidade para instrumentação e configuração dinâmica.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top