Una cosa è certa nel mondo della tecnologia: l’abbondanza del gergo. O degli acronimi. Fortunatamente, se scegliete quelli giusti, sono veramente utili.
Di recente, abbiamo assistito a un intenso dibattito sulle architetture “Zero Trust” (ZT). Il concetto di base si fonda sul fatto che non dovremmo considerare affidabile nessuna operazione che comporti l’uso di dati, indipendentemente dalla sua origine. Inoltre, ogni operazione dovrebbe essere accompagnata dalla prova della titolarità.
Parlando di “Zero Trust” o “fiducia zero”, per molto tempo i metodi di stampa sono stati trascurati, probabilmente perché la stampa era inizialmente un fenomeno locale, per cui considerata generalmente isolata, “protetta da un vuoto d’aria” come si direbbe in termini informatici, da qualsiasi problema di sicurezza della rete. Tuttavia, la stampa fa ormai parte dello schema della rete sebbene l’aspetto della sicurezza sia stato per molto tempo trascurato. Parlando di sicurezza, abbiamo recentemente osservato un aumento incredibile di casi che avrebbero potuto provocare reali problemi nelle piattaforme Windows. Sono sicuro che le organizzazioni di tutto il mondo hanno adottato le misure opportune per attenuare il rischio di questo possibile scenario e auspico che, nel farlo, ora comprendano quanto sia necessario proteggere i loro ambienti di stampa e implementare reti “Zero Trust”.
I documenti stampati rappresentano un’altra modalità di esporre i dati al rischio di fuga. Inoltre, una volta stampati, non vi è alcun modo di controllare i dati esposti. È pertanto molto importante verificare l’identità di colui che cerca di stampare i dati così come quali dati una determinata persona sta cercando di stampare.
Sino a poco tempo fa, le aziende lo facevano assicurando il controllo della periferica utilizzata. Per esempio, per scrivere questo articolo devo collegarmi al mio laptop. Devo inoltre comunicare con Office 365 utilizzando la mia identità di rete aziendale per usare Word. Se voglio salvare il documento sulla rete aziendale, le credenziali sono quelle utilizzate al login del mio PC che, tra le altre cose, ha le autorizzazioni per farlo. Se mi allontano dal PC e non ricordo di bloccare lo schermo, un qualsiasi individuo privo di scrupoli può avvicinarsi, accedere ai dati fingendo di esser me, stamparli e allontanarsi con i documenti. Nel mio caso non è una tragedia, in quanto il mio accesso alle informazioni importanti è limitato. Ma se fossi un medico o un’altra figura sanitaria? Oppure se avessi accesso a informazioni sensibili sulla concorrenza? Questo sì che potrebbe essere un problema.
Stampa BYOD in un ambiente “Zero Trust”
Immaginiamo che questa situazione si svolga in un mondo “Zero Trust”. In questo mondo, posso (e lo faccio spesso) portare con me un dispositivo che possiedo e gestisco. Questo approccio è chiamato comunemente “Bring Your Own Device” (Porta il tuo dispositivo) o BYOD. L’azienda non si preoccupa del mio dispositivo, per cui potrei collegarmi al mio PC come amministratore. Nel mondo “Zero Trust” non ci sono problemi. L’idea si basa sul fatto che la sicurezza mi permette di lavorare collegato a Internet da casa, dalla mia caffetteria preferita o dal luogo in cui lavoro - sempre allo stesso modo. Questo significa anche che la connessione Internet nel luogo in cui lavoro non deve offrire la sicurezza basata sull’utente perché non posso stabilire la fiducia con la mia sola presenza sulla rete.
Per lavorare, mi collego ad alcune risorse sicure, più comunemente sotto forma di siti Web crittati o applicativi virtuali. Tutti i dati che passano su Internet sono crittati per cui il fatto che io sia collegato all’Internet pubblica non provoca alcun problema.
In un ambiente applicativo virtuale, la stampa è spesso controllata internamente o a volte non è neppure consentita. Tuttavia, in molti casi occorre comunque stampare un documento, per cui la verifica in fase di stampa diventa necessaria. Questo accade permettendo agli utenti di definire i dispositivi di stampa avvalendosi di un meccanismo esterno al sistema operativo.
La soluzione consiste nel catturare la stampa quando viene impartito il comando. A questo punto possono accadere diverse cose. Innanzitutto, è possibile stabilire se la stampa è associata a un ID utente valido. In questo esempio, ho cliccato su “Stampa” dalla schermata Word e ho selezionato una stampante:
Osservate che mi viene chiesto di identificarmi. Questo è un punto chiave. Anche se mi collegassi al PC come amministratore, come nell’esempio precedente, dovrei comunque fornire le mie credenziali aziendali per poter stampare. Notate inoltre che questa autenticazione avviene mediante un browser (di cui parlerò in seguito). Inserisco le mie credenziali aziendali ed effettuo il login.
A questo punto sono collegato, per cui la mia ID utente guy.tucker@lrs.com è associata alla stampa. Bene, il primo passo è fatto. E adesso? Posso ora consultare i parametri di stampa da me configurati per controllare vari aspetti. Alcuni potrebbero essere semplici, come il fatto di sapere se l’azienda intende sostenere i costi della stampa a colori, altri potrebbero invece dipendere dall’EFFETTIVA necessità di stampare il documento oppure no. Questi parametri possono porre domande all’utente, registrare il tentativo di stampa e bloccarla oppure consentire all’utente di annullare la richiesta.
Questi non sono che alcuni semplici esempi; le piene funzionalità sono molto più ampie. Inoltre, è possibile attivare Secure Print, la stampa sicura. Mi sono collegato con la mia identità aziendale per cui ora posso inviare i dati a una coda di stampa personale, dove vengono conservati. Posso dunque recarmi alla stampante più vicina, identificarmi e recuperare i miei documenti. Questo significa che i documenti vulnerabili, contenenti informazioni sensibili, non rimangono nel cassetto di uscita della stampante fino al mio arrivo. Ovviamente, questo rende il tutto più sicuro.
I dati “a riposo” (i lavori che attendono in coda di essere stampati) e i dati “in movimento” (quelli che viaggiano dalla fonte alla stampante) devono essere sempre crittati. Il Protocollo di stampa su Internet (IPP, Internet Print Protocol) facilita questo compito avvalendosi degli stessi metodi di crittografia usati per il Web. Ancora una volta, non fidatevi mai ma verificate sempre.
E per quanto riguarda l’autenticazione? Negli ultimi anni, questo argomento è stato molto dibattuto. L’importante è lasciare che un’organizzazione utilizzi i metodi e i fattori che desidera e controllare l’autenticazione da un’unica fonte. In passato si usavano metodi semplici come Active Directory (AD) di Microsoft o altri metodi LDAP. Purtroppo erano facilmente hackerabili e la loro struttura non ammetteva alcun grado di flessibilità. Le aziende volevano utilizzare molto più di una semplice ID utente e password per la connessione. Talvolta era ritenuta necessaria l’associazione a una carta o un dongle oppure il ping per l’autenticazione multifattoriale (MFA) con il telefono. Un altro problema derivava da fusioni e acquisizioni aziendali. Un’azienda poteva trovarsi con due, tre o venti diversi domini AD nei quali gli utenti potevano risiedere e avere anche ID duplicate.
Entrate nel mondo di Open ID Connect (OIDC)
OIDC è un meccanismo sicuro basato sui servizi Web che funge da proxy per questo tipo di situazioni. Forse il vostro provider OIDC “federa” tutti i domini. Io mi collego come guy.tucker@lrs.com e il provider OIDC lavora dietro le quinte per autenticare il dominio AD corretto. Oppure potrei voler richiedere la MFA per tutti i miei utenti. Senza un provider OIDC, è l’applicazione a dover valutare tutte le possibilità.
Il documento RFC 6749 prevede l'adozione di standard per tutti i metodi e gli attributi necessari per operare con un provider OIDC. Ma è proprio qui che insorge il problema: nessun provider OIDC, inclusi quelli che contribuiscono alla definizione dello standard, lo seguono rigorosamente! Cosa posso fare se voglio lavorare con un provider OIDC?
(Avvertenza dell’autore: nel testo che segue saranno usati acronimi)
Beh, la risposta è semplice: diventare un provider OIDC. L’applicazione può quindi restare nella sua forma base e richiedere che il proprio provider OIDC si occupi del processo di autenticazione. Nel caso del software LRS, abbiamo creato il componente LRS/Gateway. Quando provo a stampare, il modulo Personal Print Manager (PPM) di LRS verificherà se sono collegato. In caso negativo, utilizza il browser di default tramite LRS/Gateway per eseguire l’autenticazione. Ricordate l’esempio del browser che ho fatto in precedenza? Si utilizza questo metodo perché è generalmente disponibile e controllabile da parte di un’organizzazione o utente. È meglio adottare questo metodo noto piuttosto che integrare la stessa funzionalità nell’applicazione chiamante.
Se LRS/Gateway utilizza AD direttamente, le informazioni sull’utente vengono autenticate in modo immediato e al PPM viene inviato il segnale “OK”. Questo OK ha la forma di un token che il PPM può utilizzare per richieste future. In questo modo, ogni richiesta contiene quell’”autorizzazione a stampare” e garantisce la mia identità. Se un’azienda preferisce usare un altro provider come Azure AD, Okta, Ping, iWelcome o altri di questo tipo, LRS/Gateway ridirige l’autenticazione a quella fonte secondaria. È un gioco da ragazzi!
Per esempio, questa è la mia autenticazione tratta dall’esempio precedente, in Okta:
Quindi, Okta segue le regole stabilite dall’azienda e l’OK torna successivamente a LRS/Gateway, e il processo continua.
In entrambi i casi, che io usi AD o Okta, la mia identità è stata verificata, per cui la mia stampa può utilizzare quelle credenziali per la verifica. Qualsiasi operazione di stampa che abbia luogo da ora in poi può anche essere controllata per verificare che io abbia il mio token e che non sia stata violata alcuna procedura aziendale.
Non fidatevi mai di nulla, verificate ogni cosa, non smettete mai di tutelare i dati preziosi contenuti nei vostri documenti. Questa non è solo una buona teoria. Oggi è possibile, e risparmierete a voi stessi e alla vostra organizzazione un sacco di problemi.