CDM-Server documentation is still a work-in-progress.
Please be sure to review these:
This is the multi-page printable view of this section. Click here to print.
CDM-Server documentation is still a work-in-progress.
Please be sure to review these:
Installation/Maintenance requires an admin familiar with linux.
16 GB
32 GB
or more recommended10 GB
free storage space for application, database, and containerRecommended OS: Ubuntu 20.04
LTS and Ubuntu 24.04
LTS
We do not support Windows at this moment. If you still want to run it on Windows, here’s a guide.
curl
, tar
, nano
(or alternatives)v27.2.0+
with docker-compose-plugin v2.29.7+
1+ gbps
recommendedcurl
, tar
, nano
installed.Make sure Docker Engine (with docker-compose-plugin
) is installed on your system.
See System Requirements for more details.
You may also try alternatives such as Podman.
Go to the directory you want to download CDM-Server in, and run:
curl -s https://get.apis.de/cdm.sh | bash
curl -s https://get.apis.de/cdm.sh | bash -s v1.0.0
If you want to do it manually, you can get the docker-compose file from the following link: https://get.apis.de/cdm/latest.tar.gz
#!/bin/bash
# URL of the tar.gz file
url="https://get.apis.de/cdm/latest.tar.gz"
# Download the tar.gz file
curl -O "$url"
# Extract the tar.gz file
tar -xzvf "latest.tar.gz"
# Optional: Remove the tar.gz file after extraction
rm "latest.tar.gz"
chmod +x download
chmod +x start
chmod +x stop
echo "CDM setup has been downloaded and extracted."
DotEnv
FilesTo use the server, you need to provide some data in the form of two DotEnv
files:
.env
.env.idp
Create new DotEnv
files, copy the contents of the example files, and update the values with your own configuration.
.env
FileExample: .env.example
cp .env.example .env && nano .env
.env.idp
FileExample: IdP (ID Provider) specific DotEnv
files:
.env.idp.azure.example
.env.idp.ldaps.example
.env.idp.local.example
cp .env.idp.local.example .env.idp && nano .env.idp
cp .env.idp.azure.example .env.idp && nano .env.idp
cp .env.idp.ldaps.example .env.idp && nano .env.idp
Use the following command to login and download the CDM-Server images
. You’ll be asked to enter username and password.
sudo ./download
sudo ./start
In case, you need to stop CDM-Server services:
sudo ./stop
Please see Login for more information.
Please set some basic details of the server in the .env
file. You can find the .env.example
file in the root directory of the project.
.env
, .env.idp
files etc. are not accessible to unauthorized users.cp .env.example .env && nano .env
## HELP
# https://get.apis.de/docs/server/env/
## ABOUT
# This will be used to create the root business unit
# Do not use special characters
COMPANY_NAME=
## CDM HOST and PORT
# The hostname to access the server.
# Must not contain protocol such as https://
# Must not have port number
# Must not have trailing slash
# Example: cdm.example.com
CDM_HOST=localhost
# Just the port number; 443 recommended
# Default port is 443
CDM_PORT=443
## USE CUSTOM HTTPS CERTIFICATE FOR CDM-SERVER (PRIVATE-KEY)
# If you have a custom certificate (private-key), set this to true.
# You need to place the custom certificate in the same directory as your `docker-compose.yml` file (where you have downloaded CDM-Server).
# The certificate file name must be `cdm-server.pfx`
# For a false value, a self-signed certificate will be created and used for HTTPS.
# Please check [help docs for more information](https://get.apis.de/docs/server/https/).
# Default is false
USE_CUSTOM_CERT=false
### CUSTOM CERTIFICATE PASSWORD
# If you are using a custom certificate (`USE_CUSTOM_CERT=true`) and your certificate is password-protected, set the password here.
# Otherwise, leave it empty.
CUSTOM_CERT_PASS=
COMPANY_NAME=APIS Informationtechnologien GmbH
CDM_HOST=cdm.apis.de
CDM_PORT=443
USE_CUSTOM_CERT=true
CUSTOM_CERT_PASS=supersecretpassword
This is the name of your company. It will be used to create the root business unit.
See HTTPS for more information.
After you are done setting up .env
, please head over to the IdP Docs to setup .env.idp
file.
DotEnv
FilesIt is recommended that you do not allow other users in same server system to read the DotEnv
files as some of them can contain credentials.
You can try chmod 600
on all of them.
CDM-Server takes the secure-by-design approach and thus enforces HTTPS.
If you set the USE_CUSTOM_CERT
environment variable to true
:
./cdm-server.pfx
where you have downloaded the CDM-Server. Just replace it with your own certificate.CUSTOM_CERT_PASS
environment variable. Otherwise, leave it empty.If the variable is set to false
, the server will generate and use a self-signed certificate. You can find it in
./.data/certs/<CDM_HOST>.cert.p7b
- X.509 certificate (contains the public key) that you can import to your browser../.data/certs/<CDM_HOST>.pfx
- Certificate in PKCS#12
format. It contains private Key that you should not share.Please see Install Self-Signed Certificate for more information.
For this, look into LDAP documentation.
Dashboard
Local
or Ldaps
, enter your username and passwordAzure
, you will be redirected to Azure login page.https://<CDM_HOST>:<CDM_PORT>/web/welcome.html
.https://cdm.example.com:443/web/welcome.html
..env.idp
file.The CDM-Server supports various ID Providers (IdP) for authentication and user management. You need to choose one according to your organization’s requirements and configure it accordingly.
The CDM-Server supports the following ID Providers:
.env.idp
file..env
file, please go to the Setting Up .env File page.This IdP is the default IdP for the CDM-Server. It is used to authenticate users against the local user database. It uses an industry standard hashing algorithm to store passwords securely and authenticate users against the stored hash. All passwords require rotation every 180 days and must be at least 8 characters long. The admin can reset passwords for users if needed.
In the .env.idp
file, the following variables are used to configure the local IdP:
## HELP
# https://get.apis.de/docs/idproviders/local/
## USER MANAGEMENT
# Available options: local, azure, ldaps
ID_PROVIDER=local
### User Management -> LOCAL
# Only required if ID_PROVIDER=local
# We will create one root admin user using credentials below
# You will need to change password after login
## Root User Login
# Example: admin
ROOT_LOGIN=
## Root User Password
# Must be at least 8 characters long.
# Don't use special characters.
ROOT_PASSWORD=
ROOT_LOGIN
and ROOT_PASSWORD
values.ID_PROVIDER=local
ROOT_LOGIN=admin
ROOT_PASSWORD=admin
The CDM Server provides an embedded LDAPS ID-Provider which enables LDAPS connections to e.g. a Company’s LDAP server. The connection(s) to the LDAP are established using a connection pool which needs an LDAP user account to connect.
This LDAP connection account is used for every query from CDM-Server to the configured LDAP independent from the rights of the authenticated user. This means all queries are executed on LDAP with the LDAP permissions of the configured Connection Pool user.
CDM Server only needs the permissions to read users and groups in sub nodes under one parent node which are relevant to be used in CDM Server workflows.
The CDM Servers embedded LDAPS ID-Provider can be used to authenticate users LDAP credentials agains the companies LDAP. LDAP group informations can also be connected to cdm server roles. After this configuration in cdm server setup CDM users automatically are linked to roles matching the users group - role configuration.
Here is a sample .env.idp
file with the ldaps
IdP configured:
## HELP
# https://get.apis.de/docs/idproviders/ldaps/
## User Management
# Available options: local, azure, ldaps
ID_PROVIDER=ldaps
### User Management -> LDAP
# Only required if ID_PROVIDER=ldaps
# LDAPS server host
AUTH_HOST=
## LDAPS server port
# Change it if you are using a different port
AUTH_PORT=636
## The DN of the user to use to query the LDAP server. This user must have read access to the LDAP server.
# Example
AUTH_USER=
## Password for that user
AUTH_PASSWORD=
## User Management -> LDAP -> Internal References
# The full DN of the user in LDAP who is considered admin (This account is needed for server setup)
LDAP_ADMIN_DN=
## The base DN for the LDAP group tree
# Example: "ou=groups,o=apis,dc=apis,dc=de"
LDAP_GROUP_TREE_DN=
## The template for the login name. This is used to construct the full DN of the user to authenticate.
# Must contain {loginName} as a placeholder for the login name.
# Example: "uid={loginName},ou=users,ou=unix,o=apis,c=de,dc=apis,dc=de"
LDAP_LOGIN_TEMPLATE=
## USE CUSTOM HTTPS CERTIFICATE FOR LDAPS (PUBLIC-KEY)
# We always use HTTPS for LDAP.
# If you have a self-signed certificate for your LDAP instance, set this to true.
# You need to place the custom certificate (public key) in the same directory as your `docker-compose.yml` file (where you have downloaded CDM-Server).
# The certificate file name must be `cdm-ldaps.pfx`
# For a false value, we will attempt to validate the LDAP-Server certificate and it will fail for self-signed/expired certificates.
# Default is false
LDAP_CUSTOM_CERT=false
On first CDM Server Start an ID Provider specific configuration for the Admin User has to be setup in the environment of the docker container. Therefor the parameters LDAP_ADMIN_DN and LDAP_Login_TEMPLATE have to be set to a valid LDAP DN (Distinguished Name) and matching Login Template. The LDAP_GROUP_TREE_DN parameter is needed, too.
Environment Parameter | Value |
---|---|
LDAP_ADMIN_DN | uid=admin,ou=users,o=companyname,dc=domainname,dc=country |
LDAP_LOGIN_TEMPLATE | uid={loginName},ou=users,o=companyname,dc=domainname,dc=country |
LDAP_GROUP_TREE_DN | ou=groups,o=companyname,dc=domainname,dc=country |
This guide provides information and instructions for configuring CDM Server to login using Microsoft Azure AD as Identity Provider.
To be able to use Microsofts Azure Entra ID as ID Provider in CDM Server you need to make some configurations in Azure. Therefor you need
Tipp:
CDM Server users from external systems which should be able to access CDM-Server must be member of the same group in azure.
This group gets configured as Login-Group during initial configuration.
This guide provides instructions for creating an Azure Active Directory (Azure AD) application that enables users to log into third-party software using Azure as Identity provider for authentication.
Go to Azure Portal and log in with your Azure credentials. Then you will see a welcome page.
Tipp:
CDM Server uses 2 redirect URLs a login url which gets the response from azure after a login request and a logout url which queries the user to confirm the logout from azure.
Schema:
- https://hostname_or_domain:port/metaapi/login
- https://hostname_or_domain:port/metaapi/logout
Click on App registrations to register a new application which enables secure and controlled access to APIs and services for authentication and authorization in Azure.
Now click on “+ New registration” in the upper left area of page Home > App registrations.
Configure the Application Registration:
Name: Enter a descriptive name for the app e.g. “APIS CDM Server Authentication”.
Supported account types: Choose the account type required by your organization or users, e.g. “Accounts in this organizational directory only (Single tenant)”.
Redirect URL: Under Redirect URI, select Web and enter the LOGIN redirect URI provided by the CDM Server.
Make sure the URI is exact, as mismatched URIs will cause authentication errors.
Click on Register to complete the registration.
After registration, you’ll be directed to the application overview page.
Step 2: Configure Authentication Settings
Open Authentication Settings:
In the left menu, go to Manage -> Authentication.
Add Platform (if not already added):
Under Platform configurations, click “+ Add a platform”. Choose Web.
Enter Redirect URI:
CDM Server uses 2 redirect URLs a login url which gets the response from azure after a login request and a logout url which queries the user to confirm the logout from azure.
Add the missing URL(s)
Make sure the URLs are exact, as mismatched URLs will cause authentication errors.
Enable ID Tokens:
Under Implicit grant and hybrid flows, check Access tokens and ID tokens (used for implicit and hybrid flows). Then click Save.
After saving the application overview page is shown.
Add here the logout URL manually by editing the Web- Redirect URLS and save it.
Open API Permissions: In the left menu, select API permissions.
Click “+ Add a permission”. Select Microsoft Graph and then Delegated permissions. Add the permissions from the table below to allow user information retrieval.
Grant Admin Consent (if required): If prompted, click Grant admin consent for the selected permissions. (This step may require admin privileges.)
API / Permissions name | Type | Description | Admin consent required |
---|---|---|---|
Directory.Read.All | Delegated | Read directory data | Yes |
Delegated | View users’ email address | No | |
Group.Read.All | Delegated | Read all groups | Yes |
GroupMember.Read.All | Delegated | Read group memberships | Yes |
openid | Delegated | Sign users in | No |
profile | Delegated | View users’ basic profile | No |
User.Read | Delegated | Sign in and read user profile | No |
Open Certificates & Secrets: In the left menu, select Certificates & secrets.
Click “+ New Client Secret”.
Provide a description for the secret (e.g., “ClientSecret for ThirdPartyApp”).
Set the expiration period as required by your organization’s policies.
Click Add.
Save the Client Secret Value:
Once created, a value will be shown. Copy this value immediately, as it will be hidden later. This secret will be used in the CDM Server configuration.
Description | Expires | Value | Secret ID |
---|---|---|---|
test_secret | 01.01.2030 | 3Tv8Q~3g~Od8NA3C1q3… | 8887149b-753f-4e0c-814e-113c… |
Value and secret will be used in the CDM Server configuration and have to be noted outside of azure since value is only visible after creation, later its hidden!
Using the above information from Azure AD, configure the CDM-Server Environment variables.
Environment Variable | Description | Example value |
---|---|---|
AZURE_TENANT_ID | The Directory (Tenant) ID | 353xxxxx-x4x2-xx1x-2x3a-77xxxxxxxxf4 |
AZURE_CLIENT_ID | ID of the application | 532xxxxx-xxxx-xxxx-xxx2-93xxxxxxxxd7 |
AZURE_CLIENT_NAME | Name of the application | APIS CDM Server Authentication |
AZURE_SCOPE | Read users | User.read |
AZURE_ADMIN_UUID | AzureUser.id | zd1xxxxx-xxxx-xxxx-xxx4-6xxxxxxxxxd1 |
In the CDM Server, open the Welcome Page and click on Dashboard to initialize the Authentication Flow.
You should be redirected to Azure AD for login. Log in using the credentials of the configured admin user!
After a successful login, you’ll be redirected back to the third-party software. Confirm that the authentication and authorization are working as expected.
Periodically review and renew the client secret before expiration.
Adjust permissions or application settings in Azure AD if required by the third-party software or organizational policies.
Caution:
If your user is not the declared admin user in the environment setup, authentication will fail!
Open the public CDM Server Welcome Page in browser and click on Dashboard to start Azure authentication.
In the popup window enter your azure credentials to login.
If you are the admin user and configuration is completely valid you will get logged in to the CDM Server and the Admin Dashboard is shown.
On the left side in the Navigation Azure should be selected, if not click on it.
On the right side in Azure configuration you have to enter the azure group id which contains all users which should be able to log in to CDM-Server.
After you entered the group, validate it by clicking the button “Validate”.
If validation failed you get a red message popup that group can not be validated. In this case the group for the id you entered does not exist.If validation succedded the button gets green and you can Save and finalize the configuration.
- Click on Save to save the config
- Click on finalize to lock the config
- You get automatically logged out
Congratulations!
After succedding all of this steps the Azure Users which are in the configured group can log in to the CDM Server!
Local
or Ldaps
for now, you will have to clear all data and start fresh when you want to switch to Azure
.Here is a sample .env.idp
file with the azure
IdP configured:
## HELP
# https://get.apis.de/docs/idproviders/azure/
## User Management
# Available options: local, azure, ldaps
ID_PROVIDER=azure
## User Management -> AZURE
# Only required if ID_PROVIDER=azure
CLIENT_ID=
CLIENT_SECRET=
AZURE_CLIENT_ID=
AZURE_CLIENT_NAME=
AZURE_TENANT_ID=
Please enter the Server URL
which must include:
https://
at start:XYZ
the port number at the endServer Settings
entry is not available or there is no possibility to
enter a Server URL
for the CDM-Server please enable Application components | CDM-Server
, confirm with OK
button and reopen the Workstation Settings
dialog.Click on the Check Connection Settings
button to verify the connection. You should see the following message box.
If the CDM-Server has been setup using a self-signed certificate, you will see the following error if the certificate is not installed on your system.
The administrator can install it using group-policy or you can install it manually. Please see Install Self-Signed Certificate for more information.
After starting the IQ-Software you have to login to the CDM-Server when
performing your first command related to the CDM server (e.g. opening the
Administration | CDM Administration
). IQ-Software automatically prompts you
for your credentials. Depending on the configured ID Provider
on your CDM-Server the login procedure varies:
Please enter the your username and your password as set up by your CDM administrator.
Please enter your LDAPS username and password.
When closing the IQ-Software your login session on the CDM-Server is automatically terminated.
Should you need to log out and log in with a different user while using the
IQ-Software, please use the File | Logout
and File | Login
menu commands in
the Administration | CDM Administration
window.
The CDM Server manages your IQ-Software data in seperate Projects. Each Project is stored on the CDM-Server in a Business Unit. These Business Units can be nested (one inside another) so that you can create tree-like structures similar to folders and subfolders within a regular file system.
The first step to working with the CDM-Server is to upload an existing project from one of your .fme files:
File | Upload Project to the CDM-Server...
Note that you can only upload a project if the file contains exactly one project. If this is not the case please reorganize the data in the file in this respect.
Alternatively, you can create a new project via context menu directly in the CDM Administration (see below).
Once there are projects available on the CDM-Server, you can open a project in
the IQ-Software as easy as opening an .fme file:
Choose File | Open CDM-Server...
(alternatively you can also use Administration | CDM Administration
).
This opens the CDM Administration view, showing you the available Business Units and their projects:
Selecting a Business Unit (1) shows you the contained Projects. When you select a Project (2), the contained structures are shown (3).
You can open a Project via the context menu or by double clicking it.
Options | Close CDM Administration when opening a project
the CDM Administration is closed automatically after opening a Project.In the CDM Administration (File | Open CDM-Server...
or
Administration | CDM Administration
) you can also do the following things
apart from opening a Project:
File | Login...
or File | Logout
Points 1 to 3 are available from the context menu (right-click).
The LDAP Attribute Mapping page allows you to configure how user’s attributes from an external LDAP connection will be translated to the CDM-Server’s internal representation. In the first section you will be able to set a group dn, which will determine the users available in the system. Afterwards you can configure the individual mapping between attributes in the next section. Finally you will be able to save, review and finalize the configuration.
The first time you login (and after that as long as you have not finalized the mapping) to a freshly configured instance with an LDAP ID-Provider as the admin user, you will be automatically redirected to the LDAP Attribute Mapping Configuration page.
The next action should be to configure the group dn. Therefore navigate to the text field and enter a previously copied (to prevent typing errors) group dn into this field. Next you should validate it by clicking on the validate button.
The following results are possible:
The goal of this section is to configure a mapping between CDM and LDAP attributes, so that the CDM-Server will have a proper translation between those.
It contains a table with two columns, the CDM attributes on the left side and the LDAP attributes on the right.
On the left upper side next to the table, you can choose the type of your LDAP installation (Unix or Microsoft) depending on the type of OS on the LDAP host machine, which is used to apply a preconfigured mapping. If you do not wish for this automatism, you can choose Manual instead.
For each attribute on the left you have the following options to procede on the right:
Enter the name of an LDAP attribute: After typing in the name of an LDAP attribute you wish to map, please validate it directly afterwards. If it is valid, you will find additional information by clicking on the information icon to the right of the text field. If it is not valid, please adjust the entered name and validate again.
Enter nothing: If you enter nothing, the attribute will not be mapped.
All attributes except those marked with a star (*) are optional, you can finish the mapping without those.
After you have finished the mapping, you have the possibility to save the mapping and finalize the configuration. To do so, you may click on Finalize, which will present you a side by side comparison of your chosen mapping. Please review it carefully, because it can not be changed after you finalize the configuration.
If you wish to modify the mapping again, before you have finalized the configuration, you are free to do so. Please note, as long as you do not finalize the configuration, no user except the admin will be able to login.
The Business Units & Projects Management section allows you to organize and manage your Business Units structure and Projects. This section provides hierarchical representation of the relationships between business units and projects, and allows for easy navigation and updates.
Hierarchical Structure: The business units and projects are displayed in a tree-like format, making it easy to visualize their relationships. Business units can contain other business units and projects, helping you clearly organize your company’s structure.
Search Functionality: At the top of this section, you will find a search input that allows you to quickly locate a specific business unit or project by name.
You can manage both Business Units and Projects using a context menu that appears when you right-click on an item. Here are the available actions:
New Business Unit: Create a new business unit within the selected unit.
New Project: Create a new project within the selected business unit.
Update Business Unit: Modify the name of the selected business unit.
Delete Business Unit: Remove the selected business unit from the hierarchy.
Update Project: Modify the name of the selected project.
Delete Project: Remove the selected project from the hierarchy.
Each Business Unit and Project has a Name field, which can be defined in multiple languages. When adding or editing a name, you will see a language selector on the right side of the input field. Use this selector to specify the language for the name, allowing for multilingual support throughout your structure.
The hierarchical representation of business units and projects can be easily reorganized using drag-and-drop functionality. You can drag both business units and projects to different positions within the hierarchy to adjust the structure as needed. This makes it simple to adapt to changes in your company’s organization.
The Groups Management Interface provides administrators with the tools to organize users into groups, a fundamental component of the Role-Based Access Control (RBAC) inside the CDM-Server.
This page allows you to create, view, update, and delete groups within the system, ensuring flexible and secure user management.
There are three types of groups available on the Groups Management page:
Once a Group has been selected, in the right panel of the Groups Management page, administrators can assign or remove users from normal groups to adjust access as needed:
The Roles Management Interface allows administrators to define and organize roles within the CDM-Server.
On this page, you can create, view, and delete roles as needed, though roles cannot be updated once created. After creating roles, you can assign or remove groups to manage which users have specific access rights.
Once a role has been selected, in the right panel of the Roles Management page, administrators can assign or remove groups as needed:
The Users Management Interface provides the capability to create, view, and manage user accounts.
This view provides a centralized interface to view and manage user profiles along with simplified user creation with optional system-generated passwords, workflows for password resets and forced password changes.
(This option is available only when Local is selected as the Id-Provider)
Locate the user in the table and click the Edit (pencil icon) to open the Edit User form. Update user details as necessary.
(This option is available only when Local is selected as the Id-Provider)
When a password reset is initiated for a user, a Temporary Password is generated and displayed in a pop-up. The administrator can copy this password and share it with the user.
Temporary Password Validity Temporary passwords are valid for a limited period (e.g., 2 days). If the password expires, a new reset must be initiated by the administrator.
When a user logs in using the temporary password, the system redirects the user to the Change Password dialog. The user must enter the current password (the temporary password). A new password must be set and confirmed before access is granted. Once the password is changed, the temporary password becomes invalid, and the user gains access to the system.
Users have the ability to manage their passwords directly
From the user menu in the header, select Change Password. In the Change Password dialog, enter the current password. Set and confirm a new password. Click Continue to complete the password update.
(This option is available only for LDAP and Azure as Id-Provider)
Registering an external user in the system is a crucial task that enables the CDM-Server to effectively manage and track users. Rather than duplicating user data, the server creates a reference entry in the database, allowing seamless integration of the external user into RBAC and other essential processes. This approach ensures that external users are fully enabled within the system without redundant data storage, maintaining efficient and streamlined access management.
The IQ & CDM Users Map section enables you to link IQ Persons (referred to as candidates) with CDM users.
To begin, select a project containing unapproved candidates. Only projects with unapproved candidates will be available in the project selection dialog. A candidate is considered approved once they are mapped/linked to a CDM user. Selecting a project will lock it to prevent simultaneous modifications by other users. If another user has locked the project, you will not be able to select it until they release the lock.
Once a project is selected, the left-side list will display IQ Persons (candidates) pending a match. Use the additional filter at the top of the list to refine your list as needed. Candidates are displayed with their Name, First Name, and E-mail by default. To reveal more details, click the button next to the “UNAPPROVED CANDIDATES” title. Changes to the displayed attributes are saved automatically and will be applied the next time you use the tool.
In the next step, you can search for CDM users by applying search criteria, then clicking “Search”. Users appear with their Login and First Name by default, but additional details can be displayed by clicking the button next to the “USERS” title. These display settings are saved for future sessions.
If the required CDM user does not exist, you can create a new user by selecting the “New User” option. This option is available only if you are using local as the IdProvider on the CDM Server and you have admin privileges.
To match a candidate with a user, select at least one candidate from the left list and exactly one user from the right list. This enables the " » " button, allowing you to move candidates to the user.
NOTE: This won’t perform any definitive change.
After mapping candidates to users, review the changes before applying them. Each candidate (IQ Person) can be mapped ONLY ONCE; this is a permanent action and cannot be undone. If you are ready to proceed, click the confirmation button to finalize the mappings.
Once a candidate is mapped, they are considered approved and will be removed from the candidate list. If no candidates remain, the project selector will clear, and the project lock will automatically be released.
Click “Reset” to clear your progress, including any selected project, releasing the lock on the project and clearing all changes made in the current session.
The Settings page allows all users to customize system preferences, including language settings and user interface layout. Changes made on this page are applied upon saving, and the page will automatically reload to reflect the updates.
The General tab in the Settings page allows users to adjust their system-wide preferences, including language options and UI layout.
The Users tab on the Settings page allows users to configure how attributes are displayed in the Users Management interface.
Attribute Order The Attributes Order section lets users reorder the fields displayed in the Users table, such as Title, Name, Login, Department, Email, Phone, and more. To reorder attributes:
The Role-Based Access Control (RBAC) section enables efficient management of user permissions across your organization by assigning users to groups with predefined roles.
As illustrated, Groups act as an intermediary layer between Roles and Users, streamlining the integration of local or external users from sources like LDAP and Azure.
By using groups, you can efficiently manage access for local and/or external users by assigning roles at the group level, reducing the need for individual permission management and ensuring seamless integration with external authentication systems.
Users are classified into two categories based on the given rights at the specified level in the organization’s tree:
The Users Management is the essential first step in defining and organizing access permissions, as all subsequent groups, roles and permissions rely on the accurate setup of user accounts.
Regardless of the chosen ID Provider, configuring users in the User Management section establishes the essential foundation for RBAC (Role-Based Access Control), enabling robust, secure, and scalable access control across the system.
By establishing users first, the organization can easily assign them to groups and later link these groups to roles as needed, creating a scalable, manageable RBAC hierarchy.
For detailed guidance on managing users, visit the Users page.
The Groups Management is a central component in the system’s Role-Based Access Control (RBAC) in the CDM-Server. It enables administrators to create, edit, view, and delete Groups—the critical link between users and roles. By assigning users to groups, and then associating those groups with roles, you can efficiently manage permissions across the organization without needing to configure each user individually.
Groups act as a bridge between users and roles. By defining permissions at the group level, administrators can simplify access control, making it easier to manage permissions for multiple users at once.
For detailed guidance on managing groups, visit the Groups page.
The Roles Management section is the final and essential piece of the Role-Based Access Control (RBAC) in the CDM-Server.
Roles define specific permissions within the system, determining what actions can be taken and what resources can be accessed by groups and their members. Roles are the end-point in the RBAC hierarchy, serving as the permission layer that applies to users indirectly through their assigned groups.
In the CDM-Server there are 3 predefined Role Template which already have specific permissions:
For detailed guidance on managing roles, visit the Roles page.
Stop server and copy the .db
and .data
directory to a safe location. You might need sudo
rights for this.
In the .logs
directory, you can find all the logs generated by the server.
There are also some logs generated by OCI containers. You can find them in the /var/lib/docker/containers
(or equivalent if you are using something else) directory.
For database, 10x
10mb
files are retained. For application, 10x
100mb
files are retained.
Windows Store
, Search for Ubuntu
(by Canonical Group Limited) and Install itUbuntu
from START and follow the instructions to set up your user inside WSL Ubuntucd ~ && mkdir cdm && cd cdm
~/cdm
directoryCDM_HOST
should resolve to the server’s IP addressWe provide the SBOM in OWASP’s CycloneDX v1.6
format which has been officially ratified as an Ecma International standard.
You can find the SBOM for CDM-Server here:
v1.0.0
: View SBOMFirst, you receive the certificate from the administrator. Then, you can install it using the following steps:
At the moment, we only support .pfx
file for custom certificates. If you have a different format, you can convert it to .pfx
using the following command:
openssl pkcs12 -export -out cdm-server.pfx -inkey example.key -in example.cer -certfile fullchain.cer
Where: