Utilizzare la posizione come condizione nelle policy di accesso condizionale in Azure AD

Tra le funzionalità più interessanti offerte dalle policy di accesso condizionale disponibili in Azure AD c’è certamente la possibilità di filtrare gli accessi in base alla posizione geografica.

È possibile quindi richiedere ad esempio l’utilizzo della multi-factor authentication quando gli utenti si trovano fuori dalla rete aziendale, filtrando gli indirizzi IP dell’azienda ed eliminandoli dalla policy di accesso condizionale, oppure quando si trovano fuori dalle nazioni dove l’azienda ha le proprie sedi.

La possibilità di filtrare gli indirizzi IP non assicura però la certezza che la connessione venga fatta da quella nazione, in quanto un utente malintenzionato potrebbe utilizzare una connessione VPN e vanificare di fatto le restrizioni imposte.

È invece più efficace la possibilità di ottenere la posizione dall’app Microsoft Authenticator e grazie alle coordinate GPS essere sicuri che l’utente si trovi in una delle nazioni “autorizzate”.

NOTA: Quasi il 30% degli attacchi arriva dall’interno delle nostre reti aziendali. Non consiglio quindi di disabilitare la MFA all’interno dell’azienda ma consiglio invece di seguire un approccio zero trust, come ho già avuto modo di spiegare nella guida Il modello Zero Trust per la sicurezza delle infrastrutture informatiche. Con il modello Zero Trust, nessun utente o dispositivo è considerato affidabile per accedere a una risorsa fino a quando non ne vengono verificate l’identità e l’autorizzazione. Bisogna verificare sempre e non fidarsi mai! Per anni abbiamo considerato il firewall perimetrale come la risorsa che separava i buoni (all’interno della rete aziendale) dai cattivi (all’esterno della rete). Chi è dentro la rete è affidabile, mentre chi è fuori dalla rete non lo è. Questa strategia di difesa da castello medievale è ormai un approccio ampiamente superato.

Dal portale Microsoft Entra admin center spostatevi nella sezione Protect & Secure e scegliete Conditional Access. Nel nodo Named Locations avrete la possibilità di definire quelle che per voi saranno le posizioni da utilizzare come condizione delle policy di accesso condizionale.

Figura 1: Creazione delle Named locations da utilizzare per le policy di accesso condizionale

Le Named Locations possono essere definite come IP ranges location, in cui mettere gli indirizzi IP con cui navigate dalle sedi aziendali, oppure Countries location, ricavate dall’indirizzo IP che viene identificato dal portale di Azure AD e quindi dal browser o come coordinate GPS che vengono ricevute dall’app Microsoft Authenticator.

Figura 2: Creazione di una Country location e scelta della modalità con cui viene ricavata la posizione

Figura 3: Inserimento della nazione o delle nazioni in cui ci sono le sedi aziendali e da cui sarà permessa l’autenticazione ad Azure AD

Figura 4: Creazione della Named Location completata

Una volta definita la Named Location, questa potrà essere utilizzata nelle policy di accesso condizionale.

Figura 5: Utilizzo della Named Location nelle policy di accesso condizionale

Figura 6: Creazione della policy di accesso condizionale completata

Quando un utente tenterà di autenticarsi ad Azure AD, riceverà la richiesta di fornire sia la conferma della propria identità utilizzando l’app Microsoft Authenticator, sia di fornire la propria posizione. Come di può vedere dalla figura sotto, all’utente viene chiesto di utilizzare il number matiching (di cui ho parlato nell’articolo Abilitare number matching nelle notifiche di Azure Multifactor Authentication (MFA)) e di condividere la propria posizione.

Figura 7: Richiesta di utilizzo della MFA e di fornire la propria posizione

La prima volta che un utente sarà assoggettato alla nuova policy di accesso condizionale riceverà la richiesta di condividere la propria posizione dall’app Microsoft Authenticator. La posizione viene memorizzata per un’ora e la richiesta di fornire la posizione verrà rieffettuata ogni volta che l’utente accederà ad una risorsa coperta dalla policy di accesso e, se la posizione sarà scaduta, dovrà essere ricondivisa.

NOTA: Ogni volta che un utente condivide la propria posizione, l’app Microsoft Authenticator controlla che il dispositivo non sia jailbroken oppure rooted. Nel qual caso la posizione sarà considerata non valida e l’accesso non verrà consentito.

   

Figura 8: Autenticazione completata con successo

Se la posizione fornita non coincide con quella indicata dalla policy all’utente non sarà concesso l’accesso e riceverà un messaggio come quello mostrato nella figura sotto:

Figura 9: La posizione da cui si sta autenticando l’utente non è consentita e all’utente viene negato l’accesso

Come già detto, è possibile anche definire una Named Location basato sugli indirizzi IPv4 e IPv6 di una determinata nazione, costantemente tenuti aggiornati da Microsoft. La possibilità che gli utenti utilizzino una VPN per mascherare la loro posizione effettiva potrebbe però vanificare l’efficacia di questo tipo di filtro.

Figura 10: Creazione di una Named Location basata sugli indirizzi IP di una nazione

Conclusioni

L’utilizzo della posizione come condizione nelle policy di accesso condizionale in Azure AD può aiutare a proteggere i dati e le risorse sensibili dalle minacce esterne. In particolare, è possibile limitare l’accesso alle risorse in base alla posizione dell’utente, ad esempio consentendo l’accesso solo da determinate nazioni o reti sicure. Questo tipo di filtro aumenta sensibilmente la sicurezza degli accessi, perché di fatto limita tantissimo la superficie di attacco.

Inoltre, l’utilizzo della posizione come condizione può essere combinato con altre condizioni di accesso, come l’ora del giorno o il dispositivo utilizzato, per fornire un controllo ancora più granulare sull’accesso.

Tuttavia, è importante notare che l’utilizzo della posizione come condizione può essere limitato da vari fattori, come l’affidabilità dei servizi di geolocalizzazione o la possibilità che gli utenti utilizzino una VPN per mascherare la loro posizione effettiva. Pertanto, è consigliabile utilizzare la posizione come condizione in combinazione con altre tecniche di sicurezza per garantire una protezione adeguata delle risorse aziendali.