Visão geral do Windows Device Portal

O WDP (Portal de Dispositivos do Windows) é um servidor Web incluído com dispositivos Windows que permite que você configure e gerencie as configurações do dispositivo por meio de uma conexão de rede ou USB (conexões locais também é compatível com dispositivos com um navegador da Web).

Ele também fornece ferramentas avançadas de diagnóstico para solução de problemas e exibição do desempenho do seu dispositivo Windows em tempo real.

A funcionalidade do WDP é exposta de modo programático por meio de uma coleção de APIs REST.

Este artigo fornece uma descrição geral do Portal de Dispositivos do Windows e inclui links para artigos com informações mais específicas sobre cada família de dispositivos Windows.

Observação

Uma família de dispositivos identifica as APIs, as características do sistema e os comportamentos esperados em uma classe de dispositivos.

Instalação

Cada família de dispositivos fornece uma versão do WDP, mas os recursos e a instalação variam de acordo com os requisitos de um dispositivo.

Estas são as etapas básicas para todos os dispositivos.

  1. Habilite o Modo de Desenvolvedor e o Portal de Dispositivos no dispositivo (Configurações –> Privacidade e segurança –> Para desenvolvedores).

  2. Conecte o dispositivo e o computador por meio de uma rede local ou com o USB.

  3. Navegue até a página do Device Portal em seu navegador. Esta tabela mostra as portas e os protocolos usados em cada família de dispositivos.

A tabela a seguir inclui detalhes específicos do dispositivo para o WDP.

Observação

O Windows Mixed Reality é executado em uma área de trabalho normal. Portanto, ele usa o mesmo portal da Área de Trabalho.

Família de dispositivos Ativado por padrão? HTTP HTTPS USB Instruções
Desktop e IoT Enterprise Habilitar dentro do Modo de Desenvolvedor 50080* 50043* N/D Portal de Dispositivos para Desktop ou dispositivo IoT Enterprise
Xbox Habilitar dentro do Modo de Desenvolvedor Desabilitado 11443 N/D Portal de Dispositivos para Xbox
HoloLens Sim, no Modo de Desenvolvedor 80 (padrão) 443 (padrão) http://127.0.0.1:10080 Portal de Dispositivos para HoloLens
IoT Core Sim, no Modo de Desenvolvedor 8080 Habilitar por meio da regkey N/D Portal de Dispositivos para IoT Core
Telefone Habilitar dentro do Modo de Desenvolvedor 80 443 http://127.0.0.1:10080 Portal de Dispositivos para celulares

* Esse nem sempre é o caso, já que o Device Portal na área de trabalho declara portas no intervalo efêmero (>50.000) para evitar colisões com declarações de portas existentes no dispositivo. Para saber mais, confira a seção Configuração baseada no Registro em Portal de Dispositivos do Windows para desktop.

Recursos

Barra de ferramentas e navegação

A barra de ferramentas na parte superior da página fornece acesso a recursos usados com frequência.

  • Energia: acessa as opções de energia.
    • Desligamento: desativa o dispositivo.
    • Reinicialização: repete o ciclo de energia no dispositivo.
  • Ajuda: abre a página de ajuda.

Use os links no painel de navegação ao lado esquerdo da página para navegar até as ferramentas de gerenciamento e monitoramento disponíveis para seu dispositivo.

As ferramentas que são comuns em todas as famílias de dispositivos estão descritas aqui. Talvez haja outras opções disponíveis dependendo do dispositivo. Para saber mais, confira a página específica para seu tipo de dispositivo.

Gerenciador de aplicativos

O Gerenciador de aplicativos fornece funcionalidade de gerenciamento e de instalação/desinstalação para pacotes de aplicativo no dispositivo do host.

Device Portal Apps manager page

  • Implantar aplicativos: implante aplicativos empacotados de hosts da rede, locais ou da Web e registre arquivos soltos de compartilhamentos de rede.
  • Aplicativos instalados: use o menu suspenso para remover ou iniciar aplicativos que estão instalados no dispositivo.
  • Aplicativos em execução: obtenha informações sobre os aplicativos que estão sendo executados atualmente e feche-os conforme necessário.

Instalar (fazer o sideload de) um aplicativo

Você pode fazer o sideload de aplicativos durante o desenvolvimento usando o Portal de Dispositivos do Windows:

  1. Quando tiver criado um pacote do aplicativo, você poderá instalá-lo remotamente em seu dispositivo. Após a compilação no Visual Studio, uma pasta de saída será gerada.

    App install

  2. No Portal de Dispositivos do Windows, navegue até a página Gerenciador de aplicativos.

  3. Na seção Implantar aplicativos, selecione Armazenamento Local.

  4. Em Selecionar o pacote do aplicativo, selecione Escolher arquivo e navegue até o pacote do aplicativo do qual você deseja fazer o sideload.

  5. Em Selecionar o arquivo do certificado (.cer) usado para assinar um pacote do aplicativo, selecione Escolher Arquivo e navegue até o certificado associado a esse pacote de aplicativo.

  6. Marque as respectivas caixas se desejar instalar pacotes opcionais ou de estrutura junto com a instalação do aplicativo e selecione Próximo para selecioná-los.

  7. Selecione Instalar para iniciar a instalação.

  8. Se o dispositivo estiver executando o Windows 10 no modo S, e for a primeira vez que o certificado fornecido foi instalado no dispositivo, reinicie o dispositivo.

