Configuración¶
Fuentes de configuración¶
La aplicación combina configuración de tres orígenes, en este orden funcional:
- parámetros del protocolo
ssigner://; - propiedades obtenidas desde
/obtener-configuracion; - propiedades devueltas por
/generar-hash.
Los valores introducidos por el usuario para motivo y ubicación tienen prioridad durante la operación.
Parámetros del protocolo¶
| Clave | Valores | Uso |
|---|---|---|
dni | texto | Identificador del firmante |
cod-operation | entero representado como texto | Identificador de operación |
token | JWT u otro Bearer token | Autenticación HTTP |
tipo-repo | Windows-MY, PKCS11, PKCS12, JKS | Fuerza el repositorio |
filter-by-dni | true / false | Filtra certificados |
base-url | texto (dominio + path) | URL base del API REST (sin https://) |
debug | true, 1, yes, si, sí, on | Activa Log4j |
Parámetro base-url¶
El parámetro base-url permite configurar dinámicamente la URL del API REST sin recompilar.
ssigner://dni=12345678&cod-operation=1001&token=TOKEN&base-url=s-055-2025.plussigner.com/api/v2/ssigner
El valor proporcionado se prefija automáticamente con https://. Si el valor termina en /, se elimina el trailing slash antes de concatenar los endpoints.
Valor por defecto (hardcoded):
Propiedades de firma¶
Ejemplo de propiedades generadas para el motor:
firma.alias=ALIAS_DEL_CERTIFICADO
firma.repositorio=Windows-My
firma.motivo=Aprobación
firma.locacion=Lima
firma.campo=__signature__
firma.carpeta.entrada=C:\\Users\\usuario\\.ssigner\\entrada
firma.carpeta.salida=C:\\Users\\usuario\\.ssigner\\salida
firma.carpeta.config=C:\\Users\\usuario\\.ssigner\\config
firma.carpeta.cache=C:\\Users\\usuario\\.ssigner\\cache
firma.carpeta.imagen=C:\\Users\\usuario\\.ssigner\\imagen
documento=documentos.txt
certificado.validar.limite=1
Propiedades PKCS#11¶
firma.repositorio=PKCS11
firma.repositorio.pkcs11.libreria=C:\\Windows\\System32\\eTPKCS11.dll
firma.repositorio.pkcs11.clave=PIN_DEL_TOKEN
firma.alias=ALIAS_DEL_CERTIFICADO
Propiedad sensible
firma.repositorio.pkcs11.clave contiene el PIN durante la ejecución. No adjunte el archivo de configuración temporal a incidencias sin eliminar ese valor.
Configuraciones individuales¶
El servidor puede devolver configuracionesIndividuales, un mapa de nombre de archivo a propiedades. El cliente crea cada archivo dentro de la carpeta config.
{
"contrato.properties": {
"firma.motivo": "Aprobación",
"firma.locacion": "Lima",
"firma.texto": "Firmado por [NOMBRE]"
}
}
Si el usuario modifica motivo o ubicación, el cliente actualiza esas propiedades y procura reemplazar el valor anterior dentro de firma.texto.
Configuración de logs¶
Active el log desde el protocolo:
O desde las propiedades del servidor:
Archivo activo:
Formato:
La configuración incluye:
- nivel
INFOpara el cliente yDEBUGcuandodebug=true; - salida por consola y archivo;
- un archivo del cliente por fecha;
- hasta 90 archivos diarios;
- stack traces para errores;
- aislamiento respecto a los archivos de log propios del motor.
Timeout de inserción de firmas¶
El cliente espera 15 minutos por defecto al invocar POST /api/v2/ssigner/insertar-hash-firmado. Los límites pueden cambiarse al iniciar Java:
Un HTTP 504 proviene del proxy y requiere aumentar también proxy_read_timeout en OpenResty o Nginx.
Selección de Java¶
El cliente busca Java en este orden:
jre\bin\java.exejunto a la aplicación;jre/bin/java;%JAVA_HOME%\bin\java.exe;- comando
javadisponible enPATH.
Selección del motor¶
Windows-MY busca:
lib\ssigner-2.5.2.jar
<directorio de la aplicación>\lib\ssigner-2.5.2.jar
recurso /lib/ssigner-2.5.2.jar
El flujo PKCS#11 también revisa rutas relativas cercanas al directorio actual.
Directorio de trabajo
Mantenga lib\ssigner-2.5.2.jar junto al ejecutable para evitar depender del directorio desde el que Windows inicia la aplicación.