Release Notes
Version 3.3.1
Bugfixes
- [CAR-4364] Verbindung zu Luna HSM nicht möglich
-
Bei Verwendung des Generic HSM-Moduls in Kombination mit einem Luna HSM, das per PKCS#11 angebunden wird, kam es unter bestimmten Umständen zu Problemen bei der Verbindung zum HSM. Das Problem bestand seit CARA Version 3.2.0. Es wurde behoben.
Version 3.3.0
Neue Features
- [CAR-4349] Unterstützung des PQC-Algorithmus ML-DSA für GenericHSM
-
Das GenericHSM-Modul unterstützt nun den PQC-Algorithmus ML-DSA. Voraussetzung für die Verwendung des Algorithmus ist die Unterstützung durch das angebundene HSM.
Bugfixes
- [CAR-4343] OIDC-Benutzer können nicht angelegt werden unter MariaDB
-
Nach dem Hibernate-Update im Rahmen der Spring Boot 3-Migration war es unter MariaDB 10.7+ nicht mehr möglich, neue OIDC-Benutzer anzulegen. Das Problem wurde behoben.
Ab dieser CARA-Version unterstützt CARA offiziell MariaDB 11.4. Entwicklung und Tests erfolgen nun unter dieser Version.
Version 3.2.0
Neben einer Reihe neuer Features beinhaltet diese Version eine Migration auf Spring Boot 3, einschließlich der Aktualisierung der wichtigsten Frameworks und Bibliotheken. Darüber hinaus wurden Qualitätsverbesserungen umgesetzt und Fehler behoben. Die wichtigsten davon sind im Folgenden aufgeführt.
Neue Features
- [CAR-4274] Unterstützung von PQC-Algorithmen für OCSP-Response-Signaturen
-
Bei Verwendung des OCSP-Responder-Moduls können nun auch PQC-Algorithmen zur Signierung von OCSP-Responses verwendet werden. Im Admin-Frontend stehen dabei nur noch Signaturalgorithmen zur Auswahl, die mit dem Schlüssel des gewählten CA-Zertifikats bzw. des gewählten EE-Signers kompatibel sind.
- [CAR-4299] Unterstützung von RSA-OAEP in SCEP für Generic HSM
-
Für die Entschlüsselung von SCEP-Nachrichten wird RSA mit OAEP-Padding nun auch für Schlüssel unterstützt, die sich auf einem Generic HSM-Device befinden. Bisher konnte in diesem Fall nur PKCS#1-Padding für die Entschlüsselung verwendet werden. Voraussetzung ist eine Unterstützung des Verfahrens durch das jeweilige HSM.
- [CAR-4060] Unterstützung des Luna Enhanced Cryptoki User Model im Generic HSM
-
Bei Verwendung des Generic HSM-Moduls in Kombination mit einem Luna HSM wird nun das Enhanced Cryptoki User Model unterstützt. Es erlaubt eine Rollentrennung zwischen Crypto Officer (CO) und Crypto User (CU). Die jeweilige Benutzerrolle muss bei der Anmeldung am HSM über das CARA Admin-Frontend ausgewählt werden. Die Änderungen betreffen die Luna HSM-Anbindung per Java-API und per PKCS#11.
Hinweise:
-
Da es bei Verwendung der Luna Java-API keine Möglichkeit gibt, auszulesen, ob die Rollentrennung für das HSM aktiviert ist, wird die Auswahloption für die Benutzerrolle in diesem Fall immer angezeigt. Wenn keine Rollentrennung verwendet wird, muss dann stets die Crypto Officer-Rolle gewählt werden.
-
Aus technischen Gründen werden eventuell gespeicherte HSM-Sitzungen bei der Update-Installation gelöscht. Daher ist eine einmalige Neuanmeldung der HSM-Benutzer im Admin-Frontend erforderlich. Dies gilt für alle Generic HSM-Devices.
- [CAR-4303] Keycloak-Client-Authentifizierung an der CARA-WS-API
-
Keycloak-Clients können sich nun auch an der CARA-WS-API sowie der Admin-API authentifizieren. In CARA muss dazu eine passende Applikation existieren, deren App-ID der Keycloak-Client-ID entspricht und die eine Applikationsrolle mit den für den Aufruf benötigten Rechten besitzt. Ähnlich wie für OIDC User ist auch eine automatische Synchronisation für Keycloak-Clients als Applikationen möglich.
Verbesserungen
- [CAR-4325], [CAR-4326] Verbessertes Error-Handling bei der Login-Wiederherstellung im Generic HSM
-
In speziellen Fehlersituationen beim Wiederherstellen einer HSM-Verbindung konnte es vorkommen, dass eine kryptische Fehlermeldung erschien oder der Verbindungszustand nicht korrekt angezeigt wurde. Dies wurde behoben.
CARA Admin-Frontend
- cara-admin-ui#824 Verbesserung der EE-/RA-Zertifikatssuche nach Status
-
Die Suche nach EE- und RA-Zertifikaten nach Status wurde erweitert. Es gibt nun getrennte Suchfelder für den Request-Status und den Zertifikats-Status. Es ist damit zum Beispiel möglich, explizit nach noch aktiven Zertifikaten (nicht gesperrt und nicht abgelaufen) zu suchen.
- cara-admin-ui#853 Suche von EE-/RA-Zertifikaten nach Issuer
-
Die Suchkriterien für die Suche nach EE- und RA-Zertifikaten wurden um den Zertifikats-Issuer erweitert. Es ist damit möglich, alle Zertifikate eines bestimmten Issuers anzuzeigen.
- cara-admin-ui#856 Zertifikats-Templates können nach Art gefiltert werden (OIDC/RA)
-
Die erweiterte Suche nach Zertifikats-Templates bietet nun auch eine Möglichkeit zur Filterung nach Templates vom Typ "RA" bzw. "OIDC".
- cara-admin#866 Keycloak-Client-ID und Keycloak-Realm sind konfigurierbar
-
Es ist für das CARA Admin-Frontend nun möglich, die Client-ID des Keycloak-Clients zu konfigurieren. Zudem wird der Keycloak-Realm-Name jetzt aus der Basis-URL des Keycloak-Realms gelesen. Vorher war der Realm-Name auf
mtg-ersfestgesetzt.
Bugfixes
- [CAR-4072] Aktualisierung der EE-Signer-Zuordnung für OCSP-Response-EE-Signer nicht möglich
-
Bei Verwendung des OCSP-Responder-Moduls war es beim Bearbeiten von OCSP-Response-EE-Signern nicht möglich, einem bestehenden OCSP-Response-EE-Signer einen neuen EE-Signer zuzuordnen. Stattdessen musste der vorhandene OCSP-Response-EE-Signer gelöscht und ein neuer angelegt werden. Das Problem wurde behoben.
- [CAR-4017] Wiederkehrende PSQLException bei Verwendung von PostgreSQL
-
Bei Verwendung von PostgreSQL als Datenbank-System kam es im Log des CARA-Servers zu einer Häufung von PSQLExceptions. Ursache war ein Fehler im Transaction Handling. Der Fehler wurde behoben.
CARA Admin-Frontend
- [CAR-4312] Fehlermeldung im CARA Admin-Frontend bei fehlender Utimaco-Bibliothek
-
Wenn keine Utimaco-Bibliothek vorhanden war, wurde auf der Status-Seite im Admin-Frontend ein Fehler angezeigt. Da es sich dabei nicht um einen Fehlerfall handelt, kommt es nun nicht mehr zu einer Exception.
- cara-admin-ui#867 Probleme mit Passwort-Sicherungsschlüsseln im Generic HSM
-
Wenn die Master-Passphrase beim Erstellen eines Passwort-Sicherungsschlüssels nicht gespeichert wurde, war es nicht möglich sie zum Speichern von Passwörtern für die Login-Wiederherstellung zu verwenden. Dieses Problem wurde behoben. Ferner ist es nun auch wieder möglich, einen neuen Passwort-Sicherungsschlüssel anzulegen, wenn schon einer existiert. Dabei wird der vorhandene Schlüssel überschrieben.
Aufgaben
- [CAR-3808] Migration zu Spring Boot 3
-
CARA verwendet nun Spring Boot 3. Im Rahmen der Migration wurden zahlreiche Bibliotheken aktualisiert, in der Regel auf die von Spring Boot vorgesehene Version.
Wichtiger Hinweis: Bedingt durch die Migration müssen einige Änderungen an den Konfigurationsparametern des Cara-Servers vorgenommen werden. Sie sind im Dokument [CARA3_Migrationshandbuch] beschrieben.
[CAR-4309], [CAR-4315] SECURITY: Diverse Library Updates
- [CAR-4084] Aktualisierung der vom Generic HSM-Modul unterstützten Luna-Client-Library
-
Die vom Generic HSM-Modul unterstützte Luna-Client-Version wurde auf 10.5 angehoben. Ältere Versionen des Luna-Clients werden nicht mehr unterstützt.
Version 3.1.0
Im Folgenden sind die wichtigsten Neuerungen dieser Version aufgeführt. Zusätzlich wurden weitere Qualitätsverbesserungen umgesetzt und Bibliotheken aktualisiert.
Neue Features
- [CAR-4206] Unterstützung des Algorithmus Composite ML-DSA für Software-Schlüssel, Unterstützung von hybriden Zertifikaten (EXPERIMENTELL)
-
Der CARA Software-Schlüsselgenerator unterstützt nun den hybriden Algorithmus Composite ML-DSA. Dabei handelt es sich um eine Kombination aus dem PQC-Algorithmus ML-DSA und einem klassischen Algorithmus wie zum Beispiel RSA oder ECDSA. Damit is es erstmals möglich, auch hybride Zertifikate (im Speziellen: Composite-Zertifikate) in CARA zu generieren.
Wichtiger Hinweis: Für den Moment handelt es sich hierbei um ein experimentelles Feature. Die Implementierung basiert auf Version 15 des Internet-Drafts draft-ietf-lamps-pq-composite-sigs-15. Das Feature wird nach Erscheinen des offiziellen RFCs finalisiert. - [CAR-4207] Prüfung der Schlüsselverwendung für PQC-Schlüssel
-
Standardmäßig überprüft CARA nun auch für ML-DSA, Composite ML-DSA und SLH-DSA-Schlüssel, ob die festgelegte Kombination an Key-Usage-Bits zulässig ist. Die Grundlage dafür bilden RFC 9881 und RFC 9909. Die Prüfung kann über das
skipOptionalX509certificateChecks-Flag im CARA-Server deaktiviert werden.
CARA Admin-Frontend
- cara-admin-ui#846 Unterstützung eines speziellen nextUpdate-Datums bei Sperrlisten
-
Einige CA-Policies verlangen bei der Außerbetriebnahme einer CA die Veröffentlichung einer Sperrliste (CRL) mit dem speziellen nextUpdate-Wert "9999-12-31 23:59:59Z". Die Funktion zur manuellen CRL-Erstellung wurde um eine zusätzliche Checkbox erweitert, mit der dieses spezielle nextUpdate-Datum gesetzt werden kann. Die Erstellung weiterer CRLs wird durch diese Einstellung nicht automatisch unterbunden und muss organisatorisch sichergestellt werden (etwa durch das Löschen bestehender CRL-Jobs sowie durch die Vernichtung des CRL-Signaturschlüssels).
Verbesserungen
- [CAR-4252] Admin API-Spezifikation ist nicht mehr verfügbar
-
Die API-Spezifikation der Admin-API ist nun nicht mehr abrufbar und nicht mehr Teil der Swagger UI.
Wichtiger Hinweis: Die Admin-API ist nur für die Nutzung durch das Admin-Frontend vorgesehen. Es handelt sich nicht um eine offene, für Kunden dokumentierte und zur Anwendungsentwicklung vorgesehene API.
CARA Admin-Frontend
- cara-admin-ui#814 Komfortablere Suche nach Zertifikats-Templates
-
Die Suche nach Zertifikats-Templates liefert nun auch Echtzeit-Ergebnisse während der Eingabe des Suchbegriffs und funktioniert damit analog zu den anderen Suchen. Die Optionen für die Suche in der Beschreibung der Zertifikats-Templates und die Suche nach fehlerhaften Zertifikats-Templates wurde in die erweiterte Suche verschoben.
- cara-admin-ui#831 Filterung der Verwendungszwecke bei der Suche nach EE-Zertifikaten
-
Bei der Suche nach EE-Zertifikaten sind die verfügbaren Verwendungszwecke nun abhängig von der ausgewählten Virtual CA.
Bugfixes
- [CAR-4255] HashSLH-DSA bei der Schlüsselgenerierung
-
Der CARA Software-Schlüsselgenerator unterstützte bisher nur die Generierung von SLH-DSA-Schlüsseln, nicht jedoch von HashSLH-DSA-Schlüsseln. Wenn ein SLH-DSA-Schlüssel verwendet werden soll, um Pre-Hash-Signaturen zu generieren, muss dies bereits bei der Schlüsselgenerierung festgelegt werden. HashSLH-DSA-Schlüssel werden durch eine andere OID identifiziert als "Pure SLH-DSA"-Schlüssel. Ein "Pure SLH-DSA"-Schlüssel darf nicht zur Generierung von Pre-Hash-Signaturen verwendet werden, während ein HashSLH-DSA-Schlüssel nicht zur Generierung von "Pure"-Signaturen verwendet werden darf. Dies wird nun von CARA sichergestellt.
Die Schlüsselgenerierung von SLH-DSA-Schlüsseln wurde im Rahmen dieses Bugfixes grundlegend überarbeitet. Im CARA Admin-Frontend muss bei der Generierung von SLH-DSA-Schlüsseln jetzt keine Kombination von Security Level, Performance Variante und Hashfunktion mehr ausgewählt werden. Stattdessen existiert eine Auswahlmöglichkeit für den vollständigen Parametersatz (Algorithmus-Variante), z. B.SLH-DSA-SHA2-256f. - [CAR-4263] Anlegen von Template-Signer mit PQC-Schlüssel nicht möglich
-
Beim Anlegen eines neuen Template-Signers überprüft CARA, ob der Signer-Schlüssel zum im Template konfigurierten Signaturalgorithmus passt. Bei der Überprüfung wurden PQC-Algorithmen bisher nicht berücksichtigt, sodass das Anlegen eines Template-Signers mit PQC-Schlüssel nicht möglich war. Dies wurde behoben.
- [CAR-4222] Erreichbarkeit der CARA-WS-OpenAPI-Spezifikation nicht abschaltbar
-
Um zu bewirken, dass die OpenAPI-Spezifikation der CARA-WS-API inklusive Swagger UI nicht abrufbar ist, konnte bisher das Property
api.documentation.publicauffalsegesetzt werden. Nach einer Library-Umstellung war dieses Property wirkungslos. In dieser Version wurde die Unterstützung für dieses Property entfernt. Stattdessen können die Springdoc-Standard-Propertiesspringdoc.api-docs.enabledundspringdoc.swagger-ui.enabledverwendet werden, um die Erreichbarkeit der OpenAPI-Spezifikation feingranular zu steuern. - [CAR-4251] LazyInitializationException bei der Verarbeitung von OCSP-Requests
-
Bei der Verarbeitung von OCSP-Requests, wie sie zum Beispiel bei Verwendung des CARA Revocation Info Servers erfolgt, kam es zu einer
LazyInitializationException. Der Fehler ist durch die technische Modernisierung des Datenbank-Layers entstanden und wurde in dieser Version behoben.
CARA Admin-Frontend
- cara-admin-ui#854, cara-admin-ui#860 Probleme bei der Rollenzuweisung während der Benutzer-Synchronisation
-
Wenn ein Benutzer aus Keycloak in die CARA-Datenbank synchronisiert wird, können die Rollen ausgewählt werden, die dem Benutzer automatisch zugewiesen werden sollen. Bei der Synchronisation über die Detailseite eines Benutzers wurde die
SuperAdmin-Rolle nicht korrekt zugewiesen, wenn die Option "Admin-User-Rollen" ausgewählt war. Wurde die Synchronisation hingegen über die Benutzer-Tabelle durchgeführt und waren dort mehrere nicht synchronisierte Benutzer sichtbar, konnten keine Rollen ausgewählt werden. Beide Fehler wurden behoben.
Aufgaben
[CAR-4272], [CAR-4275] SECURITY: Diverse Library Updates
Hinweise zur Generierung von PQC-Schlüsseln in CARA
In dieser Version sind Breaking Changes enthalten, die die PQC-Schlüsselgenerierung in CARA betreffen. Die vom Software-Schlüsselgenerator erwarteten Parameter wurden vereinheitlicht, sodass nun für alle PQC-Algorithmen jeweils der Parameter variant zur Angabe des zu verwendenden Parametersatzes (Algorithmus-Variante) verwendet wird. Weitere Details sind im Dokument [Benutzerhandbuch_Admin] zu finden. Die Änderung betrifft sowohl die Generierung von Schlüsselpaaren über die CARA-WS-API als auch die Beantragung von Zertifikaten mittels GenKey-Request.
Version 3.0.0
Bei dieser Version handelt es sich um ein neues Major-Release. Es beinhaltet eine komplette Neuentwicklung des CARA Admin Operator Frontends und der zugehörigen CARA Admin-API. Das neue Admin-Frontend bietet das Look & Feel der MTG Enterprise Resource Security Suite, basiert auf aktuellen Frontend-Technologien und verwendet eine zeitgemäße REST-Schnittstelle für die Kommunikation mit dem CARA-Server. Das herkömmliche CARA-Modul für Luna-HSM wurde aus technischen Gründen entfernt; natürlich können Luna-HSM weiterhin über das CARA GenericHSM-Modul angesteuert werden. Mit der Entfernung der alten Admin-API und des alten Luna-Moduls wurden wichtige Voraussetzungen geschaffen, um die technische Basis der CARA-Plattform weiter zu modernisieren.
Überblick über die wichtigsten Neuerungen
Mehrsprachiges Admin-Frontend
Das neue CARA Admin-Frontend kann nun zwischen deutscher und englischer Sprache umgeschaltet werden.
Authentifizierung
Einführung von OpenID Connect und Keycloak
Zur Anmeldung am CARA Admin Operator Frontend in Version 3.0 wird nun OpenID Connect (OIDC) in Verbindung mit Keycloak als OIDC-Provider unterstützt. Keycloak bietet eine Vielfalt von Authentifizierungsverfahren und ermöglicht mehr Flexibilität bei der Benutzerverwaltung und der Gestaltung von Anmeldeprozessen. Die Verwaltung von CARA Admin-Zugängen kann wahlweise in Keycloak oder im CARA Admin-Frontend erfolgen.
Eine zertifikatsbasierte TLS-Clientauthentifizierung wird vom CARA Admin-Frontend weiterhin indirekt unterstützt. Hierzu leitet das Admin-Frontend den Benutzer zu Keycloak, wo die Vorlage des Clientzertifikats erfolgt. Anschließend erstellt Keycloak ein signiertes OpenID-Token und leitet den Benutzer zurück zum Admin-Frontend. Alternativ kann sich ein Benutzer am Keycloak aber auch mit Username und Passwort authentifizieren.
Es ist zu beachten, dass die Anmeldung am CARA Admin-Frontend nun ausschließlich über Keycloak möglich ist. Die Benutzerautorisierung mit RA-Zertifikaten über die CARA-WS-API bleibt hingegen unverändert.
Automatische Migration bestehender Admin-Accounts
Zur Weiterverwendung bestehender Admin-RA-Zertifikate ist eine automatische Migration bei der Installation von CARA 3.0 vorgesehen. Bei der Migration wird für jedes geeignete Admin-RA-Zertifikat ein Keycloak-Benutzer angelegt.
Neuer Zertifikatstyp "Benutzer-Zertifikat" für Keycloak-Benutzer
Zur Unterstützung einer TLS-Clientauthentifizierung via Keycloak wurde ein neuer Zertifikatstyp "Benutzer-Zertifikat" ("OIDC User-Zertifikat") in CARA eingeführt. Nach einmaliger Festlegung des OIDC-Template-Signers können Benutzer-Zertifikate im neuen Admin-Frontend ausgestellt werden.
Zur Authentifizierung gegenüber Keycloak können sowohl die automatisch migrierten RA-Zertifikate als auch die neuen Benutzer-Zertifikate verwendet werden.
Die Management-Funktionen für RA-Zertifikate sind im neuen Admin-Frontend erhalten geblieben, wenngleich die Anmeldung am Admin-Frontend nun vorrangig mit OIDC-Benutzer-Zertifikaten erfolgt. Bestimmte VCA-Frontend-Applikationen unterstützen RA-Zertifikate mit VCA-weiten Rechten und Rollen; diese können hier weiterhin verwaltet werden.
Verpflichtende Zuweisung von Admin-Rollen für alle CARA-Admins
Die Zuordnungen zwischen CARA Admin-Benutzerkonten und Admin-Rollen, mit denen eine Rollentrennung zwischen den CARA Administrator*innen realisiert werden kann, sind nun in Keycloak gespeichert und werden dem Admin-Frontend als Teil der OIDC-Login-Tokens mitgeteilt. Die Admin-Rollen und die entsprechenden Rollenzuordnungen können weiterhin im CARA Admin-Frontend verwaltet werden.
Für den Zugang zum CARA Admin-Frontend ist die CARA-Rolle "Administrator" weiterhin notwendig, aber nicht mehr hinreichend. Alle Admins müssen zusätzlich mindestens eine Admin-Rolle besitzen. Im alten Admin Operator Frontend hatte ein Benutzer (= RA-Zertifikat) mit der Rolle "Administrator" standardmäßig alle Rechte und diese Rechte konnten durch die Zuweisung von Admin-Rollen lediglich eingeschränkt werden. In CARA 3.0 ist für einen uneingeschränkten Admin-Zugriff die neue Admin-Rolle "SuperAdmin" erforderlich. Bei der automatischen Migration bestehender RA-Zertifikate ohne Admin-Rolle wird die neue SuperAdmin-Rolle automatisch zugewiesen.
Wegfall des Basic-Bereichs im Admin-Frontend
Im bisherigen Admin-Frontend gab es den abschaltbaren und passwortgeschützten Bereich /basic für einen initialen Zugang zum Admin-Frontend. Hier konnten die ersten Admin-RA-Zertifikate ausgestellt werden. Dieser Bereich ist in CARA 3.0 obsolet geworden und existiert im neuen Admin-Frontend nicht mehr. Dementsprechend gibt es auch das CARA Admin-Basic-Passwort nicht mehr. Stattdessen wird bei der Installation ein Default Admin Benutzer mit einem Standardpasswort in Keycloak angelegt, der den ersten Zugriff auf das CARA Admin-Frontend erlaubt. Nach dem Anlegen weiterer Admin-Benutzer kann dieser Benutzer deaktiviert werden.
Wegfall von MTG SmartBridge zur clientseitigen Schlüsselgenerierung
Im bisherigen Admin-Frontend konnte MTG SmartBridge verwendet werden, um clientseitig Schlüssel für EE- und RA-Zertifikate (Soft-PSE) zu generieren. Diese Funktion steht nun nicht mehr zur Verfügung. Clientseitig generierte PKCS#10-Requests können jedoch weiterhin zur Ausstellung von EE- und RA-Zertifikaten verwendet werden.