fix(cert-manager): Reiter zeigen nur noch passende Auswertungen, Aufteilen schützt Schlüssel

- Ausgabe-Reiter bieten nur an, was zur aktuellen Dateiliste passt: nach dem Entfernen
  einer Datei oder einer fehlgeschlagenen Prüfung kommt Hinweis oder Fehler mit
  „Erneut versuchen“ statt der alten Auswertung (WR-02)
- Aufteilen: ein in der Datei geschützter Schlüssel bleibt geschützt (Passwort für die
  Ausgabe, auch in der ZIP); ohne Schutz nur ausdrücklich und mit sichtbarem Hinweis;
  Schlüssel heißen nach ihrem Zertifikat (WR-03, IN-05)
- Meldungen: tooManyItems, aiaNotAllowed, buildFailed (statt „Dateien konnten nicht
  geprüft werden“ beim Erstellen), protectionTooExpensive; Hinweis zum Passwort
  genauer (IN-03, IN-05)
- Download-Adresse wird erst nach einer Sekunde widerrufen (IN-04)
- Anleitungen und Änderungsliste: Grenzen, Aufteilen mit Schlüsselschutz, Umlaut-Passwörter

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-10-09 17:10:45 +02:00
parent ff2226dfbd
commit 4b87249a4a
23 changed files with 758 additions and 113 deletions
+19 -6
View File
@@ -1298,7 +1298,8 @@
"suspicious": "Die Datei ist ungewöhnlich stark gepackt und wird übersprungen.",
"zipTooLarge": "Das ZIP enthält zu viele Daten und wird nicht geöffnet.",
"tooManyEntries": "Das ZIP enthält zu viele Dateien und wird nicht geöffnet.",
"unsupportedKey": "Dieser Schlüsseltyp wird nicht unterstützt."
"unsupportedKey": "Dieser Schlüsseltyp wird nicht unterstützt.",
"protectionTooExpensive": "Der Passwortschutz dieser Datei wäre zu aufwendig zu prüfen. Sie wird übersprungen."
},
"pasteToggle": "PEM-Text einfügen",
"pasteHint": "Fügen Sie Text ein, der mit „-----BEGIN“ beginnt. Mehrere Blöcke hintereinander sind möglich.",
@@ -1313,7 +1314,7 @@
"unlock": "Entsperren",
"unlockAnyway": "Trotzdem entsperren",
"wrong": "Das Passwort passt nicht.",
"note": "Das Passwort bleibt in diesem Browserfenster und wird nur zum Öffnen der Datei übertragen."
"note": "Das Passwort bleibt in diesem Browserfenster. Es wird bei jeder Prüfung der Dateien mitgesendet, aber nie gespeichert."
},
"keyWasEncrypted": "war verschlüsselt",
"fetchedFrom": "nachgeladen von {host}"
@@ -1333,12 +1334,16 @@
"aiaInternal": "Die Adresse im Zertifikat verweist nicht auf einen öffentlichen Server und wird nicht abgerufen.",
"aiaNotIssuer": "Die Adresse lieferte kein passendes Zertifikat des Ausstellers.",
"aiaUnreachable": "Der Server des Ausstellers ist nicht erreichbar. Laden Sie das Zertifikat selbst herunter und fügen Sie es hinzu.",
"aiaTooLarge": "Die Antwort des Ausstellers ist zu groß und wurde verworfen."
"aiaTooLarge": "Die Antwort des Ausstellers ist zu groß und wurde verworfen.",
"buildFailed": "Die Datei konnte nicht erstellt werden. Bitte versuchen Sie es erneut.",
"tooManyItems": "In den Dateien stecken zu viele Zertifikate, Schlüssel oder Anfragen (höchstens 200 Zertifikate, 50 Schlüssel und 50 Anfragen auf einmal). Entfernen Sie einzelne Dateien und versuchen Sie es erneut.",
"aiaNotAllowed": "Die Adresse im Zertifikat darf nicht abgerufen werden. Erlaubt sind nur gewöhnliche http- oder https-Adressen ohne Zugangsdaten und ohne besonderen Anschluss. Laden Sie das Zertifikat selbst herunter und fügen Sie es hinzu."
},
"workspace": {
"empty": "Noch keine Dateien. Laden Sie Ihre Zertifikate im Reiter „Dateien“ hoch.",
"goToFiles": "Zum Reiter „Dateien“",
"basis": "{count, plural, one {Grundlage: 1 Datei aus dem Reiter „Dateien“.} other {Grundlage: # Dateien aus dem Reiter „Dateien“.}}"
"basis": "{count, plural, one {Grundlage: 1 Datei aus dem Reiter „Dateien“.} other {Grundlage: # Dateien aus dem Reiter „Dateien“.}}",
"stale": "Die Ergebnisse passen gerade nicht zu Ihren Dateien. Bitte prüfen Sie die Dateien erneut."
},
"analyze": {
"intro": "Alles, was in Ihren Dateien erkannt wurde: zuerst die Ketten, dann jedes Zertifikat im Einzelnen. Alle Zeiten stehen in UTC, wie im Zertifikat.",
@@ -1385,12 +1390,20 @@
"explainCsr": "Die Anfrage, mit der ein Zertifikat bei der Zertifizierungsstelle bestellt wird."
},
"split": {
"intro": "Jedes erkannte Teil können Sie einzeln in seinem natürlichen Format herunterladen, oder alle zusammen als ZIP.",
"intro": "Jedes erkannte Teil können Sie einzeln in seinem natürlichen Format herunterladen, oder alle zusammen als ZIP. Private Schlüssel bleiben dabei durch ein Passwort geschützt, wenn sie es in Ihrer Datei schon waren.",
"nothingFound": "Es wurde noch nichts erkannt, das sich herunterladen ließe.",
"download": "Herunterladen",
"downloadFor": "„{name}“ herunterladen",
"downloadAll": "Alle als ZIP herunterladen",
"zipFilename": "Zertifikate.zip"
"zipFilename": "Zertifikate.zip",
"keyNote": "Private Schlüssel sind geheim. Schützen Sie die Dateien mit einem Passwort, wenn Sie sie ablegen oder weitergeben.",
"protectKeys": "Schlüssel mit einem Passwort schützen",
"keyPassword": "Passwort für die Schlüssel",
"keysWereProtected": "Mindestens ein Schlüssel war in Ihrer Datei durch ein Passwort geschützt. Ohne den Schutz werden die Schlüsseldateien unverschlüsselt gespeichert. Jeder, der sie bekommt, kann sie benutzen.",
"passwordNeeded": "Bitte geben Sie ein Passwort für die Schlüssel ein, oder schalten Sie den Schutz aus.",
"busy": "Wird vorbereitet …",
"keyProtected": "mit Passwort geschützt",
"keyPlain": "ohne Passwortschutz"
},
"merge": {
"intro": "Tessera ordnet Serverzertifikat, Zwischenzertifikate und Stammzertifikat selbst und prüft dabei, dass jedes Zertifikat wirklich vom nächsten ausgestellt wurde. Die Reihenfolge Ihrer Dateien spielt keine Rolle.",