Table of Contents

TS-001 — Accesso/login applicativo fallito

Sintomi

  • Gli utenti non riescono ad autenticarsi; il servizio logga ORA-01017: invalid username/password.
  • Oppure ORA-28000: the account is locked; oppure login OK ma "nessun ruolo/permesso".

Componenti coinvolti

ConnectionsService, .exe.config dei servizi (IEMServer.exe.config ecc.), provider OracleMembershipProvider/OracleRoleProvider, schema ASPNET_TEST38, connection string OracleProvidersDB/MainConnection.

Cause probabili

  1. Connection string errata/non riscritta dopo il deploy (vedi TS-002).
  2. Password ruotata in Passbolt ma non riallineata nel config distribuito. (Nota: le password degli schema *_TEST38 contengono parentesi quadre letterali — non vanno rimosse.)
  3. Account Oracle bloccato dopo N tentativi falliti (profilo FAILED_LOGIN_ATTEMPTS).
  4. applicationName del membership/role provider non coerente con quello atteso (ricavato da MainConnection da ConnectionsService).

Log da ispezionare

  • Log applicativo Descor.Infrastructure.LogManager (LogType.Connection).
  • Event Viewer del servizio Windows (InfocadServer/IEMServer).

Query diagnostiche (read-only)

-- connettività + identità come utente applicativo
SELECT USER, SYS_CONTEXT('USERENV','SERVICE_NAME') FROM DUAL;
-- stato account (richiede DBA_USERS; a cura del DBA)
SELECT username, account_status, lock_date, expiry_date
FROM   dba_users WHERE username IN ('ASPNET_TEST38','INFOCAD_TEST38','REQUESTCENTER_TEST38','DEM_TEST38');

Verifica cross-platform read-only (senza Oracle Client): python-oracledb thin, oracledb.connect(user=..., password=..., dsn="192.168.0.100:1521/dev") (credenziali da .env).

Procedura diagnostica

  1. Confermare host/porta/service e che il service dev risolva (errore ORA-12514 = service errato; ORA-01017 = credenziali).
  2. Testare la login del singolo schema in sola lettura (vedi sopra).
  3. Se ORA-28000: l'account è bloccato → il DBA esegue ALTER USER ... ACCOUNT UNLOCK (fuori scope documentazione).
  4. Confrontare la connection string nel .exe.config distribuito con la fonte autorevole.

Risoluzione

Riallineare la connection string (via ConnectionsService/connections.xml, vedi TS-002), riallineare la password, o sbloccare l'account (DBA). Evitare tentativi ripetuti a vuoto (rischio blocco).

Escalation

DBA per unlock/rotazione; team applicativo per applicationName membership.

Evidenza

InfocadServer/ConnectionsService/Program.cs (rewrite + membership applicationName); SEC-001.