WebDAV - WebDAV

WebDAV
Kommunikationsprotokol
OSI lag Ansøgning
Port (er) 80, 443
RFC (r) RFC 2518, RFC  4918
Internet side www .webdav .org

WebDAV ( Web Distributed Authoring and Versioning ) er et sæt udvidelser til Hypertext Transfer Protocol (HTTP), som giver brugeragenter mulighed for i fællesskab at skrive indhold direkte i en HTTP -webserver ved at tilbyde faciliteter til samtidighedskontrol og navneområdeoperationer , hvorved Web kan betragtes som et skrivbart, samarbejdende medie og ikke kun et skrivebeskyttet medie. WebDAV er defineret i RFC  4918 af en arbejdsgruppe fra Internet Engineering Task Force (IETF).

WebDAV -protokollen giver en ramme for brugerne til at oprette, ændre og flytte dokumenter på en server . De vigtigste funktioner omfatter vedligeholdelse af egenskaber om en forfatter eller ændringsdato, navnerumshåndtering , samlinger og overskrivningsbeskyttelse. Vedligeholdelse af ejendomme omfatter ting som oprettelse, fjernelse og forespørgsel efter filinformation. Navnerumshåndtering omhandler evnen til at kopiere og flytte websider inden for en servers navneområde. Samlinger omhandler oprettelse, fjernelse og liste over forskellige ressourcer. Endelig håndterer overskrivningsbeskyttelse aspekter i forbindelse med låsning af filer. Det drager fordel af eksisterende teknologier såsom Transport Layer Security , godkendelse af fordøjelsesadgang eller XML for at opfylde disse krav.

Mange moderne operativsystemer giver indbygget support på klientsiden til WebDAV.

Historie

WebDAV begyndte i 1996, da Jim Whitehead , ph.d. fra UC Irvine , arbejdede sammen med World Wide Web Consortium (W3C) for at afholde to møder for at diskutere problemet med distribueret forfatterskabWorld Wide Web med interesserede mennesker. Tim Berners-Lees originale vision om Internettet involverede et medie til både læsning og skrivning. Faktisk kunne Berners-Lees første webbrowser , kaldet WorldWideWeb , både se og redigere websider ; men efterhånden som internettet voksede, blev det et skrivebeskyttet medie for de fleste brugere. Whitehead og andre ligesindede ønskede at overskride denne begrænsning.

Møderne resulterede i dannelsen af ​​en IETF -arbejdsgruppe, fordi den nye indsats ville føre til udvidelser til HTTP, som IETF var begyndt at standardisere.

Da arbejdet begyndte med protokollen, blev det klart, at håndtering af både distribueret forfatterskab og versionering sammen ville indebære for meget arbejde, og at opgaverne skulle adskilles. WebDAV -gruppen fokuserede på distribueret forfatterskab og forlod versionering for fremtiden. ( Delta-V-udvidelsen tilføjede versionering senere-se afsnittet Udvidelser herunder.)

WebDAV -arbejdsgruppen afsluttede sit arbejde i marts 2007, efter at Internet Engineering Steering Group (IESG) accepterede en trinvis opdatering til RFC  2518 . Andre udvidelser, der ikke var færdige på det tidspunkt, såsom BIND -metoden , er blevet færdige af deres individuelle forfattere, uafhængigt af den formelle arbejdsgruppe.

Implementering

WebDAV -samarbejde i en kompatibel HTTP -server

WebDAV udvider sættet med standard HTTP -verber og overskrifter, der er tilladt til anmodningsmetoder . De tilføjede verber omfatter:

  • KOPIER : kopier en ressource fra en ensartet ressourceidentifikator (URI) til en anden
  • LOCK : lås en ressource. WebDAV understøtter både delte og eksklusive låse.
  • MKCOL : opret samlinger (også kendt som et bibliotek )
  • MOVE : flyt en ressource fra en URI til en anden
  • PROPFIND : Hent egenskaber, gemt som XML , fra en webressource . Det er også overbelastet for at give en mulighed for at hente samlingsstrukturen (også kendt som bibliotekshierarki) for et eksternt system.
  • PROPPATCH : ændre og slette flere ejendomme på en ressource i et enkelt atom handling
  • UNLOCK : fjern en lås fra en ressource

Ejendomme

Egenskaberne for WebDAV -protokollen er navn -værdi -par , hvor et "navn" er en Uniform Resource Identifier (URI), og "værdierne" udtrykkes gennem XML -elementer. Yderligere er metoderne til håndtering af ejendommene PROPFIND og PROPPATCH .

