Partilhar via


Redirecionamento de periféricos e recursos através do Protocolo de Área de Trabalho Remota

O redirecionamento permite que os usuários compartilhem recursos e periféricos, como área de transferência, webcams, dispositivos USB, impressoras e muito mais, entre o dispositivo local (do lado do cliente) e uma sessão remota (do lado do servidor) pelo protocolo RDP (Remote Desktop Protocol ). O redirecionamento visa fornecer uma experiência remota perfeita, comparável à experiência usando seu dispositivo local. Essa experiência ajuda os usuários a serem mais produtivos e eficientes ao trabalhar remotamente. Como administrador, você pode configurar o redirecionamento para ajudar a equilibrar entre seus requisitos de segurança e as necessidades de seus usuários.

Este artigo fornece informações detalhadas sobre métodos de redirecionamento entre classes periféricas diferentes, classificações de redirecionamento e os tipos suportados de recursos e periféricos que você pode redirecionar.

Métodos e classificações de redirecionamento

O RDP aproveita dois métodos de redirecionamento para redirecionar recursos e periféricos entre o dispositivo local e uma sessão remota:

  • Redirecionamento de alto nível: funciona como um intermediário inteligente, intercetando e otimizando toda a comunicação para uma classe específica de periféricos ou experiência. O redirecionamento de alto nível garante o melhor desempenho possível para cenários remotos, mas também depende do driver periférico e do suporte a aplicativos.

  • Redirecionamento opaco de baixo nível: transporta a comunicação bruta de um periférico sem qualquer tentativa de interpretá-la, compreendê-la, limitá-la ou otimizá-la para cenários remotos.

    O redirecionamento opaco de baixo nível é usado para periféricos que se conectam via USB onde não existe uma solução adequada de redirecionamento de reflexão periférica de alto nível e para periféricos que têm requisitos específicos de driver ou software na sessão remota para funcionar corretamente. O redirecionamento USB acontece no nível da porta e do protocolo usando blocos de solicitação USB (URB). O redirecionamento opaco de baixo nível também é usado para periféricos que se conectam por meio de portas seriais/COM.

Dentro do redirecionamento de alto nível, existem quatro técnicas abrangentes que são usadas, que são classificadas com base na direção do redirecionamento e no tipo de recurso ou periférico que está sendo redirecionado. As quatro classificações de redirecionamento de alto nível são:

  • Reflexão periférica: reflete uma classe específica de periférico conectado ao dispositivo local em uma sessão remota. Essa classificação inclui dispositivos de entrada, como teclado, mouse, toque, caneta e trackpad.

  • Partilha de dados: partilha e transfere dados entre o dispositivo local e uma sessão remota para a área de transferência.

  • Reflexão de estado: reflete o estado do dispositivo local em uma sessão remota, como o status e a localização da bateria.

  • Divisão de aplicativos: divide a funcionalidade de um aplicativo no dispositivo local e em uma sessão remota, como o Microsoft Teams.

O método de redirecionamento usado pode variar de acordo com a classe de periféricos, como Windows, macOS, iOS/iPadOS ou Android, e seus recursos, periféricos e recursos disponíveis. O redirecionamento disponível em uma sessão remota também depende do aplicativo usado. Para obter uma comparação do suporte para redirecionamento usando o Aplicativo do Windows em diferentes plataformas, consulte Comparar recursos do Aplicativo Windows entre plataformas e dispositivos.

Importante

Você deve usar o redirecionamento de alto nível sempre que possível, pois ele fornece o melhor desempenho e experiência do usuário. O redirecionamento opaco de baixo nível é efetivamente um cenário de fallback, portanto, o desempenho, a confiabilidade e o conjunto de recursos suportados desses periféricos não são garantidos por padrão.

Alguns periféricos não podem ser redirecionados, como o armazenamento USB criptografado.

Comparação de redirecionamento USB

A tabela a seguir compara o redirecionamento de um periférico USB usando o redirecionamento USB opaco de baixo nível com o redirecionamento do periférico usando o redirecionamento de alto nível com uma classe de periférico suportada sobre RDP:

Redirecionamento USB opaco de baixo nível Redirecionamento de alto nível
Requer o driver para que o periférico USB seja instalado na sessão remota. Não requer que o driver seja instalado no dispositivo local. Requer o driver para que o periférico seja instalado no dispositivo local. Na maioria dos casos, ele não requer que o driver seja instalado na sessão remota.
Usa um único método de redirecionamento para muitas classes periféricas. Usa um método de redirecionamento específico para cada classe periférica.
Encaminha blocos de solicitação USB de e para o periférico USB através da conexão RDP. Expõe a funcionalidade periférica de alto nível em uma sessão remota usando um protocolo otimizado para a classe periférica.
O periférico USB não pode ser usado no dispositivo local enquanto estiver sendo usado em uma sessão remota. Ele só pode ser usado em uma sessão remota de cada vez. O periférico pode ser usado simultaneamente no dispositivo local e em uma sessão remota.
Otimizado para conexões de baixa latência. Variável baseada na implementação de drivers periféricos. Otimizado para conexões LAN e WAN e está ciente das mudanças nas condições, como largura de banda e latência.

