Introdução com ASP.NET Web Forms
O modelo Web Forms e como criar páginas e usar controles.
Introdução ao Web Forms do ASP.NET 4.5 e ao Visual Studio 2013
Criação de uma página de Web Forms básica no Visual Studio 2013
Edição de código de Web Forms do ASP.NET no Visual Studio 2013
Uso do Inspetor de Página para Visual Studio 2012 em Web Forms do ASP.NET
Por que os recursos externos na minha página estão sendo bloqueados no Web Live Preview?
Se você tiver recursos externos de um domínio de terceiros que estejam em sua página, poderá observar que o designer no Web Live Preview os impediu de carregar e mostrará este sistema:
Talvez você esteja se perguntando por que os recursos foram impedidos de carregar no designer e por que o sistema está sendo exibido. Este artigo explica por que os recursos foram bloqueados.
Visão geral do Web Live Preview e browserLink
O WLP (Web Live Preview) é uma extensão do Visual Studio criada com base em BrowserLink. O WLP usa BrowserLink para fornecer um canal para comunicação bidirecional entre o Visual Studio e o designer. Essa comunicação bidirecional permite que o WLP forneça muitos recursos:
- Sincronizando o conteúdo e o nó atualmente selecionado no designer com o do editor.
- Enviar por push o novo conteúdo criado do designer para o editor.
- Executando comandos do Painel de Ações.
Possíveis vulnerabilidades de segurança com o Web Live Preview e o BrowserLink
Se você injetar scripts ou recursos de terceiros em sua página da Web, isso poderá expô-lo a uma possível vulnerabilidade de segurança usando WLP e BrowserLink para fazer um ataque XSS (Script entre Sites).
Se um recurso de terceiros puder injetar código mal-intencionado no site, o código poderá usar o script de Link do Navegador injetado no designer para fazer chamadas de volta ao Visual Studio. O script injetado pode permitir que o código escreva conteúdo arbitrário em arquivos abertos no Visual Studio ou abra outros vetores de ataque.
Atualmente, não há uma boa maneira de impedir que os invasores se comuniquem por meio do script BrowserLink de volta ao Visual Studio.
Mitigação de vulnerabilidade de segurança
Tanto quanto possível, limitamos e atenuamos as vulnerabilidades de segurança da comunicação por meio do script BrowserLink de volta para o Visual Studio. No entanto, alguns ataques ainda podem ser possíveis por meio de um ataque XSS.
Para reduzir a possibilidade de um ataque XSS, por padrão, o WLP impede que todos os recursos externos sejam carregados. Se algum recurso externo estiver bloqueado, o WLP mostrará o seguinte sistema no canto superior direito do designer:
(Neste exemplo, usamos o seguinte SVG, que é um recurso externo usado em um aplicativo Web de exemplo: https://visualstudio.microsoft.com/wp-content/uploads/2021/10/Product-Icon.svg)
Se a janela DovTools do Microsoft Edge estiver aberta, você também poderá observar a seguinte mensagem explicando por que um recurso externo falhou ao carregar:
No sistema do designer, se você selecionar o link clique aqui , ele abrirá a seguinte caixa de diálogo, com os domínios dos recursos bloqueados adicionados automaticamente à lista da caixa de diálogo:
Todos os recursos provenientes de domínios externos armazenados na lista da caixa de diálogo não serão bloqueados por padrão no WLP e serão carregados como de costume. Depois de clicar em OK, o designer recarrega a página e carrega todos os recursos bloqueados anteriormente cujos domínios foram adicionados à caixa de diálogo. Certifique-se de permitir apenas domínios externos que você verificou serem confiáveis e seguros.
Clicar no link Web Live Preview – domínios externos no sistema traz a mesma caixa de diálogo, mas não adicionará nenhum dos domínios dos recursos bloqueados à caixa de diálogo:
Você também pode acessar a caixa de diálogo por meio da configuração Tools -> Options -> Web Live Preview -> Allowed external domains during design
. As configurações da caixa de diálogo são por instância instalada do Visual Studio.
Aviso
Permitir que os domínios não sejam bloqueados por padrão pode expô-lo ao ataque XSS mencionado acima. Novamente, é altamente recomendável permitir apenas domínios externos que você pode verificar como confiáveis e seguros.