# Collaudo manuale `dwh-auth` Prima del rollout, i test sono sintetici e non usano dati clinici. Nel rollout reale si usano credenziali reali esclusivamente su `/rpc/ping`, senza acquisire risultati clinici. Non eseguire ora mutazioni server e non registrare chiavi, digest, certificate body, output Nginx grezzo o risultati clinici. ## Precondizioni - SHA sorgente e checksum binario approvati; registry, lock e record hanno owner/mode attesi. - `dwh-auth check`, unit `systemd` e socket Unix sono sani; Nginx viene toccato solo al Gate B. - CA `.it` e fingerprint sono confermati fuori banda; nessun `.com` è usato senza SAN valido. - Il server ThothII PSD è `postgres_direct`; il Mac/remoti sono `rest_api`. ## Matrice di accettazione | Caso | Azione autorizzata | Atteso | Evidenza ammessa | | --- | --- | --- | --- | | Registro | `check`, `key list`, `key status` | Stato e soli ID pubblici | ID, status, owner/mode, timestamp | | Socket locale | File header protetti, v1/legacy | `204` v1 e legacy durante dual-key | codice, unit/socket status | | Negativo locale | File header casuale e richiesta senza header | `401` | codice, nessun valore header | | Guasto controllato | Autenticatore/registro non disponibili nel test approvato | `503`, mai accesso | codice e rollback | | HTTPS dual-key | `/dwh/rpc/ping` con CA approvata, file header v1/legacy | v1 e legacy qualsiasi `2xx`, TLS valido | ID, esito e approvazione fingerprint | | Mac | **Validate workspace source**, **Test workspace connections** | Ping positivo | timestamp e stato GUI | | Revoca | Chiave legacy dopo osservazione | v1 qualsiasi `2xx`; legacy `401` post-revoca | ID pubblico e codici | | Trasporti | Server PSD diretto e SSH diagnostico | nessuna chiave `dwh-auth` | trasporto selezionato | ## Sequenza 1. Fare il Gate A: verificare localmente 204/401 e che il servizio resti indipendente dal vecchio stack. Nessun reload Nginx. 2. Al Gate B, fare backup protetti, `nginx -t`, reload autorizzato e ping `.it` con CA verificata. 3. Configurare il Mac nel vault GUI o con `API_KEY_FILE`; verificare ping e ID pubblico. 4. Dopo la finestra approvata, revocare legacy, ripetere v1 2xx/legacy 401 post-revoca e controllare solo un journal bounded sanitizzato. 5. Verificare rollback: backup leggibili, scope limitato a route/unit; nessuna migrazione di sessioni legacy, indici Qdrant o cache Ollama. Il collaudo passa solo con tutti i casi attesi, owner acceptance e template evidenza completato. `ssh_tunnel` non usa chiavi `dwh-auth` e resta fuori dal runtime sessione. Per la diagnostica seguire [guida server](../install/dwh-auth-server.md) e [TLS](../install/dwh-auth-tls.md).