Informazioni sui modelli aziendali di GitHub
In questa unità verranno esaminati i diversi modelli di distribuzione GitHub Enterprise, GitHub Enterprise Cloud (GHEC) e GitHub Enterprise Server (GHES) e si apprenderà come la gestione degli utenti, la sicurezza e la conformità differiscono tra le configurazioni degli utenti standard e gestite dall'organizzazione.
Modalità di gestione degli utenti
GitHub Enterprise Cloud (GHEC) è una soluzione basata sul cloud personalizzata per le organizzazioni che necessitano della flessibilità e della scalabilità dell'infrastruttura di GitHub mantenendo al tempo stesso sicurezza e conformità di livello aziendale. Offre funzionalità come la gestione centralizzata degli utenti, le opzioni di localizzazione dei dati e l'integrazione con provider di identità come SAML e SCIM per l'autenticazione Single Sign-On e il provisioning degli utenti.
GHEC è ideale per i team distribuiti a livello globale, in quanto garantisce disponibilità elevata, backup automatizzati e accesso facile agli strumenti di collaborazione affidabili di GitHub. Supporta la conformità alle normative e fornisce log di controllo dettagliati per la governance. Con GHEC, le organizzazioni possono sfruttare le funzionalità avanzate di GitHub senza gestire l'infrastruttura locale.
Modello utente standard
Questo è il modello utente tradizionale in GitHub, in cui gli utenti gestiscono il proprio account.
Caratteristiche del modello utente standard:
- Gli utenti gestiscono gli account, inclusi nomi utente, indirizzi di posta elettronica e impostazioni personali.
- I metodi di autenticazione vengono configurati dagli utenti (ad esempio, OAuth, password).
- La connessione alle organizzazioni o agli account aziendali viene stabilita tramite inviti.
- Gli amministratori hanno un controllo limitato sugli account utente una volta connessi a un'organizzazione aziendale.
- Spesso usato in aziende o organizzazioni su scala più piccola senza esigenze di gestione centralizzate rigorose.
Modello Enterprise Managed User (EMU)
Questo è il modello progettato per le organizzazioni che richiedono la gestione centralizzata degli account utente, offrendo funzionalità di controllo e conformità migliori.
Nel modello EMU:
- Gli account utente sono completamente gestiti dall'azienda.
- L'autenticazione viene gestita tramite il provider di identità dell'organizzazione (ad esempio, SAML, SCIM).
- Gli amministratori hanno il controllo su nomi utente, indirizzi di posta elettronica e ciclo di vita degli utenti (creazione, disattivazione).
- Gli utenti gestiti possono partecipare solo all'azienda a cui appartengono e non possono unirsi in modo indipendente ad altre organizzazioni.
- Spesso usato da aziende o organizzazioni di grandi dimensioni che richiedono la conformità ai criteri di governance più rigorosi.
GitHub Enterprise Cloud (GHEC) con localizzazione dei dati
GitHub Enterprise Cloud (GHEC) con residenza dei dati è una funzionalità importante di GHEC per le organizzazioni che devono rispettare le normative sulla protezione dei dati assicurando che dati specifici vengano archiviati in determinate aree geografiche.
Consente agli utenti di:
Aree di residenza dei dati:
- GitHub fornisce aree predefinite (ad esempio, Stati Uniti, Europa) in base alle esigenze di conformità.
Tipi di dati trattati:
- Contenuto del repository: codice, problemi, richieste pull e dati correlati al repository.
- Metadati: include log di controllo, eventi utente e impostazioni.
Crittografia e sicurezza:
- Tutti i dati in transito e a riposo vengono crittografati.
- Conformità agli standard di sicurezza regionali e globali (ad esempio, ISO 27001, SOC 2).
Archiviazione e failover a livello di area:
- I dati vengono archiviati nell'area selezionata con meccanismi di disponibilità elevata e ripristino di emergenza.
- Alcuni tipi di dati di backup possono essere replicati all'esterno dell'area, ma rimangono crittografati.
GitHub Enterprise Server (GHES)
GitHub Enterprise Server (GHES) è una versione self-hosted di GitHub progettata per le organizzazioni che richiedono il controllo completo sull'istanza di GitHub. È ideale per le aziende che vogliono ospitare i propri repository e i dati associati in locale o in un ambiente cloud privato per motivi di conformità, sicurezza o prestazioni.
Funzionalità principali di GitHub Enterprise Server
- Self-hosting:
- GHES viene distribuito all'interno dell'infrastruttura dell'organizzazione, in locale o in un cloud privato.
- Fornisce il controllo completo sull'archiviazione, i backup e il ripristino di emergenza dei dati.
- Sicurezza avanzata:
- I dati rimangono all'interno dell'ambiente dell'organizzazione, garantendo la conformità ai rigidi requisiti di residenza, privacy o sicurezza dei dati.
- Si integra con i sistemi di autenticazione aziendali (ad esempio LDAP, SAML, Active Directory).
- Personalizzazione e controllo:
- Controllo completo sulle impostazioni del repository, l'accesso utente e le autorizzazioni.
- Consente integrazioni ed estensioni personalizzate, ad esempio gli strumenti DevOps interni o le pipeline CI/CD.
- Ottimizzazione delle prestazioni:
- Ottimizzato per le organizzazioni con repository di grandi dimensioni o team distribuiti.
- Può essere ridimensionato per gestire carichi di lavoro pesanti allocando risorse aggiuntive ( ad esempio CPU, RAM).
- Conformità:
- Ideale per i settori con requisiti normativi rigorosi (ad esempio, assistenza sanitaria, finanza).
- Offre log di controllo, monitoraggio delle attività utente e crittografia dei dati per soddisfare gli standard di conformità.
Componenti di GHES
- Applicazione GitHub:
- L'interfaccia e la funzionalità di base ,ad esempio repository, richieste pull, problemi, sono simili a GitHub.com.
- Dashboard amministrativo:
- Fornisce strumenti per la gestione di utenti, team e organizzazioni.
- Include le impostazioni per l'accesso al repository, i backup e gli aggiornamenti.
- Strumenti di amministrazione del sistema:
- Strumenti per la gestione della configurazione del server, l'allocazione delle risorse e il monitoraggio delle prestazioni.
- Backup e ripristino di emergenza:
- Funzionalità per la creazione e il ripristino dei backup per evitare la perdita di dati.
- Monitoraggio e registrazione:
- Strumenti di monitoraggio integrati come Prometheus e Grafana per la salute del server.
- Log per la risoluzione dei problemi e il controllo.