Jak funguje ověřování GitHubu?

Dokončeno

V předchozí lekci jste se dozvěděli o typických úkolech správy na úrovni týmu, organizace a podniku. V této lekci prozkoumáte jednu z nejběžnějších úloh správy prováděných vlastníky organizace, která nastavuje a řídí ověřování uživatelů na GitHubu.

Možnosti ověřování GitHubu

Pro ověřování pomocí GitHubu existuje několik možností:

Uživatelské jméno a heslo

Správci můžou uživatelům umožnit pokračovat v používání výchozí metody ověřování pomocí uživatelského jména a hesla, někdy označovaného jako "základní" schéma ověřování HTTP.

Poznámka:

GitHub už nepodporuje ověřování heslem pro operace Gitu nebo použití rozhraní API. Důrazně doporučujeme použít jednu (nebo několik) dalších možností uvedených v této lekci.

Osobní přístupové tokeny (PAT)

Snímek obrazovky s osobním přístupovým tokenem

Osobní přístupové tokeny (PAT) jsou alternativou k použití hesel pro ověřování na GitHubu při použití rozhraní API GitHubu nebo příkazového řádku. Uživatelé vygenerují token prostřednictvím možnosti nastavení GitHubu a prováže oprávnění tokenu k úložišti nebo organizaci. Když uživatelé pracují s GitHubem pomocí nástroje příkazového řádku Git, můžou zadat informace o tokenu, když se jim zobrazí výzva k zadání uživatelského jména a hesla.

Klíče SSH

Jako alternativu k používání tokenů osobního přístupu se uživatelé můžou připojit ke vzdáleným serverům a službám přes SSH a ověřit je pomocí klíčů SSH. Klíče SSH eliminují potřebu uživatelů zadat uživatelské jméno a token pat pro každou interakci.

Při nastavování SSH uživatelé vygenerují klíč SSH, přidají ho do agenta ssh a pak tento klíč přidají do svého účtu GitHubu. Přidání klíče SSH do agenta ssh-agent zajišťuje, že klíč SSH má přístupové heslo jako další vrstvu zabezpečení. Uživatelé můžou nakonfigurovat místní kopii Gitu tak, aby automaticky dodávali přístupové heslo, nebo ho můžou zadat ručně pokaždé, když k interakci s GitHubem používají nástroj příkazového řádku Git.

Můžete dokonce použít klíče SSH s úložištěm vlastněným organizací, která používá jednotné přihlašování SAML .SSO. Pokud organizace poskytuje certifikáty SSH, můžou ho uživatelé použít také pro přístup k úložištím organizace bez přidání certifikátu do účtu GitHubu.

Nasazení klíčů

Klíče nasazení jsou dalším typem klíče SSH na GitHubu, který uživateli uděluje přístup k jednomu úložišti. GitHub připojí veřejnou část klíče přímo k úložišti místo osobního uživatelského účtu a soukromá část klíče zůstane na serveru uživatele. Klíče nasazení jsou ve výchozím nastavení jen pro čtení, ale při přidávání do úložiště jim můžete udělit přístup k zápisu.

Konfigurace nastavení forku:

  1. Přejděte do nastavení úložiště.
  2. Na levém bočním panelu v části Zabezpečení klikněte na Nasadit klíče.
  3. Vyhledejte možnost Přidat klíč pro nasazení a vytvořte nový klíč.

Snímek obrazovky znázorňující přidání klíče pro nasazení v možnosti Nasadit klíče

Přidání možností zabezpečení GitHubu

GitHub nabízí řadu možností zabezpečení, které pomáhají chránit účty a prostředky organizace.

Dvojúrovňové ověřování

Snímek obrazovky dvoufaktorového ověřování

Dvojúrovňové ověřování (2FA), někdy označované jako vícefaktorové ověřování (MFA), přidává do vašeho účtu GitHub další vrstvu ochrany. S 2FA se uživatelé přihlašují pomocí svého uživatelského jména a hesla a pak poskytují druhou formu ověřování.

GitHub podporuje několik možností druhého faktoru:

  • Aplikace Authenticator (například Microsoft Authenticator, Google Authenticator nebo Authy), které generují jednorázové kódy založené na čase.
  • Klíče zabezpečení hardwaru (například YubiKey nebo Titan Security Key), které podporují FIDO2/WebAuthn.
  • Přístupové klíče pro ověřování bez hesla, ověřování odolné proti útokům phishing.
  • Kódy založené na sms, které jsou podporované, ale považují se za méně bezpečné než jiné možnosti, a nedoporučuje se jako primární metoda.

Vynucení 2FA:

  • Pro organizace v týmu GitHubu a v cloudu GitHub Enterprise můžou vlastníci organizace vyžadovat členy, externí spolupracovníky a správce fakturace, aby povolili 2FA pro své osobní účty.
  • Podnikoví spravovaní uživatelé (EMU) a GitHub Enterprise Server (GHE.com): Správci můžou vyžadovat 2FA jenom pro účty spravované podniky, ale nemůžou vynutit 2FA u osobních GitHub.com účtů uživatelů.

Vynucení 2FA pomáhá chránit organizace před neoprávněným přístupem a posiluje zabezpečení úložišť a citlivých dat.

Jednotné přihlašování SAML

Pokud centrálně spravujete identity uživatelů pomocí zprostředkovatele identity (IDP), můžete nakonfigurovat jednotné přihlašování SAML (SSO) pro ochranu prostředků vaší organizace na GitHubu. Jednotné přihlašování SAML umožňuje organizacím a podnikovým vlastníkům řídit a zabezpečit přístup k úložištím, problémům, žádostem o přijetí změn a dalším akcím. Při přístupu k prostředkům GitHub přesměruje uživatele, aby se ověřili u IdP (zprostředkovatele identity) organizace.

GitHub podporuje všechny zprostředkovatele identity, které implementují standard SAML 2.0, s oficiální podporou několika oblíbených poskytovatelů, včetně:

  • Active Directory Federation Services (AD FS) (AD FS).
  • Microsoft Entra ID.
  • Okta.
  • OneLogin.
  • PingOne.

LDAP (GitHub Enterprise Server)

LDAP (Lightweight Directory Access Protocol) je široce používaný protokol pro přístup k informacím o adresáři uživatelů a jejich správě. Integrace LDAP na GitHub Enterprise Serveru umožňuje ověřovat uživatele v existujícím firemním adresáři a centrálně spravovat přístup k úložišti.

GitHub Enterprise Server se integruje s hlavními službami LDAP, jako jsou:

GitHub Enterprise Server se integruje s oblíbenými službami LDAP, mezi které patří:

  • Active Directory.
  • Edice Enterprise adresářového serveru Oracle.
  • OpenLDAP.
  • Otevřete adresář.