Sun Desktop Manager 1.0 Administration Guide

Chapter 1 Concepts and Architecture

The Sun Desktop Manager provides a framework to store configuration settings for applications on a network in a central location for users, organizations, and host machines that run the application.

This chapter describes the general architecture and the key concepts of the Desktop Manager.

Scope of the Desktop Manager

The Desktop Manager directly supports the following configuration settings:


Note –

The Desktop Manager only supports applications that use these settings.


By default, only the settings that are relevant to a system administrator can be configured with the Desktop Manager. However, you can use templates that are included with the installation to extend the functionality of the Desktop Manager to include the configuration settings that you want to control. Furthermore, desktop applications that do not use the supported configuration systems can access central configuration data through the legacy data framework.

Architecture

Figure 1–1 High-level architecture

Desktop Manager Architecture

The Desktop Manager contains the following components:

Configuration Repositories

The Desktop Manager stores configuration data in a configuration repository. A configuration repository stores the following three types of configuration data:

Available Configuration Repositories

There are three types of configuration repositories that can be implemented:


Note –

The LDAP Configuration Repository provides the best overall performance. The hybrid repository is best for when you do not have write access to the LDAP directory. The file-based repository is only useful for evaluation purposes.


Management Tools

The management tools provide a web-based graphical user interface and a command-line interface where you can manage the configuration data. The tools only operate on the configuration repository and do not require the agents to run.

If you use an LDAP configuration repository, you can deploy the management tools in a separate system from the one that holds the LDAP service. If you use the file-based repository, the management tools require direct access as well as read/write permissions to the repository for the noaccess user, or the user under which the Java Web Console is executed. That is, the tools must be in the same system as the repository, or the repository must be an NFS mount with read/write access for the tools. The noaccess user runs the Desktop Manager GUI, and must be created when you install the tools.

You can use the management tools to create, delete, modify, assign, and unassign profiles. You cannot use the tools to add, delete, and modify elements in the hierarchy, for example, to add users.

Templates

Desktop Manager uses templates to view, define, and enforce configuration settings in the configuration repository and to render the GUI for displaying these configuration settings. The templates are deployed by the web-based Management tools.

For more information on templates, see the Sun Desktop Manager 1.0 Developer Guide.

Configuration Agent

To access the configuration data from the Desktop Manager, a desktop client requires the Desktop Manager Configuration Agent. The Configuration Agent communicates with the remote configuration data repository and the adapters, as well as integrates data into specific configuration systems. The configuration systems that are currently supported are GConf, Java Preferences, Mozilla Preferences, and StarOffice Registry.

Configuration Adapters

Configuration adapters query the configuration agent for configuration data and provide the data to the applications. The adapters must be installed on every client that you want to manage centrally.

From Configuration Profiles to Application Settings

This section describes how the configuration data is processed to end up with user settings for a specific application running in a specific host.

Configuration Data Sources

Each user application receives configuration data from the following sources:

The application settings for a user on a host are calculated in two steps. The profile configuration tree is constructed, and then the configuration data sources are combined.

Construction of the Profile Configuration Data

The profile configuration data holds the configuration profile for a user application that runs on a specific host.

The organizational units of an organization, along with the users, are stored in the configuration repository hierarchically. The same applies to the domain components.

Configuration profiles are assigned to elements in the hierarchies. Configuration profiles that are assigned to an element are inherited by the children of that element.

The configuration data of an application depends on the user who runs the application and the host where the application runs.

The configuration settings that affect a user depend on the configuration profiles that are assigned to the elements in the path from the user element to the root of the tree. These profiles must be merged together to build the set of configuration settings for the user.

Since it is possible to define profiles based on the host where the application of the user is running, the profiles assigned to the host, or to any of the elements that are in the path from the host to the root of the tree should also be merged together with the configuration profiles that affects the user.

Figure 1–2 Configuration Process

configuration process

The following rules are used to construct the profile configuration:

Configuration Data Source Combination

The configuration data provided by the three different configuration data sources must be combined to produce a single set of settings for the user application to use at runtime.

  1. The configuration data provided by the default configuration provider is read and a configuration tree is constructed.

  2. A profile configuration data is constructed based on the user and host of the client application.

  3. The user settings are read and a configuration tree is constructed.

  4. The three trees are combined into one to get the configuration settings that the application will use. The rules followed in this process are the same that where used to construct the profile configuration data.

The resulting tree will be used by the application adapters to provide the configuration settings.