Files
ThothII/docs/testing/psd-server-project-b-manual.md
T

5.7 KiB
Raw Blame History

Progetto B PSD — collaudo manuale Authentik e Aritmolab

Questo documento verifica il percorso finale di produzione. Si esegue soltanto dopo il PASS del Progetto A e dopo che Sol ha completato i preflight Authentik, Supabase, Nginx e bilanciatore.

Regole

  • Usare identità di prova approvate: una ordinaria, una amministrativa e, se disponibile, una senza gruppi ThothII.
  • Non acquisire token, cookie, password, chiavi private, claim completi o trace browser contenenti URL di callback con parametri.
  • Partire dalla home reale di Aritmolab, non da un URL interno di ThothII.
  • Segnare PASS, FAIL o PENDING; non dedurre il PASS da test automatici.

Dati iniziali

Campo Valore redatto
Data/ora UTC
SHA ThothII/workspace
Origine pubblica
SHA/revisione Aritmolab
Nome/ID applicazione Authentik non inserire secret
Database Supabase
Schema sessioni thoth_sessions
Operatore/revisore

1. TLS, routing e pagina iniziale

Prova Azione Risultato atteso Esito Note
HTTP aprire origine in HTTP redirect a HTTPS
Certificato ispezionare il lucchetto/catena hostname corretto, nessun warning
Home Aritmolab aprire URL ufficiale pagina disponibile
Sidebar individuare ThothII link presente come prima
Destinazione aprire il link nuovo frontend ThothII
API caricare l’app nessun 502/404 o mixed content
SSE avviare attività modello aggiornamenti continui, niente buffering evidente

2. Single sign-on

Chiudere ogni precedente sessione di test secondo la procedura concordata. Accedere ad Aritmolab con l’identità ordinaria, quindi aprire ThothII dalla sidebar.

Prova Risultato atteso Esito Note
Primo login Authentik autentica l’utente
Passaggio sidebar nessuna seconda richiesta di credenziali
Callback ritorno all’origine pubblica ThothII
Identità nome visualizzato coerente, senza dati grezzi del token
Browser storage nessun access/id token in Local/Session Storage
Cookie cookie ThothII HttpOnly/Secure/SameSite secondo configurazione

Non copiare il valore del cookie nel rapporto.

3. Ruoli e autorizzazione

Identità/caso Risultato atteso Esito Note
Gruppo utente può creare, leggere e gestire le proprie sessioni
Gruppo utente Pi Management e funzioni admin negate con 403/non visibili
Gruppo admin funzioni amministrative documentate disponibili
Nessun gruppo mappato autenticato ma operazioni protette negate
Gruppo estraneo aggiuntivo nessun cambiamento e nessun warning
Header identità forgiato nessun privilegio aggiuntivo

Le prove su claim mancante/malformato possono essere eseguite da Sol con un’identità/provider di test controllato. Il revisore verifica soltanto esito HTTP generico e report redatto, mai il token.

4. Logout e riavvio

Prova Azione Risultato atteso Esito Note
Logout ThothII usare il comando dell’app cookie ThothII revocato
SSO ancora attivo riaprire ThothII possibile nuovo accesso senza password; documentare
Logout Authentik globale se configurato e in scope comportamento conforme alla policy locale
Riavvio core Sol riavvia in finestra controllata sessione browser valida secondo TTL/policy
Provider indisponibile prova controllata nuovo login fallisce chiuso e redatto
Ripristino provider ripetere diagnosi/login servizio torna operativo

Non dichiarare “logout globale” se è stato testato soltanto il logout locale di ThothII.

5. Sessioni PostgreSQL e isolamento

Prova Risultato atteso Esito Note
Migrazioni pending=[], drifted=[]
Schema thoth_sessions nel database Supabase esistente
PostgREST schema non esposto
RLS forzata sulle tabelle previste
Utente A/B ciascuno vede soltanto le proprie sessioni
Accesso incrociato risposta not-found/negata come da contratto
Admin accesso trasversale solo secondo permessi documentati
Credenziale migratore non montata nel core
Schema clinico nessun nuovo privilegio runtime

6. Sessione completa sotto OIDC

Come utente ordinario, eseguire una domanda innocua approvata e completare F1–F8.

Prova Risultato atteso Esito Note
Creazione sessione associata all’identità OIDC
Gate F1–F8 tutti presentati e registrati correttamente
Resume ritorna alla sessione corretta
SQL finale sola lettura e validato
Persistenza manifest, artefatti e decisioni in PostgreSQL
SSE/chat funzionano live; non richiesti come artefatti persistiti
Riavvio sessione di lavoro ancora disponibile

7. Integrazione e pulizia finale

Prova Risultato atteso Esito Note
Endpoint temporaneo A rimosso/non instradato
Vecchio stack fermo, non esposto
Link sidebar punta solo alla nuova release
Servizi privati core/Qdrant/Ollama non pubblicati
Altri servizi Nginx invariati e sani
Rollback procedura verificata e disponibile
Evidenze nessun secret o dato clinico identificabile

8. Decisione

Decisione finale: PROJECT_B_PASS / PROJECT_B_FAIL / PROJECT_B_PENDING

Revisore e data: ______________________________________

Motivazione sintetica: ______________________________________

Conferma percorso finale “Aritmolab → sidebar → ThothII → SSO”: ______________________________