Controlando o redirecionamento USB opaco de baixo nível

O redirecionamento de periféricos USB usando o redirecionamento USB opaco de baixo nível é controlado pela propriedade usbdevicestoredirect:s:<value> RDP , onde <value> é o caminho da instância do dispositivo no formato .USB\<Vendor ID and Product ID>\<USB instance ID>

Para alguns produtos e serviços, como a Área de Trabalho Virtual do Azure, você pode controlar o comportamento de redirecionamento definindo o valor da propriedade RDP da seguinte maneira:

  • Alguns periféricos USB podem ter funções que usam redirecionamento USB opaco de baixo nível ou redirecionamento de alto nível. Por padrão, esses periféricos são redirecionados usando o redirecionamento de alto nível. Você pode usar a propriedade RDP para forçar esses periféricos a usar o redirecionamento USB opaco de baixo nível. Para usar periféricos de áudio USB com redirecionamento USB opaco de baixo nível, o local de saída de áudio deve ser definido para reproduzir sons no computador local.

  • Use GUIDs de classe para redirecionar ou não redirecionar uma classe inteira de periféricos USB.

  • Use o curinga * , pois o valor redirecionará a maioria dos periféricos que não têm mecanismos de redirecionamento de alto nível ou drivers instalados. Os GUIDs de classe podem ser usados para redirecionar periféricos adicionais que não são correspondidos automaticamente.

Os valores podem ser usados por conta própria, ou uma combinação desses valores pode ser usada em conjunto uns com os outros quando separados por ponto-e-vírgula, sujeitos a uma ordem de processamento. A tabela a seguir lista os valores válidos e a ordem de processamento:

Ordem de processamento valor Description
N/A Nenhum valor especificado Não redirecione nenhum periférico USB suportado usando o redirecionamento opaco de baixo nível.
1 * Redirecionar todos os periféricos que não estão usando o redirecionamento de alto nível.
2 {<DeviceClassGUID>} Redirecionar todos os periféricos que são membros da classe de configuração de dispositivo especificada.
3 <USBInstanceID> Redirecionar um periférico USB especificado pelo caminho da instância do dispositivo fornecido.
4 <-USBInstanceID> Não redirecione um periférico especificado pelo caminho da instância do dispositivo determinado.

Quando construída como uma cadeia de caracteres na ordem de processamento correta, a sintaxe é:

usbdevicestoredirect:s:*;{<DeviceClassGUID>};<USBInstanceID>;<-USBInstanceID>

O caminho da instância do dispositivo para dispositivos USB é construído em três seções no formato USB\<Device ID>\<USB instance ID>. Você pode encontrar esse valor no Gerenciador de Dispositivos ou usando o cmdlet Get-PnpDevice PowerShell. As três secções por ordem são as seguintes:

  1. Nome do motorista do ônibus, neste caso USB.
  2. ID do dispositivo, que contém o ID do fornecedor (VID) e o ID do produto (PID) do periférico USB.
  3. ID de instância, que distingue exclusivamente um dispositivo de outros dispositivos do mesmo tipo em um computador.

Ao especificar periféricos USB para redirecionar por RDP, você pode usar o caminho da instância do dispositivo. Ao usar o caminho da instância do dispositivo, o valor é específico para a porta no dispositivo local ao qual ele está conectado. Por exemplo, um periférico conectado à primeira porta USB tem o caminho USB\VID_045E&PID_0779\5&21F6DCD1&0&5da instância do dispositivo, mas conectar o mesmo periférico à segunda porta USB tem o caminho USB\VID_045E&PID_0779\5&21F6DCD1&0&6da instância do dispositivo. Para periféricos USB, especificar o caminho da instância do dispositivo significa que o periférico só é redirecionado quando conectado à mesma porta.

Como alternativa, você pode redirecionar uma classe de configuração de dispositivo inteira de periféricos USB usando o GUID da classe. Ao usar o GUID de classe, todos os periféricos no dispositivo local que têm o GUID de classe correspondente são redirecionados, independentemente da porta à qual estão conectados. Por exemplo, usar o GUID {4d36e96c-e325-11ce-bfc1-08002be10318} de classe redireciona todos os dispositivos multimídia. Uma lista de todos os GUIDs de classe está disponível em System-Defined Device Setup Classes Available to Vendors.

