Error en trámites con juzgados y tribunales de Navarra

Si la digitalización es lenta en algunas empresas, en la administración pública y más en Justicia lleva su propio tiempo… Con la pandemia por COVID19 en 2020, en muchos escenarios se ha forzado la utilización de medios digitales para la comunicación, algo que ya debería ser utilizado con asiduidad previa por las partes.

La versión de cliente @Firma mediante Java quedó obsoleta, pese a que algunos entornos todavía utilizan tecnologías más antiguas, es necesario tener instalado y actualizado el cliente AUTO FIRMA (versión 1.6.5 en este momento) común para toda España. Además de olvidar las antiguas versiones de Internet Explorer en favor de navegadores como Chrome o Edge, pese a que en el manual sigue apareciendo como compatibles nos encontraremos con errores si intentamos «Realizar trámites por internet con los juzgados y tribunales de Navarra«:

Leer más

Programas de inicio en Windows 10

En ocasiones algunos programas o malware se resisten a desaparecer de la pestaña «Inicio» del administrador de tareas, tienen donde esconderse.
Deberemos revisar el el registro de Windows (regedit.exe) las siguientes rutas:

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

HKEY_CURRENT_USER\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\StartupApproved\Run
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\StartupApproved\Run

Y en el explorador de ficheros:
%ProgramData%\Microsoft\Windows\Start Menu\Programs\Startup
%Appdata%\Microsoft\Windows\Start Menu\Programs\Startup




Evaluar migración a .NET Core

Tarde o temprano nos encontraremos con la migración de frameworks/tecnologías y .NET no iba a ser una excepción. Utilizaremos la herramienta .NET Portability Analyzer para un primer vistazo a nuestras librerías y aplicaciones teniendo como objetivo aplicaciones multiplataforma, microservicios, dockers… en la nube.

Debemos tener claro antes de empezar, la recomendación general de Microsoft actualmente es utilizar .NET Core si tenemos que añadir nuevas funcionalidades en background, por el momento .NET Framework y .NET Core son complementarias. La mayor parte de las API de .NET Core se comparten con .NET Framework

Aclarado esto, con la extensión para Visual Studio 2019 instalada ya podemos iniciar el análisis que nos ayudará a identificar las dependencias externas. Dentro de la configuración de la extensión podemos fijar nuestro objetivo. Todas las acciones tienen su equivalente en línea de comandos.

Leer más

C# 9: propiedades iniciales y datos

Desde el año 2000 han sido muchas las modificaciones y mejoras en el lenguaje, a veces cuesta acostumbrarse a estas nuevas funcionalidades, veamos que nos depara 20 años después:

Es posible declarar el valor de propiedades en el momento de creación de un objeto, no es posible modificar a posteriori estos valores.

1
2
3
4
5
public class Vehiculo
{
    public string Marca { get; init; }
    public string Modelo { get; init; }
}

Por tanto, si todas las propiedades de un objeto con valores primitivos (int, double…) son de solo lectura (inmutables), nos acercamos a la definición de estructura (struct). Recordemos que las estructuras contienen valores y las clases referencias a valores, el ejemplo básico:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
struct Vehiculo
    public int Potencia; 
    public Vehiculo(int pot) 
    
        this.Potencia = pot; 
    
 
Vehiculo a = new Vehiculo(120); 
Vehiculo b = a; 
a.Potencia = 200; 
 
System.Console.WriteLine(b.Potencia);
Leer más

Actualización de osTicket con errores

Desde versiones previas 1.10.X a 1.12.X o posteriores aparecen errores con tablas ya creadas (seguramente de actualizaciones fallidas previas) en las que se muestra el error en el registro de la aplicación:

* @signature 86707325fc571e56242fccc46fd24466 
* @version v1.11.0 
* @title Add ticket referral * 
* This patch adds a table for thread referral as well as thread event states of referred and deleted 
*/ CREATE TABLE `cli_thread_referral` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT,  `thread_id` int(11) unsigned NOT NULL,  `object_id` int(11) unsigned NOT NULL,  `object_type` char(1) NOT NULL,  `created` datetime NOT NULL,  PRIMARY KEY (`id`),  UNIQUE KEY `ref` (`object_id`, `object_type`, `thread_id`),  KEY `thread_id` (`thread_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 

Table 'XXX_thread_referral' already exists

Deberemos volver a recuperar los archivos y la base de datos de nuestra copia de seguridad, además de eliminar la tabla indicada, deberemos suprimir dos más, donde «XXX» es el prefijo de las tablas de nuestra instalación:

DROP TABLE XXX_thread_referral;
DROP TABLE XXX_queue_export;
DROP TABLE XXX_event;

Es recomendable eliminar posibles idiomas adicionales y dejar como predeterminado el inglés nativo. En el caso de instalaciones antiguas, la versión de PHP mínima es la 5.6.40 tras la actualización podemos cambiar a 7.1.33 o posterior.

Si nos encontramos con errores durante la actualización pero sin dejar rastro en el log de PHP y de la BBDD de la aplicación, las reglas del firewall de aplicaciones Modsecurity bloquean el proceso de actualización, deberemos permitir temporalmente, utilizar Atomic Standard en lugar de OWASP o añadir excepciones para la ruta del panel de gestión (SCP).

NOTA: Es posible revisar los detalles de las reglas aplicadas en el registro de Plesk/cPanel via web o en los directorios de registro, por ejemplo: %Plesk_dir%\ModSecurity\vhosts\GUIDXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\logs sería necesario deshabilitar la regla 920480

 

Message: Access denied with code 403 (phase 1). Match of "rx ^%{tx.allowed_request_content_type_charset}$" against "TX:1" required. [file "/Plesk/ModSecurity/rules/modsecurity_crs-plesk/rules/REQUEST-920-PROTOCOL-ENFORCEMENT.conf"] [line "944"] [id "920480"] [msg "Request content type charset is not allowed by policy"] [data "utf-8"] [severity "CRITICAL"] [ver "OWASP_CRS/3.2.0"] [tag "application-multi"] [tag "language-multi"] [tag "platform-multi"] [tag "attack-protocol"] [tag "OWASP_CRS"] [tag "OWASP_CRS/PROTOCOL_VIOLATION/CONTENT_TYPE_CHARSET"] [tag "WASCTC/WASC-20"] [tag "OWASP_TOP_10/A1"] [tag "OWASP_AppSensor/EE2"] [tag "PCI/12.1"]
Action: Intercepted (phase 1)
Apache-Handler: IIS
Stopwatch: 1590421305747749 0 (- - -)
Stopwatch2: 1590421305747749 0; combined=0, p1=0, p2=0, p3=0, p4=0, p5=0, sr=0, sw=0, l=0, gc=0
Producer: ModSecurity for IIS (STABLE)/2.9.2 (http://www.modsecurity.org/); OWASP_CRS/3.2.0.
Server: ModSecurity Standalone
Engine-Mode: "ENABLED"