class IDomainController(object): """ +----------------------------------------------------------------------+ | TODO: document this interface | | For now, see wsgidav.domain_controller instead | +----------------------------------------------------------------------+ This class is an interface for a domain controller. Implementations in WsgiDAV include:: wsgidav.domain_controller.WsgiDAVDomainController wsgidav.addons.nt_domain_controller.NTDomainController All methods must be implemented. The environ variable here is the WSGI 'environ' dictionary. It is passed to all methods of the domain controller as a means for developers to pass information from previous middleware or server config (if required). Domain Controllers ------------------ The HTTP basic and digest authentication schemes are based on the following concept: Each requested relative URI can be resolved to a realm for authentication, for example: /fac_eng/courses/ee5903/timetable.pdf -> might resolve to realm 'Engineering General' /fac_eng/examsolns/ee5903/thisyearssolns.pdf -> might resolve to realm 'Engineering Lecturers' /med_sci/courses/m500/surgery.htm -> might resolve to realm 'Medical Sciences General' and each realm would have a set of username and password pairs that would allow access to the resource. A domain controller provides this information to the HTTPAuthenticator. """