Instalar um certificado

Como alternativa, você pode instalar o certificado por meio do Portal de Dispositivos do Windows e instalar o aplicativo por outros meios:

  1. No Portal de Dispositivos do Windows, navegue até a página Gerenciador de aplicativos.

  2. Na seção Implantar aplicativos, selecione Instalar Certificado.

  3. Em Selecionar o arquivo do certificado (.cer) usado para assinar um pacote do aplicativo, selecione Escolher Arquivo e navegue até o certificado associado ao pacote do aplicativo do qual você deseja fazer o sideload.

  4. Selecione Instalar para iniciar a instalação.

  5. Se o dispositivo estiver executando o Windows 10 no modo S, e for a primeira vez que o certificado fornecido foi instalado no dispositivo, reinicie o dispositivo.

Desinstalar um aplicativo

  1. Certifique-se de que seu aplicativo não esteja em execução.
  2. Se estiver, vá para Aplicativos em execução e feche-o. Se você tentar desinstalar enquanto o aplicativo estiver em execução, isso causará problemas ao tentar instalar o aplicativo novamente.
  3. Selecione o aplicativo na lista suspensa e clique em Remover.

Processos em execução

Esta página mostra detalhes sobre os processos em execução no momento no dispositivo host. Isso inclui aplicativos e processos do sistema. Em algumas plataformas (Área de Trabalho, IoT e HoloLens), você pode encerrar processos.

Device Portal Running processes page

Explorador de Arquivos

Esta página permite que você exiba e manipule arquivos armazenados por seus aplicativos carregados por sideload. Confira a postagem no blog Usar o Explorador de Arquivos do aplicativo para saber mais sobre o Explorador de Arquivos e como usá-lo.

Device Portal File explorer page

Desempenho

A página de Desempenho mostra gráficos em tempo real de informações de diagnóstico do sistema, como o uso de energia, a taxa de quadros e a carga da CPU.

Estas são as métricas disponíveis:

  • CPU: percentual do total disponível de utilização de CPU
  • Memória: total, em uso, disponível, comprometida, paginada e não paginada
  • E/S: quantidades de dados de leitura e gravação
  • Rede: dados recebidos e enviados
  • GPU: percentual do total disponível de utilização do mecanismo GPU

Device Portal Performance page

Registro em log de ETW (Rastreamento de Eventos para Windows)

A página de registro em log de ETW gerencia informações de ETW (Rastreamento de Eventos para Windows) em tempo real no dispositivo.

Device Portal ETW logging page

Marque Ocultar provedores para mostrar apenas a lista de eventos.

  • Provedores registrados: selecione o provedor de eventos e o nível de rastreamento. O nível de rastreamento é um destes valores:

    1. Saída anormal ou encerramento
    2. Erros graves
    3. Avisos
    4. Avisos que não são de erro
    5. Rastreamento detalhado

    Clique ou toque em Habilitar para iniciar o rastreamento. O provedor é adicionado à lista suspensa Provedores Habilitados.

  • Provedores personalizados: seleciona um provedor ETW personalizado e o nível de rastreamento. Identifique o provedor pelo GUID. Não inclua colchetes no GUID.

  • Provedores habilitados: lista os provedores habilitados. Selecione um provedor da lista suspensa e clique ou toque em Desabilitar para parar o rastreamento. Clique ou toque em Parar todos para suspender todo o rastreamento.

  • Histórico de provedores: mostra os provedores de ETW que foram habilitados durante a sessão atual. Clique ou toque em Habilitar para ativar um provedor que foi desabilitado. Clique ou toque em Limpar para limpar o histórico.

  • Filtros/Eventos: A seção Eventos lista os eventos de ETW dos provedores selecionados no formato de tabela. A tabela é atualizada em tempo real. Use o menu Filtros para configurar filtros personalizados de quais eventos serão exibidos. Clique no botão Limpar para excluir todos os eventos de ETW da tabela. Isso não desabilita os provedores. Você pode clicar em Salvar no arquivo para exportar os atuais eventos ETW coletados para um arquivo CSV local.

Para mais informações sobre como usar o registro em log de ETW, confira a postagem no blog Usar o Portal de Dispositivos para visualizar logs de depuração.

Rastreamento de desempenho

