What's Changed
Fixed
-
CAs page silently dropped CAs beyond the first 20 (#89) —
GET /api/v2/casdefaulted toper_page=20even when no pagination parameters were supplied, so a fresh import of 24 CAs only displayed 20 inCertificate Authorities. The endpoint now returns the full set when no pagination is requested, and continues to honourpage/per_pagewhen explicitly provided. -
API key creation UX & no-expiration support (#90) — three regressions in
Account → API Keys:- Newly issued keys are now shown in a dedicated modal with the full key in a
<code>block, an explicit copy button, and a warning that the key won't be shown again. The previous toast disappeared too quickly and its copy button copied the literal stringundefined. - The list view's per-key "copy" affordance now renders the real key prefix (e.g.
ucm_ak_AbC1) instead ofundefined…. Backed by a newkey_prefixcolumn persisted at creation time. Migration026_add_api_key_prefixadds the column on SQLite and PostgreSQL; legacy keys without a stored prefix render an "unavailable (legacy key)" placeholder. - Leaving the expiration field empty now creates a key that never expires, matching the field's helper text. The backend distinguishes "field absent" (keeps the historical 365-day default for API/CLI compatibility) from explicit
null/0/""(no expiration). Validation rejects negative or non-integer values with HTTP 400.
- Newly issued keys are now shown in a dedicated modal with the full key in a
Installation
Docker (Recommended)
# From Docker Hub
docker pull neyslim/ultimate-ca-manager:2.138
# Or from GitHub Container Registry
docker pull ghcr.io/neyslim/ultimate-ca-manager:2.138
# Run
docker run -d -p 8443:8443 \
-e SECRET_KEY=$(openssl rand -hex 32) \
--name ucm neyslim/ultimate-ca-manager:2.138Debian/Ubuntu
wget https://github.com/NeySlim/ultimate-ca-manager/releases/download/v2.138/ucm_2.138_all.deb
sudo dpkg -i ucm_2.138_all.deb
sudo apt-get install -fFedora/RHEL
wget https://github.com/NeySlim/ultimate-ca-manager/releases/download/v2.138/ucm-2.138-1.fc43.noarch.rpm
sudo dnf install ./ucm-2.138-1.fc43.noarch.rpmSilent/Automated Install
# Skip firewall prompts for CI/automation
sudo UCM_PORT=8443 UCM_FIREWALL=no dpkg -i ucm_2.138_all.debDefault Credentials
- Username:
admin - Password: Check
/etc/ucm/ucm.envafter install, or shown during install
Change the password immediately after first login!