Provided by: calendarserver_7.0+dfsg-2_i386 bug


     calendarserver_manage_principals — Calendar Server principal management


     calendarserver_manage_principals [--config file] [--verbose]
                                      [--read-property property]
                                      [--list-principals type]
                                      [--search search-string]
                                      [--list-write-proxies] [--list-proxies]
                                      [--add-read-proxy principal]
                                      [--add-write-proxy principal]
                                      [--remove-proxy principal]
                                      [--set-auto-schedule-mode none|accept-always|decline-always|accept-if-free|decline-if-busy|automatic]
                                      [--set-auto-accept-group group]
                                      [--add locations|resources full-name
                                       [record-name] [GUID]] [--remove]
                                      principal [principal ...]


     calendarserver_manage_principals is a tool for accessing and manipulating
     information regarding principals on a Calendar Server.  Principals
     represent any form of actor that can access the server, such as users,
     groups, locations and resources.

     calendarserver_manage_principals should be run as a user with the same
     privileges as the Calendar Server itself, as it needs to read and write
     data that belongs to the server.  calendarserver_manage_principals takes
     a list of principals as arguments and then performs the requested actions
     on each of the given principals.

     A principal may be specified as the principal's GUID. Alternatively, it
     may be specified in the form recordType:shortName, where recordType is a
     directory record type (eg.  users, groups, locations, resources) and
     shortName is the principal's short name.

     Actions to perform are specified via the options below.  Multiple actions
     may be given, and will be performed in the order given on each principal


     -h, --help
           Displays usage information

     -v, --verbose
           Displays debugging information

     -f, --config FILE
           Use the Calendar Server configuration specified in the given file.
           Defaults to /etc/caldavd/caldavd.plist.


     --read-property property
           Read the given WebDAV property on the principal resource.  property
           must be a fully qualified XML element name in the form
           {namespace}name, for example: {DAV:}displayname.

           List all of the known principals types.

     --list-principals type
           List all of the principals of the given type.

     --search search-string
           Search for principals whose name or email address contains the
           search string.

           List the read proxies.

           List the write proxies.

           List all proxies.

     --add-read-proxy principal
           Add the given principal as a read proxy.

     --add-write-proxy principal
           Add the given principal as a write proxy.

     --remove-proxy principal
           Remove the given principal as a proxy.

     --set-auto-schedule true|false
           Enable or disable automatic scheduling.

           Get the automatic scheduling state.

     --set-auto-accept-group group
           The principal will auto-accept any invites from any member of the
           group (as long as there are no conflicts).

           Get the currently assigned auto-accept group for the principal.

     --add locations|resources full-name [record-name] [GUID]
           Add a new location or resource. Record name and GUID are optional.
           If GUID is not specified, one will be generated.  If record name is
           not specified, the record name will be set to the GUID.


     Add Alice and Bob as read proxies for Joe and display the list of Joe's

           calendarserver_manage_principals --add-read-proxy users:alice
           --add-read-proxy users:bob --list-proxies users:joe

     Add a group of room admins as write proxy for a couple of rooms:

           calendarserver_manage_principals --add-write-proxy groups:room-
           admins locations:bigroom locations:littleroom

     Turn on auto-scheduling for a resource, and confirm the setting:

           calendarserver_manage_principals --set-auto-schedule true --get-
           auto-schedule resources:projector

     Search for all principals named Joe:

           calendarserver_manage_principals --search joe

     Add a location:

           calendarserver_manage_principals --add locations 'Example Office'

     Add a resource:

           calendarserver_manage_principals --add resources 'Example
           Projector' proj1

     List all resource:

           calendarserver_manage_principals --list-principals resources

     Remove a resource:

           calendarserver_manage_principals --remove resources:proj1


           The Calendar Server configuration file.