Active Directory è ancora la directory degli utenti autorevole in molte organizzazioni. Utenti, password e appartenenze a gruppi spesso risiedono già lì, e in molti casi lo fanno già da anni.
Ma le applicazioni moderne spesso richiedono protocolli federativi moderni e opzioni di autenticazione più potenti.
Nuove applicazioni web, piattaforme SaaS e portali rivolti ai clienti spesso supportano OpenID Connect o SAML 2.0. Si aspettano token moderni, claims, metadati della federazione, flussi Single Sign-On e talvolta un'autenticazione potenziata con MFA.
Ciò crea una sfida comune: come modernizzare l’autenticazione senza sostituire Active Directory fin dal primo giorno?
È qui che diventa utile FoxIDs Directory Connector for Active Directory. Consente alle organizzazioni di mantenere Active Directory come fonte di utenti, password e appartenenze ai gruppi, mentre FoxIDs aggiunge il livello di identità moderna in cima.
Gli utenti possono comunque accedere con le credenziali Active Directory esistenti. Le applicazioni possono integrarsi con FoxIDs utilizzando OpenID Connect o SAML 2.0. Inoltre, FoxIDs può aggiungere claims, ruoli, autenticazione a più fattori e un'esperienza di accesso con marchio nella directory esistente.
Active Directory può restare dov'è
Molte organizzazioni non sono alla ricerca di una migrazione radicale da Active Directory. Devono semplicemente far funzionare la loro directory esistente con le applicazioni moderne.
Con Directory Connector for Active Directory, FoxIDs si connette a un componente installato all'interno dell'ambiente Windows del cliente, vicino ai controller di dominio. FoxIDs chiama il connettore su HTTPS e il connettore convalida gli utenti, gestisce le operazioni sulle password e restituisce le proprietà e i claims utente selezionate da Active Directory.
La parte importante è che Active Directory rimane autorevole.
Ciò significa che le password possono ancora essere convalidate da AD. Le policy password esistenti possono ancora essere applicate. Gli utenti possono ancora essere gestiti nella directory familiare. E l'appartenenza al gruppo può ancora essere controllata dai processi IT esistenti.
FoxIDs diventa quindi il livello di identità moderno davanti ad AD.
Invece di connettere ogni applicazione direttamente a Active Directory o LDAP, le applicazioni si collegano a FoxIDs. FoxIDs gestisce il protocollo di federazione, l'emissione dei token, i claims e il flusso di autenticazione, mentre AD rimane la directory sottostante.
Ciò offre alle organizzazioni un percorso di migrazione pratico. Possono iniziare mantenendo gli utenti in Active Directory e successivamente spostarli in FoxIDs quando ha senso. La transizione non deve avvenire tutta in una volta.
OIDC e SAML 2.0 per gli utenti AD esistenti
Il valore principale è semplice: gli utenti Active Directory esistenti possono accedere alle moderne applicazioni OpenID Connect e SAML 2.0 tramite FoxIDs.
Per le applicazioni OpenID Connect, FoxIDs funge da provider OpenID. Le applicazioni possono utilizzare il rilevamento, l'autenticazione, il logout e l'endpoint UserInfo. FoxIDs supporta anche PKCE e diverse opzioni di autenticazione client.
Per le applicazioni SAML 2.0, FoxIDs può emettere asserzioni SAML e agire come provider di identità per le applicazioni che si basano sul Single Sign-On aziendale basato su SAML.
Ciò è utile quando un'organizzazione dispone di una combinazione di tipi di applicazioni. Un'applicazione può utilizzare OpenID Connect. Un altro potrebbe ancora richiedere SAML 2.0. Un terzo potrebbe successivamente aver bisogno dei token di accesso OAuth 2.0 per le API.
Gli utenti possono comunque essere gli stessi utenti AD.
Ciò evita una situazione in cui l'organizzazione deve duplicare gli utenti, creare integrazioni LDAP personalizzate o migrare le identità prima che la prima applicazione moderna possa essere pubblicata.
FoxIDs può invece colmare il divario tra la directory esistente e i protocolli che le applicazioni moderne si aspettano.
Utilizzare i gruppi AD come claims delle applicazioni moderne
L'autenticazione è solo una parte della storia. Le applicazioni devono anche sapere chi è l'utente e a cosa può accedere.
Active Directory spesso contiene già tali informazioni tramite le appartenenze ai gruppi. Un utente può essere membro di un gruppo Impiegati, Amministratori, Finanza o Assistenza clienti.
Directory Connector può restituire attributi AD configurati come claims e appartenenze ai gruppi AD configurate come claims. i claims di gruppo vengono in genere restituite come claims di ruolo ed è possibile includere gruppi nidificati.
Ciò rende possibile l'utilizzo delle strutture dei gruppi AD esistenti nelle applicazioni moderne.
Ad esempio, un gruppo AD come Employees può essere restituito come claim di ruolo con il valore Employees. Non è necessario che l'applicazione comprenda LDAP o interroghi direttamente Active Directory. È sufficiente leggere i claims rilasciate da FoxIDs.
Lo screenshot seguente mostra un utente Active Directory che è membro del gruppo Employees. Questa è l'appartenenza al gruppo esistente già gestita in Active Directory.
Quando l'utente accede tramite FoxIDs, l'appartenenza al gruppo AD può essere inclusa come claim di ruolo nel token dell'applicazione emesso. In questo esempio, il gruppo Employees viene restituito come claim di ruolo.
L'applicazione non ha bisogno di interrogare direttamente Active Directory. È sufficiente leggere i claims rilasciate da FoxIDs.
Si tratta di una netta separazione delle responsabilità.
Active Directory rimane il luogo in cui viene gestita l'iscrizione. FoxIDs trasforma le informazioni della directory in moderne claims di identità. L'applicazione riceve il risultato nel protocollo che già supporta.
Aggiungi MFA sopra l'accesso Active Directory
Uno dei principali vantaggi derivanti dall'utilizzo di FoxIDs rispetto a Active Directory è che l'accesso può essere rafforzato senza sostituire la directory.
FoxIDs supporta sia l'autenticazione semplice a due fattori che quella avanzata autenticazione a più fattori nel metodo di autenticazione dell'accesso. I fattori integrati supportati includono il codice SMS, il codice e-mail, il codice dell'app di autenticazione e il codice di ripristino. FoxIDs può anche utilizzare altri metodi di autenticazione, come OIDC o SAML 2.0, come passaggi MFA.
MFA può essere richiesto in diversi modi.
Può essere abilitato per utenti selezionati. Può essere richiesto nel metodo di autenticazione dell'accesso. Oppure un'applicazione può richiedere MFA quando necessario. Per OpenID Connect, l'applicazione può richiedere MFA con acr_values=urn:foxids:mfa. Per SAML 2.0, MFA può essere richiesto tramite il contesto di autenticazione.
Ciò è utile perché non tutte le applicazioni necessitano sempre dello stesso livello di sicurezza.
Una normale applicazione interna potrebbe richiedere solo nome utente e password. Un portale di amministrazione sensibile potrebbe richiedere ogni volta MFA. Un'altra applicazione può richiedere MFA solo per azioni specifiche o sessioni ad alto rischio.
FoxIDs può supportare questo tipo di modello step-up mentre il primo fattore è ancora convalidato rispetto a Active Directory.
In pratica, ciò significa che le organizzazioni possono mantenere AD come origine di utenti e password aggiungendo allo stesso tempo controlli di sicurezza moderni sull'esperienza di accesso.
Un percorso migratorio migliore
La sostituzione di una directory di identità raramente è solo una decisione tecnica. Colpisce utenti, applicazioni, operazioni IT, policy di sicurezza e processi di supporto.
Ecco perché è importante un percorso graduale.
Con FoxIDs, un'organizzazione può iniziare collegando Active Directory e consentendo agli utenti di accedere con le credenziali esistenti. FoxIDs può conservare un record utente interno con identificatori, proprietà, claims, impostazioni MFA e assegnazioni di accesso, mentre la directory esterna rimane autorevole per la convalida e la modifica della password.
Successivamente, se l'organizzazione desidera spostare completamente gli utenti in FoxIDs, dispone di un percorso per farlo.
Ciò è particolarmente utile per le organizzazioni che desiderano prima modernizzare l'autenticazione e poi decidere sulla migrazione degli utenti. Aiuta anche quando diversi gruppi di utenti si muovono a velocità diverse. I dipendenti possono rimanere in AD. Gli utenti esterni potrebbero già vivere in FoxIDs. Le nuove applicazioni potrebbero utilizzare OIDC. Le applicazioni aziendali legacy possono utilizzare SAML 2.0.
FoxIDs può sedersi nel mezzo e far funzionare insieme questi mondi.
Un'esperienza di accesso con marchio
L'autenticazione moderna non riguarda solo i protocolli e la sicurezza. Anche l'esperienza dell'utente è importante.
Quando gli utenti vengono reindirizzati per accedere, la pagina di accesso dovrebbe apparire familiare e affidabile. FoxIDs supporta la personalizzazione dell'esperienza di accesso, inclusi titolo del browser, icona del browser e CSS. Lo stesso flusso di accesso può anche guidare gli utenti attraverso l'autenticazione a più fattori quando è richiesta una maggiore sicurezza.
Ciò è utile sia per gli scenari interni che per quelli rivolti ai clienti.
L'accesso di un dipendente può utilizzare il nome e lo stile dell'organizzazione aggiungendo comunque MFA al nome utente e alla password Active Directory esistenti. Un portale clienti può utilizzare il marchio del cliente. Un'applicazione rivolta ai partner può offrire un'esperienza di accesso personalizzata senza modificare l'integrazione AD sottostante.
L'esempio seguente mostra una schermata di accesso con il marchio MFA per un'azienda fittizia, Northbridge Systems. L'utente accede con un account esistente e gli viene quindi chiesto di completare l'autenticazione a due fattori SMS in FoxIDs.
L'intero CSS utilizzato per questo esempio è incluso alla fine dell'articolo.
Il risultato è un livello di identità più completo: protocolli moderni, utenti supportati da AD, claims, MFA e un flusso di accesso con marchio.
Iniziare
Per iniziare non è necessario eseguire la migrazione di ogni applicazione o utente.
Un primo passo tipico è installare Directory Connector for Active Directory nell'ambiente Windows dove può raggiungere i controller di dominio. Da lì, FoxIDs può convalidare gli utenti tramite il connettore ed emettere risposte OpenID Connect o SAML 2.0 moderne alle applicazioni.
L'installazione diventa quindi un processo incrementale. Inizia con un'applicazione, mappa gli attributi AD e le appartenenze ai gruppi di cui l'applicazione ha bisogno, decidi se MFA deve essere richiesto e, facoltativamente, customise l'esperienza di accesso.
Una volta che la prima applicazione funziona, lo stesso modello può essere riutilizzato per applicazioni aggiuntive. Alcuni potrebbero utilizzare OpenID Connect, altri potrebbero utilizzare SAML 2.0 e le applicazioni sensibili possono richiedere MFA quando necessario.
Per i passaggi dettagliati della configurazione, consultare la documentazione FoxIDs Directory Connector for Active Directory.
Conclusione
Active Directory è ancora fondamentale per molte organizzazioni, ma le applicazioni moderne necessitano di un'autenticazione moderna.
FoxIDs Directory Connector for Active Directory consente di mantenere gli utenti, le password e i gruppi AD esistenti abilitando al contempo OpenID Connect, SAML 2.0, claims e da MFA a FoxIDs.
Offre alle organizzazioni un modo pratico per modernizzare l'autenticazione, migliorare la sicurezza e supportare nuove applicazioni senza sostituire tutto in una volta.
Per molte organizzazioni, questo è il percorso più realistico da seguire: mantenere ciò che già funziona, aggiungere il livello di identità moderna ed eseguire la migrazione quando l'azienda è pronta.
Esempio CSS per la schermata di accesso con il brand
Lo screenshot sopra utilizza CSS di seguito per definire lo stile della pagina di accesso FoxIDs per la società fittizia Northbridge Systems. Cambia il nome dell'azienda, la tavolozza dei colori, lo sfondo della pagina, la scheda di accesso, il colore del focus di input, i pulsanti, i collegamenti e il messaggio informativo.
In FoxIDs, questo CSS può essere aggiunto alla Scheda UI accesso del metodo di autenticazione dell'accesso insieme al titolo e all'icona del browser.
:root {
--brand-primary: #16324f;
--brand-primary-dark: #0f2439;
--brand-accent: #1f8a8a;
--brand-accent-dark: #176d6d;
--brand-accent-soft: #e9f6f6;
--brand-bg: #f4f8fb;
--brand-surface: rgba(255, 255, 255, 0.97);
--brand-border: #dbe5ec;
--brand-text: #14202b;
--brand-muted: #5f6f7f;
}
/* Page background */
body {
background:
radial-gradient(circle at top right, rgba(31, 138, 138, 0.12), transparent 28rem),
radial-gradient(circle at bottom left, rgba(22, 50, 79, 0.10), transparent 26rem),
linear-gradient(135deg, #ffffff 0%, var(--brand-bg) 100%);
color: var(--brand-text);
}
/* Page spacing */
.container.body-content {
padding-top: 3.5rem;
padding-bottom: 3.5rem;
}
/* Main content card */
.page-content {
background: var(--brand-surface);
border: 1px solid var(--brand-border);
border-radius: 1.25rem;
box-shadow: 0 1.25rem 3rem rgba(15, 36, 57, 0.10);
padding: 2.25rem 2.5rem;
}
/* Brand block */
.brand-content {
margin-bottom: 2rem;
}
/* Hide default text and replace with fictive company name */
.brand-content-text {
visibility: hidden;
height: auto;
}
.brand-content-text::before {
content: "Northbridge Systems";
visibility: visible;
display: block;
color: var(--brand-primary);
font-size: 2.9rem;
font-weight: 600;
line-height: 1.05;
letter-spacing: -0.03em;
}
.brand-content-text::after {
content: "Secure Login";
visibility: visible;
display: block;
color: var(--brand-accent);
font-size: 1.15rem;
font-weight: 500;
margin-top: 0.35rem;
letter-spacing: 0.01em;
}
/* Hide the default icon if you want a clean text-led brand */
.brand-content-icon {
display: none;
}
/* Main headings, e.g. SMS two-factor */
h1, .h1 {
color: var(--brand-primary);
font-weight: 300;
letter-spacing: -0.03em;
margin-bottom: 1.5rem;
}
/* General supporting text */
.info-message,
.info-message-filter,
.help-block,
.text-muted,
small {
color: var(--brand-muted) !important;
}
/* Labels */
label,
.label-control {
color: var(--brand-primary) !important;
font-weight: 500;
}
/* Inputs */
.form-control,
.input-control {
border: 1px solid #cfd9e2;
border-radius: 0.5rem;
color: var(--brand-text);
min-height: 2.8rem;
background-color: #ffffff;
}
.form-control:focus,
.input-control:focus,
.input:focus {
border-color: var(--brand-accent);
box-shadow: 0 0 0 0.2rem rgba(31, 138, 138, 0.18);
outline: none !important;
}
/* Primary button */
.btn-primary,
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show > .btn-primary.dropdown-toggle {
color: #ffffff;
background-color: var(--brand-primary);
border-color: var(--brand-primary);
border-radius: 0.5rem;
font-weight: 500;
padding-left: 1.15rem;
padding-right: 1.15rem;
}
.btn-primary:hover,
.btn-primary:active,
.btn-primary:not(:disabled):not(.disabled):active {
background-color: var(--brand-primary-dark);
border-color: var(--brand-primary-dark);
}
.btn-primary:focus,
.btn-primary:not(:disabled):not(.disabled).active:focus,
.btn-primary:not(:disabled):not(.disabled):active:focus,
.show > .btn-primary.dropdown-toggle:focus {
box-shadow: 0 0 0 0.2rem rgba(22, 50, 79, 0.22);
}
/* Disabled button */
.btn-primary.disabled,
.btn-primary:disabled {
color: #ffffff;
background-color: #8ea3b7;
border-color: #8ea3b7;
}
/* Links */
a,
a:hover,
.btn-link,
.btn-link:hover,
.btn-link:focus,
.btn-link:not(:disabled):not(.disabled):active,
.btn-link:not(:disabled):not(.disabled).active,
.show > .btn-link.dropdown-toggle {
color: var(--brand-accent-dark);
text-decoration: none;
}
a:hover,
.btn-link:hover {
text-decoration: underline;
}
/* Checkbox */
.form-check-label {
color: var(--brand-text) !important;
font-weight: 400;
}
/* Optional info panel before or inside login box */
div.page-content::before {
content: "Sign in with your company account. Multi-factor authentication may be required for added security.";
display: block;
background: var(--brand-accent-soft);
color: var(--brand-primary);
border: 1px solid #cfe7e7;
border-radius: 0.75rem;
padding: 0.9rem 1rem;
margin-bottom: 1.5rem;
font-size: 0.96rem;
line-height: 1.45;
}
/* Footer */
.footer,
footer {
color: var(--brand-muted);
font-size: 0.85rem;
}
/* Mobile */
@media (max-width: 767.98px) {
.container.body-content {
padding-top: 1.5rem;
padding-bottom: 1.5rem;
}
.page-content {
border-radius: 0.9rem;
padding: 1.5rem;
box-shadow: 0 0.75rem 2rem rgba(15, 36, 57, 0.08);
}
.brand-content-text::before {
font-size: 2.2rem;
}
.brand-content-text::after {
font-size: 1rem;
}
}