Gestione delle identità e dell'accesso utente
L'autenticazione è il gateway per l'ecosistema di sviluppo software aziendale. L'interazione di ogni utente con GitHub inizia con la verifica dell'identità. Anche se i singoli account possono basarsi su nomi utente e password, la sicurezza aziendale avanzata impone l'autenticazione a due fattori (2FA) o metodi più avanzati, ad esempio passkey e accesso biometrico. Bilanciare l'usabilità con la sicurezza è fondamentale, soprattutto in un ambiente di sviluppo rapido.
Autenticazione moderna in GitHub Enterprise
Per garantire un'esperienza di autenticazione sicura e semplificata, GitHub supporta più metodi moderni che si integrano con i sistemi di gestione delle identità:
Chiavi di accesso e WebAuthn
- Le passkey sono un metodo di accesso senza password, associato a un dispositivo fisico e resistente al phishing.
- WebAuthn supporta fattori biometrici e token hardware come YubiKey.
- Questi metodi riducono significativamente gli attacchi basati sulle credenziali e migliorano l'esperienza utente di accesso.
GitHub Mobile per l'autenticazione a due fattori
Gli utenti possono eseguire l'autenticazione con GitHub Mobile, che supporta le notifiche push per l'approvazione rapida e sicura, migliorando 2FA senza interrompere i flussi di lavoro.
App OAuth e GitHub
- Le app OAuth usano il flusso OAuth 2.0 di GitHub per autenticare gli utenti e concedere l'accesso con ambito alle applicazioni esterne.
- Le app GitHub si autenticano come singole installazioni con permessi dettagliati e sono ideali per le pipeline CI/CD e di automazione.
Utenti gestiti dall'organizzazione (EMU)
In GitHub Enterprise Cloud, le EMU garantiscono che l'autenticazione avvenga rigorosamente tramite il provider di identità (IdP). Questo modello:
- Limita l'accesso solo agli account gestiti dall'organizzazione.
- Applica il controllo centralizzato su identità, credenziali e criteri di sessione.
Gestione dell'organizzazione con SAML SSO
Una funzionalità di base per l'autenticazione di livello aziendale è SAML Single Sign-On (SSO). SAML collega il tuo IdP a GitHub, consentendo agli utenti di accedere a diversi servizi usando un unico set di credenziali. GitHub utilizza l'IdP per verificare l'identità dell'utente prima di concedere l'accesso alle risorse dell'organizzazione o dell'impresa.
Quando gli utenti accedono a GitHub, possono vedere le organizzazioni a cui appartengono, ma l'accesso ai dati del repository richiede la riautenticazione SAML tramite il fornitore di identità.
In qualità di Amministratore dell'impresa, le tue responsabilità includono:
- Autorizzazione dell'accesso in base al ruolo e alla necessità di conoscenza.
- Monitoraggio e controllo dell'attività dell'utente.
- Definizione dell'ambito delle autorizzazioni e riduzione della superficie di attacco.
Per configurare l'accesso SSO SAML per l'organizzazione, integrare IdP con GitHub. I provider supportati includono:
- Active Directory Federation Services (ADFS)
- Microsoft Entra ID
- Okta
- OneLogin
- PingOne
- Shibboleth
Nota
GitHub offre un supporto limitato per i provider di identità che implementano lo standard SAML 2.0.
Controlli di accesso e autorizzazione aziendali
L'accesso in GitHub è governato da un modello di autorizzazione affidabile a più livelli:
Token di accesso personali con granularità fine
A differenza dei PAT classici, i PAT a granularità fine:
- Limitare l'accesso a repository e ambiti specifici.
- Supportare la scadenza automatica per ridurre l'esposizione ai rischi.
- Offrire controlli avanzati di tracciabilità e conformità.
Ruoli personalizzati del repository
Gli amministratori possono definire ruoli personalizzati che si estendono oltre i set di autorizzazioni predefiniti. Ciò supporta:
- Accesso delegato personalizzato per flussi di lavoro univoci.
- Applicazione dei privilegi minimi per i repository sensibili.
Imposizione dei criteri di sicurezza
È possibile applicare controlli di sicurezza globali, ad esempio:
- 2FA obbligatoria per tutti gli utenti.
- Elenchi di indirizzi IP consentiti per limitare l'accesso alle reti approvate.
- Blocco delle app OAuth non verificate, a meno che non siano approvate in modo esplicito.
Controlli a livello di organizzazione e di azienda
- I controlli a livello di organizzazione includono ruoli predefiniti, accesso basato su team e gestione di collaboratori esterni.
- La Governance a livello aziendale include:
- Imposizione centralizzata di SAML.
- Restrizioni di accesso basate su IdP.
- Applicazione dei criteri globali tramite GitHub Enterprise Cloud.
Visibilità del repository e accesso interno
Quando i membri dell'organizzazione creano repository, possono scegliere tra opzioni di visibilità pubblica, privata o interna :
- Pubblico: disponibile per chiunque su Internet.
- Privato: limitato agli utenti selezionati.
- Interno: visibile a tutti i membri all'interno dell'organizzazione, ma nascosti da utenti esterni.
Questa granularità garantisce che il codice sorgente, la documentazione e altri asset vengano condivisi solo con gli stakeholder appropriati.