Deploying User Data Store

This chapter explains how to deploy User Data Store.

Downloading User Data Store

You can download the latest user-data-store.war from the User Data Store releases page.

Configuring User Data Store

Configuration parameter user-data-store.db.master.encryption.key is a master DB encryption key to derive server private keys for the encryption of sensitive data in the database. It is an Advanced Encryption Standard (AES) key and recommended length is 256 bits. An empty value means no encryption, which is not recommended.

You can generate the encryption key using following OpenSSL command:

openssl rand -base64 32

In case you do not set the user-data-store.db.master.encryption.key value, all data in the database will be stored unencrypted.

Setting Up REST Service Credentials

The RESTful interface is secured using Basic HTTP Authentication.

The credentials are stored in the uds_users table. There are two roles, that you may assign to the user in the table uds_authorities:

  • ROLE_READ
  • ROLE_WRITE

You can hash the user password using following command:

echo -n "password" | openssl dgst -sha256 -r

To insert users and set up roles, you can use following SQL commands:

INSERT INTO uds_users (username, password, enabled) VALUES ('admin', '5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8', true);
INSERT INTO public.uds_authorities (username, authority) VALUES ('admin', 'ROLE_READ');
INSERT INTO public.uds_authorities (username, authority) VALUES ('admin', 'ROLE_WRITE');

Deploying User Data Store

Right now, the only standalone war is supported running from console using the java -jar command. The deployed application is accessible on http://localhost:8080/user-data-store/.

Supported Java Runtime Versions

The following Java runtime versions are supported:

  • Java 21 (LTS release)
  • Java 17 (LTS release)

The User Data Store may run on other Java versions, however we do not perform extensive testing with non-LTS releases.

Last updated on Jul 15, 2024 (13:13) Edit on Github Send Feedback
Search

develop

User Data Store