CUDB LDAP Schema Management Graphical User Interface

Contents

1Introduction
1.1Document Purpose and Scope
1.2Revision Information
1.3Typographic Conventions

2

Running the Application

3

Window Management
3.1Main Window
3.2Project View
3.3Editor View
3.3.1Schema Editor
3.3.1.1Overview Tab
3.3.1.2Source Code Tab
3.3.2Attribute Editor
3.3.2.1Overview Tab
3.3.2.2Source Code Tab
3.3.3Object Class Editor
3.3.3.1Overview Tab
3.3.3.2Source Code Tab
3.4Log View

4

Managing Projects
4.1Creating a Project
4.2Deleting a Project

5

Managing Schemas
5.1Creating an Empty Schema
5.2Importing an Existing Schema
5.3Commenting Schemas
5.4Renaming a Schema
5.5Deleting a Schema

6

Managing Attributes
6.1Creating an Attribute
6.2Modifying an Attribute
6.3Moving an Attribute
6.4Deleting an Attribute

7

Managing Object Classes
7.1Creating an Object Class
7.2Modifying an Object Class
7.3Moving an Object Class
7.4Deleting an Object Class

Glossary

Reference List

1   Introduction

This document describes the Graphical User Interface (GUI) of the CUDB LDAP Schema Management tool.

1.1   Document Purpose and Scope

The CUDB LDAP Schema Management GUI is a graphical application that allows editing the Lightweight Directory Access Protocol (LDAP) schema files. The document describes how to work with projects and schemas, and how to edit schemas within a project.

The screenshots contained in this user guide may show different font sizes or font types, depending on the graphical libraries used to run the tool.

1.2   Revision Information

Rev. A This document is based on 1/1553-CNH 160 6161/9 and contains editorial changes only.

1.3   Typographic Conventions

Typographic conventions can be found in the following document:

2   Running the Application

The Schema Management GUI must be installed to an external device running Linux, not on the System Controllers (SC) of the CUDB nodes. Run the application with the following command:

<DIR_TOOLS>/schemaMgmt/schemaMgmt

In the above command, <DIR_TOOLS> is the Schema Management Tool installation directory

Note:  
The execution directory of the above command is also the workspace directory of the Schema Management GUI. To ensure workspace persistency, execute the command from a non-temporary directory.

The schemaMgmt command supports the following command options:

USAGE
schemaMgmt : starts the application with log level INFO
schemaMgmt -l|--logLevel [ALL, DEBUG, INFO, WARN, ERROR] : starts the application with the log level specified
schemaMgmt -h|--help : shows this help

3   Window Management

This section describes the main components of the Schema Management GUI.

3.1   Main Window

The Schema Management interface consists of three main components as shown below in Figure 1. Click on a colored area for a description of the respective view.

Figure 1   Schema Management GUI views.

The three major window areas are as follows:

These views can be minimized or maximized with the two icons in the upper right corner of each view.

3.2   Project View

The Project View is the main entry point of the graphical interface. It provides contextual menus for creating and deleting schemas within a project, and creating and deleting object classes and attributes within a schema.

The Project View displays the information about the projects and schemas in an hierarchical way. Projects are the main containers for schemas. Therefore, schemas can only exist in the context of a project. All data within a schema (that is, objects and attributes) are visible to all schemas in the project. This means that attributes defined in one schema can be used in other schemas as well.

Note:  
Although the Schema Management GUI allows the existence of cross-references between the schemas, these are not allowed in OpenLDAP, where the schema load order defines the allowed dependencies.

For more information about the projects, see Section 4.

3.3   Editor View

Editors provide the actual graphical interface for modifying specific data. As a general rule, data is not actually modified until saved.

The view contains three different editors:

All editors are shown in a new tab in the Editor View when they are opened.

3.3.1   Schema Editor

The Schema Editor provides information about the object classes and attributes in a schema, and also shows the comments contained in the schema file. These comments have certain limitations: see Section 5.3 for more information.

The Schema Editor consists of the Overview Tab (see Section 3.3.1.1) and the Source Code Tab (see Section 3.3.1.2).

3.3.1.1   Overview Tab

The Overview Tab is shown in Figure 2. This tab provides three panes that are used to show the schema comments, and the names and OIDs of the object classes and attributes in the schema. The object classes and attributes listed in the tab can be edited by double-clicking on them, which opens the corresponding editor.

