Clientsytem Zertifikate werden vom Browser nicht heruntergeladen, weil der Konnektor bei der Auslieferung der .zip Datei behauptet, es handle sich um eine plaintext Antwort. Der Browser entdeckt dann ungültige Zeichen in der Antwort und verwirft den Download.
Das Verhalten zeigen alle Browser, Firefox hat das zumindest bis Version 127 noch ignoriert. Wer keinen alten Firefox installieren kann oder will, um eine Koco Box zu bedienen, kann folgendes Bookmarklet Javascript nutzen und damit den Download anstoßen.
Dieses tätigt den Download und teilt dem Browser mit, die Antwort als Blob (Binary Large Object alias application/octet-stream) zu behandeln, damit der Browser das nicht verwirft.
Vorgehen: - Einmalig ein Lesezeichen/Bookmarklet in beliebigem Browser anlegen (Screenshot siehe unten: Name beliebig, als Link den vollständigen Javascript Code aus dem Bookmarklet hinterlegen) - Login in den Konnektor - Zertifikatsseite aufrufen - Statt über die Seite ein neues Zertifikat zu erstellen, das Bookmark anklicken und die Parameter dort eingeben. - Zertifikatstyp ggf. ändern, indem ihr euch aus der Javascript-Meldung euren gewünschten Zertifikatstyp herauskopiert und einfügt. Überflüssige Leerzeichen werden automatisch entfernt.
Sourcecode (wird NICHT zum Anlegen des Bookmarklets benötigt)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
let clientsystem = prompt("Bitte geben Sie die Clientsystem ID ein", ""); let certtype = prompt("Bitte geben Sie den Zertifikatstyp ein: RSA_2048 : RSA_3072 : ECC_NIST : ECC_BRAINPOOL_P256_R1", "RSA_2048"); let xtoken = document.getElementById("x-token").value let cert = "/administration/download/generate-clientsystemcertificate/"+clientsystem+".zip?xtoken="+xtoken+"&certificateTyp="+certtype.replace(/\s/g, ''); var xhr = new XMLHttpRequest(); xhr.responseType = 'blob'; xhr.open('GET', cert, true); xhr.send(null); xhr.onload = function (e) { var blob = e.currentTarget.response; saveBlob(blob, clientsystem+".zip"); } function saveBlob(blob, fileName) { var a = document.createElement('a'); a.href = window.URL.createObjectURL(blob); a.download = fileName; a.dispatchEvent(new MouseEvent('click')); }
Grüße Christian krause
Hui123
hat folgende Bilder an diesen Beitrag angehängt