O Windows Performance Toolkit inclui a página Rastreamento de desempenho, que mostra os rastreamentos do WPR (Windows Performance Recorder) do dispositivo host.

Device Portal performance tracing page

  • Perfis disponíveis: selecione o perfil WPR na lista suspensa e clique ou toque em Iniciar para iniciar o rastreamento.
  • Perfis personalizados: clique ou toque em Procurar para escolher um perfil WPR do seu computador. Clique ou toque em Carregar e iniciar para iniciar o rastreamento.

Para interromper o rastreamento, clique em Parar. Fique nessa página até que o download do arquivo de rastreamento (.ETL) seja concluído.

Os arquivos .ETL capturados podem ser abertos para análise no Windows Performance Analyzer.

Gerenciador de dispositivos

A página do Gerenciador de Dispositivos enumera todos os periféricos conectados ao seu dispositivo. Você pode clicar nos ícones de configurações para exibir as propriedades de cada um.

Device Portal Device manager page

Rede

A página Rede gerencia conexões de rede no dispositivo. A menos que você esteja conectado ao Portal de Dispositivos por meio de USB, alterar essas configurações provavelmente desconectará você desse Portal.

  • Redes disponíveis: mostra as redes de Wi-Fi disponíveis para o dispositivo. Clicar ou tocar em uma rede permitirá que você se conecte a ela e forneça uma chave de acesso, se necessário. O Portal de Dispositivos ainda não dá suporte à Autenticação de Empresa. Você também pode usar a lista suspensa Perfis para tentar se conectar a qualquer um dos perfis de WiFi conhecidos pelo dispositivo.
  • Configuração de IP: mostra informações de endereço sobre cada uma das portas de rede do dispositivo host.

Device Portal Networking page

Notas e recursos do serviço

DNS-SD

O Device Portal anuncia sua presença na rede local usando DNS-SD. Todas as instâncias do Device Portal, independentemente do tipo de dispositivo, anunciam em "WDP._wdp._tcp.local". Os registros TXT para a instância do serviço fornecem o seguinte:

Chave Type Descrição
S int Porta segura para o Device Portal. Se 0 (zero), o Device Portal não está escutando conexões HTTPS.
D cadeia de caracteres Tipo de dispositivo. Isso estará no formato "Windows.*", por exemplo, Windows.Xbox ou Windows.Desktop
A cadeia de caracteres Arquitetura do dispositivo. Isso será ARM, x86 ou AMD64.
T lista de cadeias de caracteres delineadas de caracteres nulos Marcas aplicadas pelo usuário para o dispositivo. Consulte as Marcas API de REST para saber como usá-las. A lista é encerrada com duplo nulo.

É recomendável estabelecer conexão na porta HTTPS, pois nem todos os dispositivos estão ouvindo na porta HTTP anunciada pelo registro DNS SD.

Proteção contra CSRF e scripts

Para proteger-se contra ataques CSRF, um token exclusivo é necessário em todas as solicitações não GET. Esse token, o cabeçalho de solicitação X-CSRF-Token, é derivado de um cookie de sessão, o CSRF-Token. Na interface do usuário Web do Device Portal, o cookie CSRF-Token é copiado no cabeçalho X-CSRF-Token em cada solicitação.

Importante

Essa proteção impede o uso das APIs REST a partir de um cliente autônomo (por exemplo, utilitários de linha de comando). Isso pode ser resolvido de três modos:

  • Use um nome de usuário "auto-". Os clientes que têm o prefixo "auto-" no nome de usuário serão ignorados pela proteção contra CSRF. É importante que esse nome de usuário não seja usado para fazer logon no Device Portal por meio do navegador, pois ele abrirá o serviço para ataques CSRF. Exemplo: se o nome de usuário do Portal de Dispositivos for "admin", curl -u auto-admin:password <args> deverá ser usado para ignorar a proteção contra CSRF.
  • Implemente o esquema cookie-para-cabeçalho no cliente. Isso exige uma solicitação GET para estabelecer o cookie de sessão e, em seguida, a inclusão do cabeçalho e o cookie em todas as solicitações subsequentes.
  • Desabilite a autenticação e use HTTP. A proteção contra CSRF só se aplica a pontos de extremidade HTTPS, portanto, as conexões em pontos de extremidade HTTP não precisam fazer nada do que é mencionado acima.

Proteção de Cross-Site WebSocket Hijacking (CSWSH)

Para se proteger contra ataques CSWSH, todos os clientes que abrem uma conexão WebSocket com o Device Portal também devem fornecer um cabeçalho Origin que corresponda ao cabeçalho Host. Isso prova para o Device Portal que a solicitação vem da interface do usuário do Device Portal ou um aplicativo cliente válido. Sem o cabeçalho Origin, sua solicitação será rejeitada.

Confira também

Referência de API central do Portal de Dispositivos