# WebDAV

WebDAV (Web-based Distributed Authoring and Versioning) est une extension du protocole HTTP défini par le groupe de travail Internet Engineering Task Force du même nom.

## Histoire

Décrit dans la RFC 4918, WebDAV permet de simplifier la gestion de fichiers avec des serveurs distants. Il permet de récupérer, déposer, synchroniser et publier des fichiers et dossiers rapidement et facilement. L'objectif principal de WebDAV est de rendre possible l'écriture à travers le web et pas seulement la lecture de données.
WebDAV permet à plusieurs utilisateurs d'éditer le contenu d'un dossier web simultanément. Il saura gérer les droits d'accès aux fichiers (ou dossiers), en verrouillant momentanément les fichiers et dossiers édités.

## Extensions

Voici une brève description des extensions fournies par DAV :
* protection contre l'écrasement : mécanisme de verrouillage et de déverrouillage pour éviter les problèmes de synchronisation de mises à jour. Le protocole DAV supporte les accès exclusifs et partagés ;
* propriétés : métadonnées (titre, sujet, créateur, etc.) ;
* gestion des attributs de fichiers : copier, renommer, déplacer et supprimer des fichiers.
* contrôle d'accès : limitation d'accès à diverses ressources. Généralement, DAV considère qu'un contrôle d'accès est déjà en place, et ne fournit pas de mécanisme d'authentification robuste : RFC 3744 ;
* contrôle d'accès : WebDAV Current Principal Extension définit un protocole permettant au client WebDAV de découvrir les droits de l'utilisateur connecté ;
* gestion des versions : contrôle de versions des documents. Le contrôle des versions peut être mis en œuvre avec les extensions Delta-V ;
* calendriers : partage de calendriers CalDAV RFC 4791 (à ne pas confondre avec Web Calendar Access Protocol qui partage des fichiers iCalendar avec WebDAV. Ce dernier est l'association de deux RFC : celle définissant WebDAV et celle définissant iCalendar) ;
* recherche et localisation : WebDAV SEARCH RFC 5323 ex DASL définit un ensemble de méthodes de recherche et localisation d'information sur WebDAV.

## Les clients WebDAV

| | | WebDAV + Protocoles | WebDAV + Protocoles | WebDAV + Protocoles | WebDAV + Protocoles | |
| Nom | OS | SFTP | HTTPS | SMB | NFS | Nature |
| BitKinex | Windows | ? | ? | ? | ? | Gratuit |
| Fichiers - gestionnaire de fichiers | Linux (GNOME) | o | o | o | ? | Gratuit |
| Caja | Linux (Mint) | o | o | o | ? | Gratuit |
| Cryptomator | Mac / Windows / Linux / Android / iOS | | | | | Gratuit |
| Cyberduck (Donationware/GPL) | Mac & Windows | ? | o | ? | ? | Donationware/GPL |
| Dolphin | Linux (KDE) Windows | o | o | o | o | Gratuit |
| ES File Explorer | Android | | | | | Gratuit |
| Explorateur de fichiers NetDrive | Windows | ? | o | ? | ? | Gratuit |
| fuse | Linux | ? | ? | ? | ? | Gratuit |
| Handy Backup | Windows | ? | ? | ? | ? | Payant |
| Konqueror (?) | Linux (KDE) | ? | o | ? | ? | Gratuit |
| Rclone | Windows / Mac / Linux / *BSD / Plan9 / Solaris | o | o | o | ? | Gratuit |
| WebDrive | Mac / Windows | o | ? | ? | ? | Payant |
| WinSCP (v5.7 min) | Windows | o | ? | ? | ? | Gratuit |

## Emplacement

Sous Windows XP, les dossiers WebDAV se trouvent dans les « Favoris réseau ».
Sous les systèmes GNU/Linux, les dossiers WebDAV sont accessibles directement sur l'application de gestion de fichier dans les principaux environnements de bureaux (GNOME, KDE, Xfce).

## Alternatives

* File Transfer Protocol (FTP) est un protocole basé sur l'Internet Protocol (IP), permettant le transfert de fichiers dans un réseau. L'extension File Transfer Protocol Secure (FTPS) est ajoutée pour sécuriser le protocole.
* SSH File Transfer Protocol (SFTP), est une extension du protocole Secure Shell (SSH) version 2.0, sécurise le transfert de fichiers.
* Le protocole Server Message Block (SMB) permet aux systèmes Microsoft Windows et aux clients open-source Samba d'accéder et de gérer des fichiers et dossiers distants.
* AtomPub, basée sur HTTP et permet la création et la mise à jour des ressources.
* CMIS (Content Management Interoperability Services), est basé sur les Web Services et permet une gestion plus fine des ressources.
* Network File System (NFS)