Para obter alguns exemplos de como usar a propriedade RDP, consulte a propriedade RDP usbdevicestoredirect.

Recursos e periféricos suportados

A tabela a seguir lista cada recurso suportado ou classe periférica e o método de redirecionamento recomendado a ser usado para cada um:

Classe de recurso ou periférica Método de redirecionamento Direção predominante do fluxo de dados
Impressora/scanner tudo-em-um Redirecionamento opaco de baixo nível Bidirecional
Entrada de áudio - microfone (USB ou integrado) Alto nível - reflexão periférica Local para remoto
Saída de áudio - alto-falante (USB ou integrado) Alto nível - reflexão periférica Remoto para local
Bateria (automática, não configurável) Alto nível - reflexão estatal Local para remoto
Leitor biométrico (apenas dentro de uma sessão, não durante o logon) Redirecionamento opaco de baixo nível Bidirecional
Câmara/webcam (USB ou integrada) Alto nível - reflexão periférica Local para remoto
Unidade de CD/DVD (somente leitura) Alto nível - reflexão periférica Local para remoto
Área de transferência Alto nível - partilha de dados Bidirecional
Teclado (USB ou integrado) Alto nível - reflexão periférica Local para remoto
Disco rígido local ou armazenamento removível USB Alto nível - reflexão periférica Bidirecional
Location Alto nível - reflexão estatal Local para remoto
Rato (USB ou integrado) Alto nível - reflexão periférica Local para remoto
MTP Media Player Alto nível - reflexão periférica Local para remoto
Redirecionamento multimédia Alto nível - divisão de aplicativos Bidirecional
Caneta (USB ou integrada) Alto nível - reflexão periférica Local para remoto
Impressora (conectada localmente ou em rede) Alto nível - reflexão periférica Remoto para local
Câmara PTP Alto nível - reflexão periférica Local para remoto
Scanner Redirecionamento opaco de baixo nível Bidirecional
Porta Serial/COM Redirecionamento opaco de baixo nível Bidirecional
Leitor de cartões inteligentes Alto nível - reflexão periférica Bidirecional
Touch (USB ou integrado) Alto nível - reflexão periférica Local para remoto
Trackpad (USB ou integrado, excluindo gestos de precisão do touch pad (PTP)) Alto nível - reflexão periférica Local para remoto
Adaptador USB para série Redirecionamento opaco de baixo nível Bidirecional
Telefone VoIP/Fone de ouvido Redirecionamento opaco de baixo nível Bidirecional
WebAuthN Alto nível - reflexão periférica Bidirecional

Nota

  • As seguintes classes periféricas estão bloqueadas para redirecionamento:

    • Adaptadores de rede USB.
    • Ecrãs USB.
  • O redirecionamento do scanner não inclui suporte a TWAIN.

  • O redirecionamento de bateria só está disponível para a Área de Trabalho Virtual do Azure e o Windows 365. Está automaticamente disponível e não é configurável.

  • Não há suporte para redirecionar a pilha de drivers bluetooth. Se um periférico estiver conectado ao dispositivo local, como um teclado bluetooth, ele será redirecionado para a sessão remota com base na classe periférica suportada.

O diagrama a seguir mostra os métodos de redirecionamento usados para cada classe periférica:

Um diagrama mostrando como diferentes classes periféricas são mapeadas para os métodos de redirecionamento de alto nível e opaco de baixo nível.

Ordem de prioridade de configuração

Quais classes de dispositivo estão habilitadas para redirecionamento e como os redirecionamentos se comportam são configuradas por um administrador de uma sessão remota. O comportamento pode ser configurado pelo Microsoft Intune ou pela Política de Grupo (Ative Directory ou local) do lado do servidor ou especificado em um .rdp arquivo usado para se conectar a uma sessão remota. A Área de Trabalho Virtual do Azure e os Serviços de Área de Trabalho Remota também têm um serviço de agente onde as propriedades RDP podem ser especificadas.

No entanto, certas configurações podem ser substituídas no dispositivo local onde uma configuração mais restritiva é necessária. Uma configuração mais restritiva tem precedência onde quer que esteja configurada; Por exemplo, se um administrador configurar a área de transferência para ser redirecionada por padrão para todas as sessões remotas, mas o dispositivo local estiver configurado para desabilitar o redirecionamento da área de transferência, a área de transferência não estará disponível na sessão remota. Isso fornece flexibilidade em cenários em que um subconjunto de usuários ou dispositivos requer configurações mais restritivas do que a configuração padrão.