Class Sabre_DAV_Auth_Plugin

Description

This plugin provides Authentication for a WebDAV server.

It relies on a Backend object, which provides user information.

Additionally, it provides support for: * {DAV:}current-user-principal property from RFC5397 * {DAV:}principal-collection-set property from RFC3744

  • author: Evert Pot (http://www.rooftopsolutions.nl/)
  • copyright: Copyright (C) 2007-2010 Rooftop Solutions. All rights reserved.
  • license: Modified BSD License

Located in /sources_custom/Sabre/DAV/Auth/Plugin.php (line 18)

Sabre_DAV_ServerPlugin
   |
   --Sabre_DAV_Auth_Plugin
Method Summary
void __construct (Sabre_DAV_Auth_Backend_Abstract $authBackend, string $realm)
void afterGetProperties ( $href,  &$properties)
bool beforeMethod (string $method,  $uri)
void expandProperties (array $path,  $requestedProperties, array $depth)
void expandPropertyReport (DOMElement $dom)
void initialize (Sabre_DAV_Server $server)
array parseExpandPropertyReportRequest (DOMElement $node)
bool|null report (string $reportName, DOMNode $dom)
Methods
Constructor __construct (line 48)

__construct

  • access: public
void __construct (Sabre_DAV_Auth_Backend_Abstract $authBackend, string $realm)
afterGetProperties (line 78)

This method intercepts calls to PROPFIND and similar lookups

This is done to inject the current-user-principal if this is requested.

  • todo: support for 'unauthenticated'
  • access: public
void afterGetProperties ( $href,  &$properties)
  • $href
  • &$properties
beforeMethod (line 108)

This method is called before any HTTP method and forces users to be authenticated

  • throws: Sabre_DAV_Exception_NotAuthenticated
  • access: public
bool beforeMethod (string $method,  $uri)
  • string $method
  • $uri
expandProperties (line 238)

This method expands all the properties and returns a list with property values

  • access: protected
void expandProperties (array $path,  $requestedProperties, array $depth)
  • array $path
  • array $requestedProperties: the list of required properties
  • array $depth
expandPropertyReport (line 158)

The expand-property report is defined in RFC3253 section 3-8.

This report is very similar to a standard PROPFIND. The difference is that it has the additional ability to look at properties containing a {DAV:}href element, follow that property and grab additional elements there.

Other rfc's, such as ACL rely on this report, so it made sense to put it in this plugin.

  • access: protected
void expandPropertyReport (DOMElement $dom)
  • DOMElement $dom
initialize (line 61)

Initializes the plugin. This function is automatically called by the server

  • access: public
void initialize (Sabre_DAV_Server $server)

Redefinition of:
Sabre_DAV_ServerPlugin::initialize()
This initializes the plugin.
parseExpandPropertyReportRequest (line 201)

This method is used by expandPropertyReport to parse out the entire HTTP request.

  • access: protected
array parseExpandPropertyReportRequest (DOMElement $node)
  • DOMElement $node
parsePrincipalPropertySearchReportRequest (line 386)
  • access: protected
void parsePrincipalPropertySearchReportRequest ( $dom)
  • $dom
principalPropertySearchReport (line 334)
  • access: protected
void principalPropertySearchReport ( $dom)
  • $dom
principalSearchPropertySetReport (line 268)
  • access: protected
void principalSearchPropertySetReport ( $dom)
  • DOMDocument $dom
report (line 121)

This functions handles REPORT requests

  • access: public
bool|null report (string $reportName, DOMNode $dom)
  • string $reportName
  • DOMNode $dom

Inherited Methods

Inherited From Sabre_DAV_ServerPlugin

Sabre_DAV_ServerPlugin::getFeatures()
Sabre_DAV_ServerPlugin::getHTTPMethods()
Sabre_DAV_ServerPlugin::initialize()

Documentation generated on Sun, 02 Jan 2011 23:22:17 +0000 by phpDocumentor 1.4.3