MultiXTpm Administration Server

Open Source/Free Software

MultiXTpm Adminstration Server is a .NET web application that control and manage running instances of MultiXTpm Application Server. Using MultiXTpm Administration Server, you can perform the following activities:

  • Configure MultiXTpm Application Server runtime environment.
  • Start/Stop/Restart/Suspend processes.
  • Start/Stop/Restart/Suspend groups of processes.
  • Get realtime statistics for specific processes.
  • Get realtime statistics for processes groups.

Configuring MultiXTpm Application Server

MultiXTpm Application Server configuration is stored in an XML text file. When MultiXTpm Application Server starts, it reads this file, and from that file it builds its processes, links, messages and queues tables. Though this file has a well known schema, using a text editor to manipulate this file, is not an easy thing to do.

To help in maintaining this configuration file, and also to be able to modify the configuration while the system is running, MultiXTpm Application Server was added the capability to receive configuration modification commands while running and apply them in real time. This capability enables keeping the system running for long periods without the need to restart it when applying changes. There are some modifications that cannot be applied immediately, and these modifications might require a restart of a specific process or the entire system. The system does not notify the running processes on real time modification because in most cases the applications are written to receive configuration information on startup, and a real time reconfiguration might require the application to handle exceptional conditions. To simplify things, when such changes in the configuration occur, MultiXTpm Application Server will forward the new configuration, the next time a new instance of a process is started or restarted.

Using MultiXTpm Administration Server, a system administrator can perform the following actions:
  1. Add/Delete/Modify Process Class objects with all their attributes.
    • Define free format parameters per process class – Name/Value pairs.
    • Associate Link objects with each process class if needed.
  2. Add/Delete/Modify Link objects that can be associated with process classes.
  3. Add/Delete/Modify Process Group objects that are used for message routing.
  4. Add/Delete/Modify Message objects that dictate the rules for routing messages based on their Message Code.

Controlling MultiXTpm Application Server

Using MultiXTpm Administration Server, an administrator can control the runtime environment of MultiXTpm Application Server instance. Once connected to MultiXTpm Application Server, MultiXTpm Administration Server can query MultiXTpm Application Server for status and statistics of every process that MultiXTpm Application Server controls. Through this status information, the administrator of a system can control each process or group of processes by means of Start/Stop/Suspend/Restart/Resume commands. The administrator can see in real time the status of each process, including its input queue size, the number of concurrent sessions it is handling and the last time it has any activity.


MultiXTpm Administration Server provides a browser based user interface that helps configuring all entities in the MultiXTpm Application Server environment and later forward these configurations/modifications to MultiXTpm Application Server for applying and saving. Using MultiXTpm Administration Server, the administrator of the system need not know the actual schema of the configuration file.
MultiXTpm Administration Server is a standalone web application that provides web based user interface on one side and it interacts with MultiXTpm Application Server instance on the other side. The interaction with MultiXTpm Application Server instance is done through SOAP/XML Web Services interface. This means that MultiXTpm Administration Server can communicate with any MultiXTpm Application Server instance regardless of its location. Both applications can communicate with each other using HTTP or HTTPS. The default configuration of MultiXTpm Application Server defines the interface to be HTTP.

Authentication and Authorization

MultiXTpm Application Server can be configured to receive authenticated connections or anonymous connections. When using authenticated connections, MultiXTpm Application Server supports only HTTP basic clear text authentication, and this is the default configuration of the MultiXTpm Application Server. When using HTTP basic authentication, it is advisable to configure the connection also as HTTPS (SSL) connection, so the clear text password used in HTTP basic authentication is not revealed.

To be able to receive configuration and control commands, MultiXTpm Application Server was added the capability to authenticate the user and to authorize specific users for performing specific tasks. The decision on the authentication and the authorization is dictated by the definition of the “MultiXTpm WS Control Link”. If this link is defined for HTTP basic authentication, or if HTTP authentication is not defined at all, HTTP basic authentication is used and each and every control and configuration action needs not be authenticated and authorized.
When Authentication and Authorization are used, MultiXTpm Application Server performs the following actions for each request it receives:
  1. Authenticate the requesting user to be a valid user in the system where the specific instance is running.
    • Under Microsoft Windows operating system, the user name supplied can be a name in any valid format (domain\user, user@domain, user).
    • Under Linux operating system, MultiXTpm Application Server uses PAM to authenticate the user, so any value that is acceptable by PAM on the specific system, is also acceptable by MultiXTpm Application Server. For this to work the administrator of the system must add an entry to /etc/pam.d or to /etc/pam.conf for the service named “multixtpm”. Without this entry all request to MultiXTpm Application Server will be rejected.
  2. Once authenticated, MultiXTpm Application Server checks a User Permissions file to decide whether the requesting user is authorized to perform the specific action. The User Permissions file contains names, and for each name it specifies whether the name is allowed to perform the action. The treatment to the “UserName” field in the file is handled differently depending on the operating system.
    • Under Microsoft Window operating system, it can be a specific user name or a group name. If it is a group name, MultiXTpm Application Server checks if the requesting user is a member of that group, and if so, the rules for that group apply. For example if the entry specifies “administrators”, any user that is a member of the “administrators” group can perform the actions allowed for “administrators” entry.
    • Under Linux operating system, the name specified is the actual name of an actual user. This means that for every user that needs access to the system, there must be an explicit entry in the User Permissions File.
  3. While searching for the relevant entry in the Users Permissions file, MultiXTpm Application Server uses the most permissive entry. This means that if a user is a member of more than one group, and one of these groups is allowed to perform the action, MultiXTpm Application Server will allow the user to perform the action.
  4. When MultiXTpm Application Server starts, it looks for the User Permissions file as specified in the main configuration file. If it does not find one, it creates a new one with the default name of “UserPermissions.xml” and this file will have two permissive entries for “administrators” and for “root”. This means that with the default configuration, Windows administrators and linux root will have full access to the system.

Download information

MultiXTpm Application Server is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

MultiXTpm Application Server is distributed in source code format and it supports: Windows OS, Linux, Solaris and HP Nonstop Server OSS.

The source code is packed in ZIP file and can be downloaded from SourceForge.net.

To Access the Download Page at SourceForge.net you may click Here
Navigate to http://sourceforge.net/projects/multixtpm

Contact information

For more information, Bug Reports, Feature Requests, and Support Requests, please use:
SourceForge.net tracker
SourceForge.net Project Forums
MultiXTpm group at Yahoo Groups.
you may send an email to: Moshe Shitrit