Bernd Wurst commited on 2014-02-20 17:46:24
Zeige 3 geänderte Dateien mit 19 Einfügungen und 10 Löschungen.
... | ... |
@@ -130,7 +130,7 @@ function validate_certificate($cert, $key) |
130 | 130 |
// Prüfe ob Key und Zertifikat zusammen passen |
131 | 131 |
if (openssl_x509_check_private_key($cert, $key) !== true) |
132 | 132 |
{ |
133 |
- DEBUG("Zertifikat und Key passen nicht zusammen"); |
|
133 |
+ DEBUG("Zertifikat und Key passen nicht zusammen: ".openssl_x509_check_private_key($cert, $key)); |
|
134 | 134 |
return CERT_INVALID; |
135 | 135 |
} |
136 | 136 |
|
... | ... |
@@ -59,8 +59,13 @@ $form = ' |
59 | 59 |
<h4>Server-Zertifikat:</h4> |
60 | 60 |
<p><textarea name="cert" rows="10" cols="70"></textarea></p> |
61 | 61 |
|
62 |
-<h4>privater Schlüssel:</h4> |
|
63 |
-<p><textarea name="key" rows="10" cols="70"></textarea></p> |
|
62 |
+<h4>privater Schlüssel:</h4>'; |
|
63 |
+ |
|
64 |
+if ($oldcert) { |
|
65 |
+ $form .= '<p>Wenn Ihre Zertifizierungsstelle einen echten <em>renew</em>-Vorgang durchführt und das Zertifikat basierend auf dem alten CSR neu ausgestellt hat, brauchen Sie hier keinen privaten Schlüssel anzugeben.</p>'; |
|
66 |
+} |
|
67 |
+ |
|
68 |
+$form .= '<p><textarea name="key" rows="10" cols="70"></textarea></p> |
|
64 | 69 |
|
65 | 70 |
<p><input type="submit" value="Speichern" /></p> |
66 | 71 |
|
... | ... |
@@ -72,4 +77,4 @@ output('<p>Es ist ein <strong>Zertifikat</strong> und ein dazu passender <strong |
72 | 77 |
<pre>-----BEGIN CERTIFICATE----- |
73 | 78 |
... |
74 | 79 |
-----END CERTIFICATE-----</pre> |
75 |
-<p>aufweisen. Sind die genannten Vorausetzungen erfüllt, können Sie Ihre Zertifikats-Daten einfach in untenstehendes Formular eingeben.</p>'); |
|
80 |
+<p>aufweisen.'); |
... | ... |
@@ -26,18 +26,22 @@ if ($_GET['action'] == 'new') |
26 | 26 |
system_failure("Es wurde kein Zertifikat eingegeben"); |
27 | 27 |
} |
28 | 28 |
$cert = $_POST['cert']; |
29 |
+ $oldcert = NULL; |
|
30 |
+ if (isset($_REQUEST['replace']) && is_numeric($_REQUEST['replace'])) |
|
31 |
+ { |
|
32 |
+ $oldcert = cert_details($_REQUEST['replace']); |
|
33 |
+ DEBUG('altes cert:'); |
|
34 |
+ DEBUG($oldcert); |
|
35 |
+ } |
|
29 | 36 |
$key = NULL; |
30 | 37 |
if (! isset($_POST['key']) && isset($_REQUEST['csr'])) |
31 | 38 |
{ |
32 | 39 |
$csr = csr_details($_REQUEST['csr']); |
33 | 40 |
$key = $csr['key']; |
34 |
- } else { |
|
41 |
+ } elseif (isset($_POST['key']) and $_POST['key']) { |
|
35 | 42 |
$key = $_POST['key']; |
36 |
- } |
|
37 |
- $oldcert = NULL; |
|
38 |
- if (isset($_REQUEST['replace']) && is_numeric($_REQUEST['replace'])) |
|
39 |
- { |
|
40 |
- $oldcert = cert_details($_REQUEST['replace']); |
|
43 |
+ } elseif ($oldcert) { |
|
44 |
+ $key = $oldcert['key']; |
|
41 | 45 |
} |
42 | 46 |
|
43 | 47 |
if (! $cert or ! $key) |
44 | 48 |