End users connect to Calendar Server from client machines using a Web graphical user interface (GUI), Sun Java System Communications Express. Users must have a unique entry in the LDAP directory. Each user can have one or more calendars and can belong to one or more groups.
Administrators, with the proper permissions, can add, delete or modify user LDAP entries, or resource LDAP entries, using the Delegated Administrator Utility (command-line) or Console (GUI).
For documentation on the Delegated Administrator Utility (commadmin), see Sun Java System Communications Services 6 2005Q4 Delegated Administrator Guide.
For documentation on the Delegated Administrator Console, see the Console's online help.
In addition, when necessary, you can use ldapmodify to modify LDAP entries directly. For information about ldapmodify, refer to the Sun ONE Directory Server Resource Kit 5.2 Tools Reference.
Utility programs used in pre-Java Enterprise System deployments, such as csuser, are still bundled with Calendar Server. If you are using Access Manager in your deployment, do not use these utilities for managing or creating user, domain or resource LDAP entries. There are some exceptions. Where these apply, this guide will direct you to the proper utility.
This section describes the following aspects of user and user calendar administration:
Calendar Server users are created either manually or automatically:
Manually — If the Directory Server is configured for Schema 2, an administrator can add users to the directory server using Delegated Administrator and then create the users’ default calendars using the Calendar Server cscal utility.
If the Directory Server is configured for Schema 1, create both the user and the calendar at the same time using the Calendar Server csuser utility.
Automatically (autoprovisioning) — If autoprovisioning is configured and if the user already exists in the LDAP directory, then the first time that user logs in. Calendar Server automatically creates a default calendar.
In non-hosted domain mode, Calendar Server creates the calendar ID (calid) of the default calendar from the user ID. For example, if John Doe has a user ID of jdoe, his default calendar calid would be jdoe.
In hosted domain mode, the calid is a combination of the user ID and the user’s domain. For example, if John Doe is in domain example.com, and his user ID is jdoe, then his calid in a hosted domain environment is email@example.com.
For autoprovisioning to occur, the following criteria must be met:
The local.autoprovision parameter must be set to “yes” (which is the default) in the ics.conf file.
In hosted (virtual) domain mode, the domain must be calendar enabled. A domain is calendar enabled if its LDAP entry contains the icsCalendarDomain object class.
For example, suppose tchang exists in the directory server but is not yet enabled for calendaring (that is, does not have a default calendar). When tchang logs into Calendar Server for the first time, Calendar Server automatically enables tchang for calendaring and creates a default calendar with the calid tchang.
Calendar Server requires a directory server such Sun Java System Directory Server to authenticate users (and to store user preferences). However, to allow access for users defined in a non-LDAP directory server, Calendar Server includes the Calendar Server API (CSAPI), which you can use to write a plug-in to access a non-LDAP directory. For information about CSAPI, refer to the Sun Java System Calendar Server 6 2005Q4 Developer’s Guide.
Calendar Server allows users to customize their views of calendar data by setting user preferences attributes, which are stored in the directory server. User preferences (as opposed to Calendar Server configuration parameters) refer to the user interface representation of calendar data and include items such as user name, email address, and preferred colors to use when rendering calendar views.
For a list of preferences, refer to the get_userprefs and set_userprefs WCAP commands in the Sun Java System Calendar Server 6 2005Q4 Developer’s Guide.
A calendar group is a named list of individual subscribed calendars. Group calendars allow multiple calendars to be combined into a single calendar for viewing. A user creates the groups using the Communications Express graphical user interface.
For example, a user can have a calendar group consisting of a private calendar, department calendar, and company holidays calendar. Users can also use a calendar group to select a list of calendars and view them side-by-side or invite the calendar owners to an event.
These groups are not to be confused with LDAP groups. Groups created in the user interface are stored in the user’s LDAP entry in icsSet attributes. Therefore, other users can’t see them when searching for attendees in LDAP.
For more information about Calendar Server users, see Chapter 14, Administering Users and Resources.
A resource is anything that can be scheduled using a calendar, such as a conference room, or a projector. There is a separate resource LDAP entry for each such item. Create the LDAP entry and its associated calendar using the appropriate tools:
For Schema 2 - Use Delegated Administrator to create the resource LDAP entry, and the Calendar Server utility resource to create the calendar.
For Schema 1 - Use the csresource create command which creates both the resource LDAP entry and the calendar.