Changed page "XMLDirectoryService" by wsanc...@apple.com from 17.224.20.215*
Page URL: <http://trac.calendarserver.org/wiki/XMLDirectoryService>
Diff URL: 
<http://trac.calendarserver.org/wiki/XMLDirectoryService?action=diff&version=7>
Revision 7

-------8<------8<------8<------8<------8<------8<------8<------8<--------
Index: XMLDirectoryService
=========================================================================
--- XMLDirectoryService (version: 6)
+++ XMLDirectoryService (version: 7)
@@ -1,85 +1,1 @@
-= XMLDirectoryService =
-
-This [wiki:DirectoryService directory service] is configurable via an XML file 
that contains principal information.
-
-== Configuring the Calendar Server ==
-
-The full name of the implementation class is 
`twistedcaldav.directory.xmlfile.XMLDirectoryService` and the service takes an 
`xmlFile` parameter which contains the name of the XML file to read principal 
information from.
-
-For example:
-
-{{{
-<!--  XML File Directory Service -->
-<key>DirectoryService</key>
-<dict>
-  <key>type</key>
-  <string>twistedcaldav.directory.xmlfile.XMLDirectoryService</string>
-
-  <key>params</key>
-  <dict>
-    <key>xmlFile</key>
-    <string>/etc/caldavd/accounts.xml</string>
-  </dict>
-</dict>
-}}}
-
-The service re-reads the XML file if it's timestamp changes, so edits to the 
XML file should not require a server restart.
-
-== Configuring principals ==
-
-A "principal" is WebDAV terminology for an "identifier" that can be used for 
authentication and access control purposes. Typically it is used to represent 
the users of the system, as well as other types of items needing some 
"presence" on the system.
-
-The principals supported by the XMLDirectoryService are:
-
- * `users`: individual (typically human) users of the system
- * `groups`: a group of other principals (can be a mixture of any of the 
principal types)
- * `locations`: rooms or locations where meetings can be held
- * `resources`: inanimate objects that also need to be part of a meeting 
(e.g., a projector)
-
-Principals are expressed in an XML document.  The root element `accounts` has 
an attribute `realm` which describes the authentication realm.  It contains 
principal elements which, in turn contain elements describing the principal.  
The element itself (`user`, `group`, `location`, `resource`) denotes the "type" 
of the principal.
-
- * `uid`: the login identifier for the principal.
- * `guid`: the unique identifier for the principal - must be unique on this 
server at least.
- * `password`: the principal's password in plain text.
- * `name`: the principal's full name (or description).
- * `members`: contains a list of `uid`s for the principals which are members 
of the principal being defined.  A principal that has members is termed a 
"group principal".  Only principals of type "group" should be configured to 
have members. The `members` element has `member` sub-elements used to specify 
each member. The `member` element has a `type` attribute that defines the 
principal type of the member (one of `users`, `groups`, `locations` and 
`resources`), and the text value inside the `member` element is the 
corresponding `uid` of the principal being referenced. Any type of principal 
may be a member of a group, including other groups. You should avoid creating 
"loops" by having two groups reference each other.
- * `cuaddr`: a calendar user address for the principal.  Calendar user 
addresses must be URIs and must be unique to the principal (ie. the same 
calendar user address may not be used to identify multiple principals).  Note 
that the server will add it's own calendar user address to principals (eg. the 
principal's URI on the server is always a valid calendar user address).  
Multiple `cuaddr` elements may be provided for a principal. The calendar user 
address is the identifier used for sending inviting principals to meetings.
- * `disable-calendar`: when present, this element indicates that the specified 
principal is able to login to the calendar server, but is not setup with a 
calendar and cannot do scheduling. This type of principal is typically used to 
allow access to a shared group calendar without having to setup a "personal" 
calendar account for the user. This element can only be specified on `user` and 
`group` principal types.
- * `auto-schedule`: when present, this element indicates that the server will 
automatically process scheduling messages for the corresponding principal. i.e. 
when a scheduling message arrives, if it does not conflict with an existing 
meeting it will be automatically accepted and "booked" into the principal's 
main calendar, or if it does conflict it will be automatically declined. This 
element can only be defined on `location` and `resource` principal types.
- * `proxies`: this element contains a list of `member` elements that define 
which other principals have read-write proxy/delegate access to the 
corresponding principal's calendar data. 
-
-For example:
-
-{{{
-<?xml version="1.0" encoding="utf-8"?>
-<accounts realm="Test Realm">
-  <user>
-    <uid>admin</uid>
-    <password>admin</password>
-    <name>Super User</name>
-  </user>
-  <user>
-    <uid>test</uid>
-    <password>test</password>
-    <name>Test User</name>
-    <cuaddr>mailto:testu...@example.com</cuaddr>
-  </user>
-  <group>
-    <uid>users</uid>
-    <password>users</password>
-    <name>Users Group</name>
-    <members>
-      <member type="users">test</member>
-    </members>
-  </group>
-  <location>
-    <uid>mercury</uid>
-    <password>mercury</password>
-    <name>Mecury Conference Room, Building 1, 2nd Floor</name>
-    <auto-schedule/>
-    <proxies>
-      <member type="users">test</member>
-    </proxies>
-  </location>
-</accounts>
-}}}
+[[Rst(/CalendarServer/trunk/doc/Admin/DirectoryService-XML.txt)]]

-------8<------8<------8<------8<------8<------8<------8<------8<--------

* The IP shown here might not mean anything if the user or the server is
behind a proxy.

--
CalendarServer </>
HTTP/WebDAV/CalDAV Server

This is an automated message. Someone at / added your email
address to be notified of changes on XMLDirectoryService. If it was not you, 
please
report to .
_______________________________________________
calendarserver-dev mailing list
calendarserver-dev@lists.macosforge.org
http://lists.macosforge.org/mailman/listinfo.cgi/calendarserver-dev

Reply via email to