Version 6.7
GENERATE CERTIFICATE REQUEST (PrivKey; ZertAnfrage; CodeArray; NameArray)
Parameter | Typ | Beschreibung | |
PrivKey | BLOB | BLOB mit dem privaten Schlüssel | |
ZertAnfrage | BLOB | BLOB zum Empfangen der | |
Zertifikatsanfrage | |||
CodeArray | Lange GZ Array | Liste mit Informationscode | |
NameArray | String Array | Namensliste |
Beschreibung
Der Befehl GENERATE CERTIFICATE REQUEST erstellt eine Zertifikatsanfrage an das PEM (Privacy Enhanced Mail) Format, das direkt von Verisign® oder Thawte®.verwendet werden kann. Das Zertifikat spielt eine wichtige Rolle im mit SSL gesicherten Protokoll. Es wird an jeden Browser gesendet, der sich im SSL Modus anmeldet. Es enthält die Kennkarte der Web Site (die im Befehl eingegebene Information), sowie dem öffentlichen Schlüssel, mit dem die Browser die empfangene Information entschlüsseln können. Das Zertifikat enthält außerdem verschiedene Informationen vom Herausgeber des Zertifikats, der für deren Integrität bürgt.
Hinweis: Mehr Informationen zum Einsetzen des SSL Protokolls mit 4D Web Server finden Sie im Abschnitt SSL Protokoll.
Die Zertifikatsanfrage verwendet das Schlüsselpaar, das mit dem Befehl GENERATE ENCRYPTION KEYPAIR erstellt wurde. Sie enthält verschiedene Informationen. Der Herausgeber erstellt das Zertifikat durch Kombinieren dieser Anfrage mit anderen Parametern.
Übergeben Sie in PrivKey ein BLOB mit dem privaten Schlüssel, der mit dem Befehl GENERATE ENCRYPTION KEYPAIR.
Übergeben Sie in ZertAnfrage ein leeres BLOB. Sobald der Befehl ausgeführt wurde, enthält er die Zertifikatsanfrage im PEM Format. Sie können diese Anfrage in einer Textdatei speichern, z.B. über den Befehl BLOB TO DOCUMENT, um sie dem Herausgeber des Zertifikats vorzulegen.
Warnung: Mit dem privaten Schlüssel erstellen Sie die Anfrage. Dieser sollte jedoch nicht an den Herausgeber des Zertifikats gesendet werden.
Die Arrays CodeArray (Lange Ganzzahl) und NameArray (String) sollten analog dazu mit den Code-Nummern und dem Inhalt der Information gefüllt werden, die der Herausgeber des Zertifikats benötigt.
Die erforderlichen Codes und Namen können je nach Herausgeber und Verwendung des Zertifikats wechseln. Bei normaler Verwendung (Web Server Verbindung via SSL) sollten die Arrays folgende Elemente enthalten:
Erforderliche Information | CodeArray | NameArray (Beispiele) |
DomainName | 13 | www.4D.com |
Landeskennzeichen | 14 | US |
(zwei Buchstaben)
Ort | 15 | San Jose |
Bundesstaat (innerhalb USA) | 16 | California |
Name der Organisation | 17 | 4D, Inc. |
Abteilung der Organisation | 18 | Web Administrator |
Die Eingabereihenfolge für Code und Inhalt der Information spielt keine Rolle, die beiden Arrays müssen jedoch zueinander passen: Enthält z.B. das dritte Element von CodeArray den Wert 15 (Ort), sollte das dritte Element von NameArray die dazugehörige Information enthalten, in unserem Beispiel San Jose.
Beispiel
Das Formular "Zertifikatsanfrage" enthält die sechs notwendigen Felder für eine standardmäßige Zertifikatsanfrage. Über die Schaltfläche Erzeugen wird auf der Festplatte ein Dokument mit der Zertifikatsanfrage erstellt. Das Dokument "PrivaterSchlüssel.txt", das mit dem Befehl GENERATE ENCRYPTION KEYPAIR erstellt wurde, sollte auf der Festplatte sein:
Die Methode für die Schaltfläche Erzeugen lautet:
` Objektmethode bGenerate C_BLOB($vbprivateKey;$vbcertifRequest) C_LONGINT($tableNber) ARRAY LONGINT($tLCodes;6) ARRAY STRING(80;$tSInfos;6) $tableNber:=Table(Current form table) For ($i;1;6) $tSInfos{$i}:= Field($tableNber;$i) -> $tLCodes{$i}:=$i+12 End for If (Find in array($tSInfos;"") # -1) ALERT ("Alle Felder müssen ausgefüllt sein.") Else ALERT ("Wähle eigenen Privaten Schlüssel.") $vhDocRef:=Open document("") If(OK=1) CLOSE DOCUMENT($vhDocRef) DOCUMENT TO BLOB(Document;$vbprivateKey) End if GENERATE CERTIFICATE REQUEST($vbPrivateKey;$vbcertifRequest;$tLCodes; $tSInfos) BLOB TO DOCUMENT ("Request.txt";$vbcertifRequest) End if
Referenz
GENERATE ENCRYPTION KEYPAIR, SSL Protokoll.