Un unico elenco di ciò che ha un ambito
Le famiglie di record che appartengono a un cliente — oggetti di conoscenza, entità risolte, documenti, dashboard, regole di allarme, segnali, casi, report — sono enumerate in un unico modulo. Aggiungere una tabella che dovrebbe avere un ambito è una modifica di una riga lì, invece di un audit di ogni handler che potrebbe toccarla.
WORKSPACED_TABLESIl parametro di restrizione può solo restringere
Un chiamante può chiedere di vedere meno. Nominare un’organizzazione diversa dalla propria non amplia il risultato: un utente tenant è vincolato lato server alla propria organizzazione indipendentemente da ciò che passa.
?organization=Due livelli di admin, nessun secondo ruolo
Un admin senza organizzazione è un super-user cross-tenant; un admin con un’organizzazione ha il suo ambito limitato ad essa. Un admin di organizzazione non può generare un admin globale, spostare un utente tra organizzazioni, o modificare l’ontologia base condivisa.
isGlobalAdmin · isOrgAdminGli agenti sono principal, non eccezioni
Il server MCP inserisce il principal della chiave API negli stessi handler usati dalle route REST. Non esiste un percorso a forma di agente che aggiri i controlli, e la portata di un token è delimitata dal ruolo dell’utente che lo ha generato.
MCP dispatchUn log di audit solo in append, scritto lungo il percorso
Ogni mutazione viene registrata nel momento in cui avviene — chi, quale azione, quale record, e da dove — dal middleware attraverso cui passa ogni route. Le modifiche a entità, ontologia, connettori, token e regole di allarme approdano tutte nello stesso log, e un job di retention spazza via periodicamente gli eventi scaduti e le sessioni morte.
auditUn account, un hash
Credenziali Argon2id, verificate rispetto a un database di identità condiviso così un unico account funziona su ogni applicazione Djinious, e sessioni come JWT firmato con HMAC-SHA256. I ruoli sono admin, user e viewer; i controlli lato server vivono accanto agli handler, e la UI li rispecchia ma non è mai lei ad applicarli.
Argon2id · JWTDove sono i limiti
I record e le serie temporali vivono in due store, così una query sulle metriche può essere momentaneamente in ritardo rispetto ai record da cui è stata derivata. L’ingestione guidata dai connettori gira al di fuori di un contesto di richiesta e non marca l’organizzazione sugli oggetti che scrive; un deployment che ingerisce per singolo cliente li delimita esplicitamente.
limiti dichiarati