Server support

  • Apache HTTP -server giver WebDAV -moduler baseret på både davfs og Apache Subversion (svn) .
  • Caddy har et valgfrit WebDAV -modul
  • EGroupware , en Groupware med fuld *DAV -understøttelse: CalDAV , CardDAV og WebDAV til filhåndtering
  • lighttpd har et valgfrit WebDAV -modul
  • Mailfence tilbyder WebDAV -understøttelse via et virtuelt drev+ du kan slutte eksterne drev til Mailfence -dokumenter
  • Nextcloud er en gaffel af ownCloud, og tilbyder derfor også fuld WebDAV -understøttelse
  • Nginx har et meget begrænset valgfrit WebDAV-modul og et tredjepartsmodul
  • ownCloud er en cloud -lagring PHP -applikation, der tilbyder fuld WebDAV -understøttelse
  • SabreDAV er et PHP -program, der kan bruges på Apache eller Nginx i stedet for deres medfølgende moduler
  • Seafile har en valgfri WebDAV -konfiguration
  • Microsoft IIS havde et WebDAV -modul, men det blev afbrudt i juli 2021.

Kundesupport

Dokumenter fremstillet af arbejdsgruppen

WebDAV -arbejdsgruppen producerede flere værker:

  • et kravsdokument: "Krav til en distribueret forfatter- og versioneringsprotokol til World Wide Web" RFC  2291 , udstedt i februar 1998
  • et basisprotokolledokument (undtagen versionering, trods dens titel): "HTTP -udvidelser til webdistribueret redigering og versionering (WebDAV)" RFC  4918 , udstedt juni 2007 (som opdaterer og erstatter "HTTP -udvidelser til distribueret redigering - WebDAV" RFC  2518 , udstedt Februar 1999)
  • den bestilte indsamlingsprotokol: "Web Distributed Authoring and Versioning (WebDAV) Ordered Collections Protocol" RFC  3648 , udstedt december 2003
  • adgangskontrolprotokollen: "Web Distributed Authoring and Versioning (WebDAV) Access Control Protocol" RFC  3744 , udstedt maj 2004
  • en kvotespecifikation: "Quota and Size Properties for Distributed Authoring and Versioning (DAV) Collections" RFC  4331 , udstedt februar 2006
  • en omdirigeringsspecifikation: "Web Distributed Authoring and Versioning (WebDAV) Redirect Reference Resources" RFC  4437 , udstedt marts 2006

Andre dokumenter offentliggjort gennem IETF

  • versioneringsprotokollen: "Versioning Extensions to WebDAV (Web Distributed Authoring and Versioning)" RFC  3253 (oprettet af arbejdsgruppen Delta-V)
  • en specifikation af WebDAV -ejendomsdatatyper: "Datatyper til egenskaber for webdistribueret redigering og versionering (WebDAV)" RFC  4316
  • et dokument, der definerer, hvordan man starter montering af en WebDAV -ressource: "Montering af Web Distributed Authoring and Versioning (WebDAV) -servere" RFC  4709
  • en kalenderadgangsprotokol: "Kalenderudvidelser til WebDAV ( CalDAV )" RFC  4791
  • en forespørgselsprotokol: "Web Distributed Authoring and Versioning (WebDAV) SØG" RFC  5323
  • en udvidelse til WebDAV ACL -specifikationen: "WebDAV Current Principal Extension" RFC  5397
  • en udvidelse til WebDAV MKCOL -metoden: "Extended MKCOL for Web Distributed Authoring and Versioning (WebDAV)" RFC  5689
  • en udvidelse af indsamlingsmodellen, der definerer oprettelse og opdagelse af yderligere bindinger til en ressource: "Binding Extensions to Web Distributed Authoring and Versioning (WebDAV)" RFC  5842
  • en applikation af POST til WebDAV -samlinger: "Brug af POST til at føje medlemmer til Web Distributed Authoring and Versioning (WebDAV) Collections" RFC  5995
  • en udvidelse, der muliggør effektiv synkronisering af store samlinger: "Samlingssynkronisering til webdistribueret redigering og versionering (WebDAV)" RFC  6578

Udvidelser og derivater

Til versionering tilføjer Delta-V-protokollen under arbejdsgruppen Webversionering og konfigurationsstyring ressourcerevisionssporing, offentliggjort i RFC  3253 .

Til søgning og lokalisering fremstillede arbejdsgruppen DAV Searching and Locating (DASL) aldrig nogen officiel standard, selvom der er en række implementeringer af dets sidste udkast. Arbejdet fortsatte som ikke-arbejdsgruppeaktivitet. WebDAV Search -specifikationen forsøger at opfange, hvor arbejdsgruppen slap, og blev offentliggjort som RFC  5323 i november 2008.

Til kalender er CalDAV en protokol, der giver adgang til kalender via WebDAV. CalDAV modeller kalenderhændelser som HTTP -ressourcer i iCalendar -format, og modeller kalendere, der indeholder begivenheder som WebDAV -samlinger.

