O que é o WebDAV? Em quais contextos você o encontra? Como isso difere de suas alternativas?
A web e o WebDAV
A rede mundial pretendia ser um meio para consumir e produzindo conteúdo. Mas os navegadores perderam quase imediatamente a capacidade de editar páginas da Web, e o conteúdo somente leitura aumentou para se tornar a norma dominante.
Os primeiros navegadores da web suportaram a edição de páginas da web.
No entanto, a edição colaborativa de conteúdo remoto é frequentemente necessária e, portanto, reaparece na Web de várias formas. O WebDAV (Criação e Versão Distribuída na Web) é um mecanismo. Um servidor da web que suporta o WebDAV funciona simultaneamente como um servidor de arquivos. Essa é uma capacidade poderosa.
Você pode encontrar o WebDAV no servidor HTTP Apache, Microsoft IIS, Box.com, WordPress, Drupal, Microsoft Sharepoint, Subversion, Git, Windows Explorer, macOS Finder, Microsoft Office, Apple iWork, Adobe Photoshop e muitos outros lugares..
O WebDAV remonta ao final dos anos 90; nos anos da internet, é antigo. No mundo dos protocolos da Web e APIs, é anterior às arquiteturas SOAP / XML e RESTful. Apesar de sua longevidade, as implementações do WebDAV podem ser peculiares. Muitos servidores e clientes implementam subconjuntos ou subconjuntos estendidos dos vários padrões envolvidos. Portanto, a interoperabilidade não pode ser assumida; o sucesso depende da plataforma, ambiente e extensões específicas do fornecedor.
Por tudo isso, em muitos de seus casos de uso, o WebDAV está sendo suplantado por mecanismos mais modernos. Mas ainda é um recurso poderoso e uma força de trabalho confiável quando os servidores e clientes certos são combinados. Você pode encontrá-lo em muitos contextos diferentes.
O que é o WebDAV?
O WebDAV (RFC 4918) é uma extensão do HTTP, o protocolo que os navegadores e servidores da Web usam para se comunicar. O protocolo WebDAV permite que um servidor da Web também se comporte como um servidor de arquivos, suportando a criação colaborativa de conteúdo da Web.
O WebDAV estende o conjunto de métodos e cabeçalhos HTTP padrão para fornecer a capacidade de criar um arquivo ou pasta, editar um arquivo no local, copiar ou mover ou excluir um arquivo etc. Como extensão do HTTP, o WebDAV normalmente usa a porta 80 para códigos não criptografados. acesso e porta 443 (HTTPS) para acesso seguro.
Para oferecer suporte à criação colaborativa, a especificação original do WebDAV incluía o bloqueio de arquivos, mas foi lançada na parte “versionamento” do DAV devido à complexidade do domínio de rastreamento de revisão. O DeltaV (RFC 3253), a parte de gerenciamento de versão e configuração do WebDAV, foi definido posteriormente. Os recursos de pesquisa também foram adicionados em uma extensão posterior (RFC 5323).
O acesso e manipulação de arquivos é um recurso bem compreendido, útil para um grande público. Mas o rastreamento de revisões é estranho para usuários não técnicos. Também não há método comum usado pelos sistemas operacionais, sistemas de controle de versão e aplicativos para modelar o histórico e as alterações. Muitos esquemas estão em uso. Como conseqüência, o WebDAV sem versionamento é generalizado e o DeltaV é muito menos amplamente implementado.
Se você encontrar um servidor WebDAV referido como “classe 1”, isso significa que ele não possui bloqueio. A classe 2 inclui travamento. Um servidor WebDAV com controle de versão geralmente é chamado de servidor “DeltaV”.
O WebDAV tem sido a base de protocolos adicionais, incluindo calendário (CalDAV) e gerenciamento de contatos (CardDAV).
Onde você encontrará o WebDAV
O WebDAV aparece em muitos contextos diferentes, no lado do servidor ou do cliente.
Um aviso: muitos deles têm suporte para WebDAV há um bom tempo. Quando o WebDAV não é central para o pacote específico, a funcionalidade do WebDAV pode não ser mantida, como antes.
Servidores WebDAV
Um servidor WebDAV é sempre um servidor da web, mas pode estar incorporado em outro sistema.
Servidores da Web de uso geral
A implementação padrão do WebDAV de código aberto está no servidor HTTP Apache. Muitos servidores da Web oferecem suporte ao WebDAV por meio de um módulo complementar, como Nginx, lighttpd e Microsoft IIS.
Sistemas de controle de versão
Vários sistemas de controle de versão são acessíveis através de alguma forma de WebDAV, incluindo Subversion, Git e PVCS.
Plataformas colaborativas e sistemas de gerenciamento de conteúdo
Plataformas de colaboração como Microsoft Sharepoint ou CMSs como WordPress, Drupal ou Joomla podem ter o WebDAV embutido ou disponível através de módulos complementares.
Serviços de armazenamento conectado à rede e armazenamento em nuvem
Os dispositivos NAS (Network-Attached Storage) em sua LAN podem suportar acesso remoto via WebDAV. Serviços de hospedagem de arquivos na nuvem, como o Box.com, podem oferecer acesso a suas pastas e arquivos via WebDAV.
Várias aplicações
O WebDAV aparece em locais aleatórios onde a manipulação e edição remotas de arquivos são úteis. Por exemplo, a plataforma de design de sistema LabView pode usar o WebDAV para transferir arquivos de / para um computador de destino incorporado.
Clientes WebDAV
Como observa a documentação do Subversion, os clientes WebDAV são aplicativos independentes, extensões para exploradores de arquivos ou módulos de sistema de arquivos. Especificamente, um cliente WebDAV pode ser um dos seguintes.
Aplicativos de acesso a arquivos WebDAV
Os aplicativos destinados a fornecer acesso a arquivos remotos podem ser puramente orientados para o WebDAV, como o cadáver da ferramenta de linha de comando do Linux ou o DAV Explorer gráfico. Ou podem ser ferramentas que falam vários protocolos, como WinSCP ou Cyberduck.
Usando o WinSCP para procurar arquivos remotos via WebDAV.
Estes permitem baixar e fazer upload de arquivos, manipular pastas, etc; as da GUI fornecem metáforas visuais relacionadas ao arrastar e soltar.
Aplicativos que usam WebDAV
Uma variedade de aplicativos tem a capacidade de trabalhar com arquivos acessados via WebDAV. A caixa de diálogo de seleção de arquivos do aplicativo suporta a inserção não apenas de um nome de arquivo local, mas de um URL do WebDAV, com o nome de usuário e a senha necessários para o servidor WebDAV. Esses aplicativos incluem o Microsoft Office (Word, Excel, etc); Apple iWork (Páginas, Números, Keynote); Adobe Photoshop e Dreamweaver; e outros.
Quando esse aplicativo funciona com arquivos ou pastas em um servidor WebDAV, o WebDAV trabalha nos bastidores para fornecer modificações colaborativas em arquivos remotos. Os arquivos no servidor são editados “no local”, sem fazer o download no sistema de arquivos local para posterior re-upload (o que cria várias cópias que podem ficar fora de sincronia).
Extensões do explorador de arquivos
A maioria das interfaces de usuário dos gerenciadores de arquivos de sistemas operacionais inclui uma extensão para apresentar e manipular pastas e arquivos WebDAV como se fossem locais. Isso inclui o Gerenciador de arquivos do Windows, o macOS Finder e os arquivos GNOME (Nautilus) e o KDE Konqueror no Linux.
Mapeando um servidor WebDAV como uma unidade de rede no Windows Explorer.
Em cada caso, haverá uma opção “conectar ao servidor”, na qual você fornece o URL do servidor WebDAV (infelizmente, o formato do URL varia de ferramenta para ferramenta). Você fornece o nome de usuário e a senha para acessar o servidor.
Servidor WebDAV mapeado no Windows Explorer.
O gerenciador de arquivos apresenta arquivos e pastas remotos, acessados via WebDAV, como recursos locais nos quais você pode clicar, arrastar e soltar, etc..
Módulos do sistema de arquivos
Vários sistemas operacionais incluem a opção de usar um módulo de sistema de arquivos de baixo nível que monta ou mapeia uma conexão com um servidor WebDAV como uma unidade ou montagem. Isso inclui o Microsoft WebDAV Redirector, o sistema de arquivos macOS WebDAV e o Linux GNOME GVfs e o KDE KIO.
Depois que o sistema operacional mapeia / monta o servidor WebDAV, os arquivos e pastas expostos via WebDAV parecem ser locais. Eles são acessados pelas chamadas normais de acesso a arquivos, e qualquer aplicativo local os acessa sem saber sua verdadeira localização.
Alternativas ao WebDAV
O WebDAV permite edição e manipulação remotas de arquivos. Existem muitos outros mecanismos para trabalhar com arquivos em um servidor remoto; como o WebDAV é diferente?
FTP
O FTP (File Transfer Protocol) data dos primeiros dias da Internet. A internet era uma cidade pequena naquela época, então a segurança do baunilha FTP é completamente inadequada para as ruas ruins da internet de hoje. Por outro lado, o WebDAV tira proveito da segurança HTTPS. O design do FTP não é compatível com firewall, onde o WebDAV depende dos mecanismos padrão para oferecer suporte a servidores da web. O FTP requer seu próprio processo de servidor, onde o WebDAV mora no servidor da web. E o FTP não inclui recursos orientados à colaboração, como bloqueio e rastreamento de versão.
Existem descendentes de FTP que atendem à necessidade de segurança executando uma extensão de FTP ou um protocolo semelhante no topo de SSL / TLS ou SSH.
SSH
O protocolo SSH (Secure Shell) usa criptografia para fornecer com segurança serviços do sistema operacional, como acesso a arquivos e execução de comandos em uma rede insegura. Entre os serviços estão SCP (protocolo Secure Copy) e SFTP (Secure File Transfer Protocol).
O SSH (e, portanto, o SCP e SFTP) requer seu próprio processo de servidor e regras de firewall, mas o suporte ao SSH é quase universal no Linux e no macOS, e recentemente se tornou um serviço interno no Windows 10 (era necessário software de terceiros) . O SCP lida apenas com arquivos em movimento, onde o SFTP pode manipular pastas, excluir arquivos, etc. No entanto, eles não possuem recursos orientados à colaboração; o protocolo SFTP suporta bloqueio de arquivos, mas você ainda não pode contar com a presença e a ativação do arquivo.
Wikis
Quando estamos falando sobre a produção colaborativa de conteúdo na Web, os wikis são um exemplo óbvio. Wikis são sites editados em grupo que servem como bases de conhecimento de projetos, ferramentas para anotações, sites da comunidade etc..
Um wiki permite que seus usuários modifiquem o conteúdo das páginas, criem páginas e modifiquem as conexões entre as páginas, usando um navegador de baunilha – não são necessários protocolos especiais como o WebDAV.
Os wikis geralmente usam uma linguagem de marcação simplificada que é muito mais limitada – e mais rápida de entender – que o HTML. Um mecanismo wiki vive em um servidor da web como o WebDAV. Para permitir que um navegador da web baunilha edite, os wikis não incluem a capacidade de editar arquivos multimídia, e o único “gerenciamento de arquivos / pastas” incluído é a capacidade de criar e modificar hiperlinks entre páginas da wiki.
O ideal da wiki é que o site seja de origem coletiva e auto-organizado; qualquer usuário pode fazer modificações e não há proprietário ou gatekeeper predefinido. O ideal anárquico é freqüentemente comprometido; existem vários mecanismos wiki e muitos oferecem suporte à autenticação do usuário e à imposição de controles de acesso nas operações.
Sistemas de arquivos distribuídos
Existem vários protocolos para compartilhar sistemas de arquivos remotos entre redes, cujo uso mais comum é mapear / montar um compartilhamento de rede exportado por um servidor, permitindo acessar pastas e arquivos no servidor como se fossem uma unidade local. SMB / CIFS é nativo do Windows; NFS é nativo para Unix / Linux; e para MacOS, o antigo padrão AFP foi preterido em favor do SMB.
Esses protocolos fornecem essencialmente todos os serviços de um sistema de arquivos em uma unidade local, incluindo bloqueio de arquivos, mas não rastreamento de versão de arquivo interno.
As instalações distribuídas do sistema de arquivos geralmente vêm com o sistema operacional; se adicionados posteriormente, geralmente requerem módulos adicionais adicionados ao sistema operacional.
Esses protocolos foram desenvolvidos para funcionar em uma LAN. O desempenho na Internet de área ampla ou em uma VPN não será estelar, embora você possa atenuá-lo um pouco com o ajuste, e as versões posteriores dos protocolos tentam resolver esse novo uso.
Esses protocolos têm superfícies de ataque muito maiores do que protocolos mais simples como o WebDAV. Embora algumas versões recentes como NFSv4 e SMB3 façam melhorias para oferecer suporte ao uso seguro em redes não confiáveis, a maioria das versões desses serviços não é segura além da LAN e a configuração para esse uso é perigosa..
Armazenamento de arquivos na nuvem
Serviços de armazenamento em nuvem como Dropbox, Microsoft OneDrive, Google Drive e Box.com parecem lugares naturais para o WebDAV. Ele aparece em alguns deles – o Box.com é acessível via WebDAV e o OneDrive pode ser acessado pelos recursos padrão do Windows WebDAV (embora você só precise disso se não tiver a sincronização de arquivos do OneDrive instalada). Outros serviços de armazenamento em nuvem fornecem suas próprias APIs especializadas, software de sincronização de arquivos e clientes de aplicativos da web. Se você deseja acesso ao WebDAV, precisa usar um gateway de terceiros..
As APIs especializadas, o software de sincronização de arquivos e os clientes de aplicativos da Web fornecidos pelos serviços em nuvem são projetados para fornecer segurança e desempenho em redes como a Internet.
Por que escolher o WebDAV?
Embora existam alternativas ao WebDAV e alguns deles sejam sistemas mais novos, nenhum dos sistemas rivais integra todos os recursos do WebDAV. Os principais atributos do WebDAV são:
- Integração de sistema operacional
- Livre para usar
- Estreita integração com serviços da web
- Controle de versão
- Criptografia de transporte
- Acesso remoto
- Armazenamento centralizado
- Controle de versão
- Bloqueio de arquivo
Nenhum dos sistemas alternativos para gerenciamento de arquivos possui todos esses atributos. Você pode transferir arquivos com segurança com SFTP e SCP, mas esses protocolos não incluem controle de versão. O WebDav concede acesso remoto a documentos em um repositório central, em vez de exigir que os arquivos sejam copiados para o computador local do usuário e depois copiados novamente.
Você pode comprar pacotes de software que gerenciam a criação colaborativa, mas pagará por um sistema que apenas duplica os serviços do WebDAV, que você pode obter gratuitamente.
Embora o WebDAV às vezes seja descrito como uma metodologia obsoleta, ele serviu muito bem as empresas populares de armazenamento em nuvem para fornecer acesso local contínuo a arquivos remotos. As práticas modernas de trabalho de compartilhamento de tarefas, gerenciamento de projetos, autoria colaborativa, coordenação de desenvolvimento, teletrabalho e serviços em nuvem criam um requisito para os serviços que o WebDAV pode fornecer há décadas. De certa forma, o WebDAV estava à frente de seu tempo, e só agora as empresas estão começando a operar de maneiras que exigem o conjunto completo de recursos do WebDAV.
Servidores e clientes WebDAV ainda estão fortes
O WebDAV é um protocolo de longa data que permite que um servidor da web atue como servidor de arquivos e ofereça suporte à criação colaborativa de conteúdo na web. Em muitos de seus casos de uso, o WebDAV está sendo suplantado por mecanismos mais modernos. Mas ainda é uma força de trabalho confiável quando os servidores e clientes certos são combinados, por isso ainda é encontrado em muitos aplicativos diferentes.
industry-industry-4-network-points por Geralt, licenciado sob CC0.
WorldWideWeb (o navegador da Web original baseado no NeXT), c. 1993, Tim Berners-Lee para CERN – via Wikipedia.
tado.
Onde você encontrará o WebDAV? O WebDAV pode ser encontrado em vários contextos, incluindo servidores da web de uso geral, sistemas de controle de versão, plataformas colaborativas e sistemas de gerenciamento de conteúdo, serviços de armazenamento conectado à rede e armazenamento em nuvem, e várias aplicações. Alguns exemplos incluem o servidor HTTP Apache, Microsoft IIS, Box.com, WordPress, Drupal, Microsoft Sharepoint, Subversion, Git, Windows Explorer, macOS Finder, Microsoft Office, Apple iWork, Adobe Photoshop e muitos outros lugares.
Como isso difere de suas alternativas? O WebDAV difere de suas alternativas, como FTP, SSH, wikis, sistemas de arquivos distribuídos e armazenamento de arquivos na nuvem, porque permite a criação colaborativa de conteúdo da web e estende o conjunto de métodos e cabeçalhos HTTP padrão para fornecer a capacidade de criar, editar, copiar, mover ou excluir arquivos. Além disso, o WebDAV suporta o versionamento de arquivos, permitindo que os usuários rastreiem as revisões e alterações. No entanto, o WebDAV pode ser menos interoperável do que outras alternativas e pode ser suplantado por mecanismos mais modernos em alguns casos de uso.
Por que escolher o WebDAV? O WebDAV pode ser uma escolha poderosa para aqueles que precisam de um servidor da web que também se comporte como um servidor de arquivos e suporte a criação colaborativa de conteúdo da web. Além disso, o WebDAV suporta o versionamento de arquivos, permitindo que os usuários rastreiem as revisões e alterações. No entanto, é importante considerar a interoperabilidade e as alternativas mais modernas em alguns casos de uso.
Servidores e clientes WebDAV ainda estão fortes. Apesar de sua longevidade, o WebDAV ainda é um recurso poderoso e uma força de trabalho confiável quando os servidores e clientes certos são combinados. Muitos servidores e clientes implementam subconjuntos ou subconjuntos estendidos dos v