Document Management with OpenKM

Document management

Document management

Document management is an immensely complex task for organisations, where several people work on multiple documents, each of which probably has more than one version. How long can one depend on memory for file locations, names, and the changes made? OpenKM is an open source tool that lets you manage your documents online. You can version your documents, manage users, share select documents with select users, and much more.

You can download the latest OpenKM build as a zip file from the official website. It bundles the JBoss server required for OpenKM to run, so you don’t need to set up a separate Web server. Make sure you have JDK 1.6 or above installed on your system, since the JBoss server needs it. Once downloaded and extracted, start it and then run the (Linux) script in the bin folder, in a terminal window. Any errors or warnings are visible in this terminal window.  With the JBoss server started, you can access OpenKM at http://localhost:8080/OpenKM/.

By default, JBoss only listens for connections on localhost. To make it available to other computers on the network, run with the parameter -b Access OpenKM from another PC on the network by replacing “localhost” with the IP address of the “server” in the URL.

Profiles and users

The default login ID and password are “okmAdmin” and “admin” respectively. This takes you to the home page, from where you can now upload files to share them. However, that is not much use without other users. Since you’re logged in as an admin, you can first create profiles to fine-tune the tabs and buttons that are visible to different users (and then create users).

Click the Administration tab at the upper right corner of the page; now click the Profile icon (in the middle of the buttons on the administration page, Figure 1).

The OpenKM administration tab
Figure 1: The OpenKM administration tab

Here you can see the available profiles and add new ones. Depending on your requirements, you can create a new profile with only certain tabs and buttons visible, and just select that profile for new users, to ensure those users have restricted access to the system, as per your needs.

Now, let’s create users. Click the Users button (next to the Profile button). This takes you to the User List (Figure 2).

The User List under the administration tab
Figure 2: The User List under the administration tab

Click the Add Users button, fill out the form for User Details, selecting the appropriate profile for the user. You can also set roles for each user; logical grouping of users makes privilege management easier. Roles can be added on the Roles page (Figure 3), which is accessible from the User page.
The Role list under the administration tab
Figure 3: The Role list under the administration tab

Using OpenKM

Now we come to the core functionality, which is knowledge management. You can upload documents in folders and share them with the users you want to, using the access-management mechanism discussed above.

OpenKM also has a privilege-control mechanism for all documents; you can fine-tune the privileges each user has for a document. Just select the document, and go to the Security tab in the lower half of the page, where you can view privileges that users/roles have for this document, and change them. Once users have access to a document, they can subscribe to it, and will get a notification whenever the document is changed.

The Privileges list under the security tab
Figure 4: The Privileges list under the security tab

OpenKM also provides version management of documents. Users can check out documents before changes, so that there is no confusion with someone else updating it simultaneously. Once an updated document is checked in, the new version is available to all. You can also lock a document so that no one else can modify it; this gives you better control of important documents.

Other features

We’ve discussed the basic features of OpenKM, but it has a lot more to offer. OpenKM integrates knowledge management with workflow, mails, and chat too. Along with the work-flow management, you can add a process flow to the documents or folders. Actions like user input, i.e., decisions based on the input, can also be added to the workflow.

The OpenKM workflow mechanism is based on JBoss jBPM, an extensible framework for process languages. The work-flow definition has to be made in XML. You can create the definition in JBoss and then deploy it with OpenKM. The steps to deploy the workflow are listed here.

I hope this introduction to OpenKM gives you some insight into it, so that you can reap the benefits of this tool. Feedback and comments are most welcome.

Links and references

Feature imahe courtesy: Adam Rifkin. Scaled and reused under the terms of CC-BY 2.0 License.


  1. Document management service is the capture, storage and retrieval of documents. Documents come in the form of both paper and electronic. It is a time and money saving process. Just a short note to thank you. I enjoyed your article.

  2. openKM can use in LAN connection only?? because i make project about openKM and i think a little bit risk in make online(universal)…

  3. I heard about document management systems from OpenKM and read a lot of information. But I prefer to use DMS from Intechcore ( because in addition to all the advantages, they provide high security qualities and data recovery. I work with a lot of documents so this is really important point for me.


Please enter your comment!
Please enter your name here