For groupware er GroupDAV en variant af WebDAV, som gør det muligt for klient/server groupware -systemer at gemme og hente objekter som f.eks. Kalenderelementer og adressebogsposter i stedet for websider.

For MS Exchange -interoperabilitet kan WebDAV bruges til at læse/opdatere/slette elementer i en postkasse eller en offentlig mappe. WebDAV for Exchange er blevet udvidet af Microsoft til at rumme arbejde med beskeddata. Exchange Server version 2000, 2003 og 2007 understøtter WebDAV. WebDAV -support er imidlertid afbrudt i Exchange 2010 til fordel for Exchange Web Services (EWS), en SOAP / XML -baseret API .

Yderligere Windows-specifikke udvidelser

Som en del af Windows Server Protocols (WSPP) dokumentationssæt offentliggjorde Microsoft følgende protokoldokumenter med detaljer om udvidelser til WebDAV:

  • [MS-WDVME]: Web Distributed Authoring and Versioning (WebDAV) Protocol: Microsoft Extensions. Disse udvidelser inkluderer et nyt verbum og nye overskrifter og egenskaber, der muliggør tidligere uoverskuelige filtyper og optimerer protokolinteraktioner for filsystemklienter. Disse udvidelser introducerer ny funktionalitet i WebDAV, optimerer behandlingen og eliminerer behovet for special case-behandling.
  • [MS-WDV]: Web Distributed Authoring and Versioning (WebDAV) Protocol: Client Extensions. Klientudvidelserne i denne specifikation udvider WebDAV -protokollen ved at introducere nye overskrifter, der både muliggør de filtyper, der i øjeblikket ikke er håndterbare, og optimerer protokolinteraktioner for filsystemklienter. Disse udvidelser introducerer ikke ny funktionalitet i WebDAV-protokollen, men optimerer i stedet behandlingen og eliminerer behovet for special case-behandling.
  • [MS-WDVSE]: Web Distributed Authoring and Versioning (WebDAV) Protocol: Server Extensions. Serverudvidelserne i denne specifikation udvider WebDAV ved at introducere nye HTTP -anmodnings- og svarhoveder, der både aktiverer de filtyper, der ikke er håndterbare i øjeblikket, og optimerer protokolinteraktioner for filsystemklienter. Denne specifikation introducerer også en ny WebDAV -metode, der bruges til at sende søgeforespørgsler til forskellige søgeudbydere.
  • [MS-WEBDAVE]: Webdistribueret redigerings- og versioneringsfejludvidelser Protokolspecifikation. Denne SharePoint Front-End-protokol beskriver udvidede fejlkoder og udvidede fejlhåndteringsmekanismer, der er angivet i [MS-WDV], så kompatible servere kan rapportere fejltilstandsoplysninger om et serversvar.

Alternativer til WebDAV

  • File Transfer Protocol (FTP), en enkel og vidt tilpasset netværksprotokol baseret på IP , giver brugerne mulighed for at overføre filer mellem netværksværter. FTPS udvider FTP til sikker trafik.
  • SSH File Transfer Protocol (SFTP), en udvidelse af Secure Shell-protokollen (SSH) version 2.0, giver sikker filoverførselskapacitet; og scp, en form for SFTP, der kører som en enkelt kommando, der ligner en almindelig cp (kopi) kommando i skallen.
  • Rsync , en protokol og en kommando, der ligner scp, der også kan springe over omskrivning af identiske filer og dele af filer eller springe over nyere filer osv.
  • Et distribueret filsystem, f.eks. Server Message Block (SMB) -protokollen giver Microsoft Windows og Samba- klienter med open source adgang til og håndtering af filer og mapper eksternt på en passende filserver . Almindeligt brugt til multimediastreaming over ethernet og understøttes bredt af Smart TV'er .
  • AtomPub , en HTTP-baseret protokol til oprettelse og opdatering af webressourcer, kan bruges til nogle af brugssagerne for WebDAV. Det er baseret på standard HTTP -verber med standardiserede indsamlingsressourcer, der opfører sig lidt som WebDAV -biblioteksmodellen.
  • CMIS , en standard bestående af et sæt webtjenester til deling af oplysninger mellem forskellige indholdsopbevaringssteder, søger at sikre interoperabilitet for mennesker og applikationer, der bruger flere indholdslagre; den har både SOAP - og AtomPub -baserede grænseflader
  • Wiki -software , f.eks. MediaWiki .
  • Linked Data Platform (LDP), en Linked Data-specifikation, der definerer et sæt integrationsmønstre til opbygning af RESTful HTTP-tjenester, der er i stand til at læse-skrive af RDF-data.
  • Objektopbevaring såsom OpenStack Swift eller Amazon S3

Se også

Referencer

eksterne links