GENERATE CERTIFICATE REQUEST

4D - Documentation   Français   English   German   Español   4D v11 SQL, Comandos por temas   4D v11 SQL, Lista alfabética de comandos   4D v11 SQL, Constantes por temas   Regresar   Anterior   Siguiente

versión 6.7


GENERATE CERTIFICATE REQUEST (llavePriv; peticionCertif; arrayCod; arrayNom)

ParámetroTipoDescripción
llavePrivBLOBBLOB que contiene la llave privada
peticionCertifBLOBBLOB que recibe la solicitud del certificado
arrayCodArray Ent. largoLa lista de códigos de información
arrayNomArray CadenaLista de nombres

Descripción

El comando GENERATE CERTIFICATE REQUEST genera una solicitud de certificación al formato PKCS el cual puede ser utilizado directamente por las autoridades de certificación tal como Verisign(R). El certificado es una parte importante en el protocolo seguro SSL. El certificado se envía a cada navegador que se conecta en modo SSL y contiene la "tarjeta de identidad" del sitio Web (con la información introducida en el comando), así como también su llave pública permitiendo a los navegadores descifrar la información recibida. Además, el certificado contiene diferente información añadida por la autoridad de certificación lo cual garantiza su integridad.

Nota: Para mayor información sobre el protocolo SSL utilizado con el servidor Web 4D, consulte la sección Uso del protocolo SSL.

La solicitud de certificación utiliza un par de llaves generadas por el comando GENERATE ENCRYPTION KEYPAIR y contiene diferente información. La autoridad de certificación generará su certificado combinando esta solicitud con otros parámetros.

Pase en llavePriv un BLOB que contenga la llave privada genera con el comando GENERATE ENCRYPTION KEYPAIR.

Pase en peticionCertif un BLOB vacío. Una vez el comando ha sido ejecutado, contiene la solicitud de certificación al formato PKCS. Puede almacenar esta solicitud en un archivo de texto, por ejemplo utilizando el comando BLOB TO DOCUMENT, para presentarlo a la autoridad de certificación.

Advertencia: La llave privada se utiliza para generar la solicitud de certificación pero NO debe ser enviada a la autoridad de certificación.

Los arrays arrayCod (entero largo) y arrayNom (cadena) deben llenarse con los números de código y la información requerida por la autoridad de certificación respectivamente.

Los códigos y nombres requeridos pueden cambiar de acuerdo a la autoridad de certificación y el uso del certificado. Sin embargo, dentro del uso normal del certificado (conexiones del servidor Web vía SSL), los arrays deben contener los siguientes elementos:

Información a suministrar arrayCod arrayNom (Ejemplos)
Nombre del dominio13www.4dhispano.com
Código del país (dos letras)14ES
Ciudad15Barcelona
Estado, Departamento,...16Cataluña
Nombre de la organización174D Hispano
Servicio/Persona a cargo del 18Administrador Web

servidor

El orden en el que se introducen los códigos y la información no importa, sin embargo los dos arrays deben estar sincronizados: si el tercer elemento de codeArray contiene el valor 15 (ciudad), el tercer elemento de nameArray debe contener esta información, en nuestro ejemplo Barcelona.

Ejemplo

Un formulario "Solicitud de certificado" contiene los seis campos necesarios para una solicitud de certificación estándar. El botón Generar crea un documento en disco que contiene la solicitud del certificado. El documento "Privatekey.txt" que contiene la llave privada (generada con el comando GENERATE ENCRYPTION KEYPAIR) debe estar en el disco:

Este es el método del botón Generar:

   ` Método de objeto bGenerar

   C_BLOB($vbllavePriv;$vbpeticionCertif)
   C_LONGINT($tablaNum)
   ARRAY LONGINT($tLCodigos;6)
   ARRAY STRING(80;$tSInfos;6)

   $tableNum:=Table(Current form table)
   For ($i;1;6)
      $tSInfos{$i}:= Field($tablaNum;$i)->
      $tLCodigoss{$i}:=$i+12
   End for
   If (Find in array($tSInfos;"") # -1)
      ALERT ("Todos los campos deben ser completados.")
   Else
      ALERT ("Seleccione su llave privada.")
      $vhDocRef:=Open document("") 
      If(OK=1)
         CLOSE DOCUMENT($vhDocRef)
         DOCUMENT TO BLOB(Documento;$vbllavePriv)
         GENERATE CERTIFICATE REQUEST($vbllavePriv;$vbcertifRequest;$tLCodigos;$tSInfos)
         BLOB TO DOCUMENT ("Request.txt";$vbcertifRequest)
      Else
         ALERT ("Llave privada inválida.")
      End if
   End if

Ver también

GENERATE ENCRYPTION KEYPAIR, Utilizar el protocolo SSL.


4D - Documentation   Français   English   German   Español   4D v11 SQL, Comandos por temas   4D v11 SQL, Lista alfabética de comandos   4D v11 SQL, Constantes por temas   Regresar   Anterior   Siguiente