New object classes and attributes can be added by clicking on the and buttons respectively, while existing object classes and attributes can be deleted by clicking on the or buttons, respectively. Attribute and object class lists can be sorted by name or OID by clicking on the column title of each table.

Figure 2   Schema Editor - Overview Tab

3.3.1.2   Source Code Tab

The Source Code Tab is shown in Figure 3. This tab shows the schema information as it is stored in the schema file, using highlighted syntax. The code shown in the Source Code Tab is not editable.

Figure 3   Schema Editor - Source Code Tab

3.3.2   Attribute Editor

The Attribute Editor provides information about a particular attribute of a schema, and allows the modification of the attribute properties.

The Attribute Editor consists of the Overview Tab (see Section 3.3.2.1) and the Source Code Tab (see Section 3.3.2.2).

3.3.2.1   Overview Tab

The Overview Tab is shown in Figure 4.

Figure 4   Attribute Editor - Overview Tab

The Overview Tab shows detailed information about the selected attribute, and consists of the following two sections:

3.3.2.2   Source Code Tab

The Source Code Tab is shown in Figure 5.

Figure 5   Attribute Editor - Source Code Tab

The Source Code Tab shows the source code of the attribute as it is stored in the schema file. The code is not editable in this window. When the attribute is edited in the Overview Tab, the new information appears automatically in the Source Code Tab, even if the attribute has not been saved yet.

3.3.3   Object Class Editor

The Object Class Editor provides information about a particular object class in a schema, and allows modifying the object class properties.

The Object Class Editor consists of the Overview Tab (see Section 3.3.3.1) and the Source Code Tab (see Section 3.3.3.2).

3.3.3.1   Overview Tab

The Overview Tab is shown on Figure 6.

Figure 6   Object Class Editor - Overview Tab

The Overview Tab shows detailed information about the selected object class, and consists of the following three sections:

3.3.3.2   Source Code Tab

The Source Code Tab is shown on Figure 7.

Figure 7   Object Class Editor - Source Code Tab

The Source Code Tab shows the source code of the object class as it appears in the schema file. The code is not editable in this window. When the object class is edited in the Overview Tab, the new information appears automatically in the Source Code Tab, even if the object class has not been saved yet.

3.4   Log View

The Log View (shown in Figure 8 below) provides information about the progress of the operations performed in the Schema Management GUI. The Log View shows messages only with severity equal or above the defined log level (see Section 2 for more information).

Figure 8   Log View

The Log View displays the following information about every event:

The icons in the upper right side of the Log View window allow performing the following actions (from left to right):

Use the Search textbox at the top of the log message list to search for specific messages in the log list. When something is typed in the textbox, the messages containing the typed text are listed.

Log messages can also be hidden: to do so, right-click on the header of the columns, and uncheck the log levels, messages, or dates to hide.

4   Managing Projects

Projects are the main elements of the Schema Management GUI. The Project View shows all projects contained in the workspace, but only one project can be opened at a time.

4.1   Creating a Project

To create a new project, right-click on the Project View, and select the New > Project command from the shortcut menu. Alternatively, select the same command from the application menu. After that, a wizard window is shown as seen in Figure 9 below.

Figure 9   New Project Wizard

The wizard allows to specify the project name and location. By default, the new project is stored in a folder named workspace, located in the launching directory of the Schema Management GUI. After clicking the Finish button, a new folder is created in the specified location, and the project is shown in the Project View as an open project. Only one project can be opened at a time, so other projects and the editors open for them will be closed.

4.2   Deleting a Project

Perform one of the following steps to delete an existing project:

Right-click on it in the Project View, and select the Delete command from the shortcut menu.
Select the project to delete in the Project View, then select the Edit > Delete command from the application menu.
Select the project to delete in the Project View, then click on the Delete button of the toolbar.

If any of the above steps is performed, a pop-up window appears as shown in Figure 10, asking to confirm the operation.

Note:  
Once the project is deleted, it cannot be recovered. If a project is deleted, the project folder and all related schema files are also deleted from the file system.

Figure 10   Confirmation of Deleting a Project

5   Managing Schemas

A schema is an LDAP schema file defining a list of attributes and object classes. The Schema Editor allows to create new schemas, or to import existing schema files.

5.1   Creating an Empty Schema

To create a new schema, open the project where the schema will be created.

Perform one of the below procedures to create a new empty schema:

Right-click on the Project View, and select the New > Schema option from the shortcut menu.
Click on the File > New > Schema option from the application menu.
Click on the New Schema button on the toolbar.

