function evt__generar() { //Luego invocar los metodos que generan el certificado y la exportacion de clave publica. $proyecto = $this->get_modelo_proyecto(); if ($this->verificar_existencia_private_key($proyecto) && !$this->pisa_archivo) { throw new toba_error_usuario('El archivo ya existe, no se permitira la generación a menos que se reemplace'); } try { toba_modelo_servicio_web::generar_certificados($proyecto); } catch (toba_error_usuario $e) { toba::logger()->error($e->getMessage()); toba::notificacion()->agregar('Se ha producido un error generando el certificado, verifique los logs', 'error'); } }
/** * Genera o configura los archivos de certificados necesario para seguridad a nivel capa de transporte * Opcional: -r Reemplaza los certificados actuales * */ function opcion__generar_cert() { $parametros = $this->get_parametros(); //Creo el directorio para el servicio web $proyecto = $this->get_proyecto(); $dir_instalacion = $proyecto->get_dir_instalacion_proyecto(); if (toba_modelo_servicio_web::existe_archivo_certificado($proyecto) && !isset($parametros['-r'])) { $this->consola->error("Ya existe la clave privada del proyecto en '{$dir_instalacion}/privada.key'. Para sobreescribirla indique el parametro -r"); die; } try { toba_modelo_servicio_web::generar_certificados($proyecto, $dir_instalacion); $this->consola->mensaje("Ok. Certificado publico generado en:"); $this->consola->mensaje("{$dir_instalacion}/publica.crt"); } catch (toba_error_usuario $e) { $this->consola->mensaje('Se ha producido un error durante el proceso', true); $this->consola->error($e->getMessage()); } }