Once one of the above actions is performed, the New Schema Wizard is launched, as shown on Figure 11.

Figure 11   New Schema Wizard

5.2   Importing an Existing Schema

Perform one of the below procedures to import an existing schema:

Right-click on the Project View, and select the Import Schema option from the shortcut menu.
Select the File > Import Schema option from the application menu.

Once one of the above actions is performed, the Schema Import Wizard is launched, as shown on Figure 12.

Figure 12   Schema Import Wizard

The wizard allows to select a schema file from the file system and to change the name of the selected schema in the project. The wizard also shows the name of the project that will contain the new schema.

5.3   Commenting Schemas

In a schema file, comments are lines starting with a number sign (#). Comment lines can be modified in the Overview Tab of the Schema Editor. The Schema Management Tool can only manage comments that are located on the top of schema files, before any non-comment line is found (either blank lines, or lines containing actual schema definition information), as shown in Figure 13.

Figure 13   Comments in the Schema File

Note:  
If a schema file is imported to a project, and it is modified, all comments contained in the file will be lost, except the comments located at the beginning of the file before the actual schema definition content.

The schema shown in Figure 13 is loaded into the Schema Editor as shown in Figure 14:

Figure 14   Schema File Loaded into Schema Editor

Due to the comment removal logic described at the beginning of this section, the comments at line 5, 10, 11 and 12 in Figure 13 are lost after the file is loaded into the Schema Editor. This is because these comments are preceded by empty non-commented lines, and actual schema definition information.

When the comments of a schema are modified, an asterisk appears at the beginning of the schema name as shown in Figure 15. The asterisk indicates that the schema contains unsaved changes.

Figure 15   Schema Containing Unsaved Changes

5.4   Renaming a Schema

To rename a schema, perform one of the below procedures:

Right-click on the specific schema in the Project View, then select the Rename option from the shortcut menu.
Select the specific schema in the Project View, and select the Edit > Rename option from the application menu.

Once one of the above actions is performed, the pop-up window shown in Figure 16 appears, asking for the new schema name.

Figure 16   Rename Schema Window

5.5   Deleting a Schema

Perform one of the below procedures to delete an existing schema:

Right-clicking on the selected schema in the Project View, then select the Delete option from the shortcut menu.
Select the schema in the Project View, then select the Edit > Delete option from the application menu.
Select the schema in the Project View, then click on the Delete button of the toolbar.

Once one of the above actions is performed, the schema file is deleted from the system. In case the schema to delete contains any attributes and object classes used in other schemas of the project, inconsistencies can occur: the GUI indicates this with a pop-up window shown in Figure 17. The window lists all attributes and object classes that are used in other schemas of the same project, and that depend on the data in the schema to be deleted.

Figure 17   Potential Inconsistencies of Deleting a Schema

6   Managing Attributes

This section describes how to manage attributes in a schema.

6.1   Creating an Attribute

Perform one of the below procedures to create a new attribute in a schema:

Right-click on a schema in the Project View, then select the New > Attribute option from the shortcut menu.
Select a schema in the Project View by clicking on it, then click on the button on the toolbar (as shown in Figure 18).

Figure 18   A+ Button in the Toolbar

Select a schema in the Project View by clicking on it, then select the File > New > Attribute command from the application menu.
Click on the button located on the top of the Attribute list in the Schema Editor (as shown in Figure 19).

Figure 19   A+ button in an Schema Editor

Once one of the above actions is performed, the New Attribute Wizard opens, where the new attribute can be created in two steps. In Step 1 (shown in Figure 20), the basic information of the attribute must be added. This includes the following:

Figure 20   Create New Attribute Wizard, Step 1

Step 2 of the wizard (shown in Figure 21) is used to introduce the matching rules of the new attribute.

Figure 21   Create New Attribute Wizard, Step 2

Once all the information of the new attribute is filled in, click on the Finish button. After that an Attribute Editor window opens (see Section 3.3.2), showing the properties of the new attribute. The new attribute is also added to the Project View. When a new attribute is created, the schema file is automatically updated: therefore, it is not necessary to save the schema after creating an attribute.

6.2   Modifying an Attribute

The properties of an attribute can be modified through the corresponding sections of the Overview Tab in the Attribute Editor (see Figure 4). The properties available for modification are as follows:

The window can also be used to modify the Matching Rules (Equality / Ordering / Substring) by selecting the desired rule from the drop down list, or by directly writing a valid OID to the textbox on the right. If the typed OID is not valid, the window will display an error. If a new OID is introduced, it must be unique within the project.

6.3   Moving an Attribute

Use the Move option to move an attribute from its current schema to another schema within the project. When clicking on the option, a pop-up window appears (shown in Figure 22), allowing to select the new schema where the attribute will be moved to.

Figure 22   Move Attribute Dialog

6.4   Deleting an Attribute

Perform one of the below procedures to delete an attribute in a schema:

Right-click on the selected attribute in the Project View, then select the Delete option from the shortcut menu.
Select the affected attribute in the Project View by clicking on it, then select the Edit > Delete command from the application menu.
Select the affected attribute in the Project View by clicking on it, then click on the Delete button of the toolbar.
Select the desired attribute in the Attribute List of the Schema Editor, then click on the button.

If the attribute to delete is used in other schemas of the project, the project can end up in an inconsistent state. To avoid this situation, a warning pop-up window appears listing the attributes and object classes used in others schemas of the same project.

Once one of the above actions is performed, the attribute is deleted. In case the attribute to delete is used in other schemas of the project, inconsistencies can occur: the GUI indicates this with a pop-up window shown in Figure 23. The window lists all attributes and object classes that are used in other schemas of the same project, and that depend on the attribute to be deleted.

Figure 23   Potential Inconsistencies of Deleting an Attribute

7   Managing Object Classes

This section describes how to manage object classes with the Schema Management GUI.

7.1   Creating an Object Class

Perform one of the below procedures to create a new object class:

Right-click on a schema in the Project View, then select the New > Object Class command from the shortcut menu.
Select a schema in the Project View by clicking on it, then click on the button on the toolbar (see Figure 24).

Figure 24   O+ Button in the Toolbar

Select a schema in the Project View by clicking on it, then select the File > New > Object Class command from the application menu.
Click on the button located on top of the object class list in the Schema Editor (see Figure 25).

Figure 25   O+ Button in the Schema Editor

Once one of the above actions is performed, the New Object Class Wizard opens, where the new object class can be created in two steps. In Step 1 (shown in Figure 26) the basic information of the object class must be added. This includes the following:

Figure 26   New Object Class Wizard, Step 1

In Step 2 of the wizard, mandatory and optional attributes can be defined. Use the Add buttons to open the list of possible attributes, and add them to the list of mandatory and optional attributes.

Figure 27   New Object Class Wizard, Step 2

Once all the information of the new object class is added, click on the Finish button. This opens the Object Class Editor showing the new object class (see Section 3.3.3 for more information). The new object class is also included in the Project View. When a new object class is created, the schema file is automatically updated, so it is not necessary to save the schema after creating an object class.

7.2   Modifying an Object Class

The properties of an object class can be modified through the corresponding sections of the Overview Tab in the Object Class Editor (see Figure 6). The properties available for modification are as follows:

The window can also be used to configure the mandatory and optional attributes of the object class in separate textboxes as follows:

7.3   Moving an Object Class

An object class can be moved from its current schema to another schema within the project with the Move option. When clicking on the Move button, a pop-up window appears (shown in Figure 28), allowing to select the new schema where the object class will be moved to.

Figure 28   Move Object Class Window

7.4   Deleting an Object Class

Perform one of the below procedures to delete an object class from a schema:

Right-click on the specific object class in the Project View, then select the Delete command from the shortcut menu.
Click on the specific object class in the Project View, then select the Edit > Delete command from the application menu.
Click on the specific object class in the Project View, then click on the Delete button of the toolbar.
Select the specific object class in the object class list of the Schema Editor, then click on the button.

Once one of the above actions is performed, the object class is deleted. In case the attribute to delete is used in other schemas of the project, inconsistencies can occur. To avoid this situation a warning pop-up window appears listing all the object classes used in other schemas of the same project.


Glossary

For the terms, definitions, acronyms and abbreviations used in this document, refer to CUDB Glossary of Terms and Acronyms, Reference [1].


Reference List

CUDB Documents
[1] CUDB Glossary of Terms and Acronyms.


Copyright

© Ericsson AB, 2016. All rights reserved. No part of this document may be reproduced in any form without the written permission of the copyright owner.

Disclaimer

The contents of this document are subject to revision without notice due to continued progress in methodology, design and manufacturing. Ericsson shall have no liability for any error or damage of any kind resulting from the use of this document.

Trademark List
All trademarks mentioned herein are the property of their respective owners. These are shown in the document Trademark Information.

    CUDB LDAP Schema Management Graphical User Interface