GitHub kimlik doğrulaması nasıl çalışır?

Tamamlandı

Önceki ünitede ekip, kuruluş ve kuruluş düzeyindeki tipik yönetim görevleri hakkında bilgi edindiyseniz. Bu ünitede, kuruluş sahipleri tarafından gerçekleştirilen ve kullanıcıların GitHub kimlik doğrulamasını ayarlayıp denetleyen en yaygın yönetim görevlerinden birini keşfedeceksiniz.

GitHub'daki kimlik doğrulama seçenekleri

GitHub ile kimlik doğrulaması için çeşitli seçenekler vardır:

Kullanıcı adı ve parola

Yöneticiler, kullanıcıların bazen "temel" HTTP kimlik doğrulama düzeni olarak bilinen varsayılan kullanıcı adı ve parola kimlik doğrulama yöntemini kullanmaya devam etmelerine izin verebilir.

Uyarı

GitHub artık Git işlemleri veya API kullanımı için parola kimlik doğrulamasını desteklemez. Bu ünitede listelenen diğer seçeneklerden birini (veya birkaçını) kullanmanızı kesinlikle öneririz.

Kişisel erişim belirteçleri

Kişisel erişim belirteci ekranının ekran görüntüsü.

Kişisel erişim belirteçleri (PAT), GitHub API'sini veya komut satırını kullanırken GitHub'da kimlik doğrulaması için parola kullanmaya alternatiftir. Kullanıcılar GitHub'ın ayarlar seçeneği aracılığıyla bir belirteç oluşturur ve belirteç izinlerini bir depoya veya kuruluşa bağlar. Kullanıcılar git komut satırı aracını kullanarak GitHub ile etkileşime geçtiğinde, kullanıcı adları ve parolaları istendiğinde belirteç bilgilerini girebilirler.

SSH anahtarları

Kullanıcılar, kişisel erişim belirteçlerini kullanmaya alternatif olarak SSH anahtarları yardımıyla SSH aracılığıyla uzak sunuculara ve hizmetlere bağlanabilir ve kimlik doğrulaması yapabilir. SSH anahtarları, kullanıcıların her etkileşim için kullanıcı adlarını ve kişisel erişim belirteçlerini sağlama gereksinimini ortadan kaldırır.

SSH'yi ayarlarken kullanıcılar bir SSH anahtarı oluşturur, ssh aracısına ekler ve ardından anahtarı GitHub hesaplarına ekler. SSH anahtarını ssh aracısına eklemek, SSH anahtarının ek bir güvenlik katmanı olarak parolaya sahip olmasını sağlar. Kullanıcılar git'in yerel kopyasını parolayı otomatik olarak sağlayacak şekilde yapılandırabilir veya GitHub ile etkileşime geçmek için git komut satırı aracını her kullandıklarında el ile sağlayabilirler.

SSH anahtarlarını, SAML çoklu oturum açma (SSO) kullanan bir kuruluşa ait bir depoyla bile kullanabilirsiniz. Kuruluş SSH sertifikaları sağlıyorsa, kullanıcılar sertifikayı GitHub hesaplarına eklemeden kuruluşun depolarına erişmek için de kullanabilir.

Anahtarları dağıtma

Dağıtım anahtarları, GitHub'da bir kullanıcıya tek bir depoya erişim izni veren başka bir SSH anahtarı türüdür. GitHub, anahtarın genel bölümünü kişisel kullanıcı hesabı yerine doğrudan depoya ekler ve anahtarın özel bölümü kullanıcının sunucusunda kalır. Dağıtım anahtarları varsayılan olarak salt okunur durumdadır, ancak bunları bir depoya eklerken yazma erişimi verebilirsiniz.

Çatal ayarlarını yapılandırmak için:

  1. Deponun Ayarları'na gidin.
  2. Sol kenar çubuğundaki Güvenlik'in altında Anahtarları dağıt'a tıklayın.
  3. Yeni bir anahtar oluşturmak için Dağıtım anahtarı ekle seçeneğini bulun.

Anahtarları dağıt seçeneğinde Dağıtım anahtarı ekle seçeneğini gösteren ekran görüntüsü.

GitHub'ın ek güvenlik seçenekleri

GitHub, hesapların ve kuruluş kaynaklarının korunmasına yardımcı olmak için çeşitli güvenlik seçenekleri sunar.

İki öğeli kimlik doğrulama

İki öğeli kimlik doğrulama ekranının ekran görüntüsü.

Bazen çok faktörlü kimlik doğrulaması (MFA) olarak da bilinen iki öğeli kimlik doğrulaması (2FA), GitHub hesabınıza ek bir koruma katmanı ekler. 2FA ile kullanıcılar kullanıcı adı ve parolalarıyla oturum açar ve ardından ikinci bir kimlik doğrulama biçimi sağlar.

GitHub birkaç ikinci faktör seçeneğini destekler:

  • Zamana dayalı tek seferlik kodlar oluşturan Authenticator uygulamaları (Microsoft Authenticator, Google Authenticator veya Authy gibi).
  • FIDO2/WebAuthn'ı destekleyen donanım güvenlik anahtarları (YubiKey veya Titan Güvenlik Anahtarı gibi).
  • Parolasız, kimlik avına dayanıklı kimlik doğrulaması için geçiş anahtarları.
  • Desteklenen ancak diğer seçeneklerden daha az güvenli kabul edilen ve birincil yöntem olarak önerilmeyen SMS tabanlı kodlar.

2FA zorlaması:

  • GitHub Team ve GitHub Enterprise Cloud'daki kuruluşlar için kuruluş sahipleri, üyelerin, dış işbirlikçilerin ve faturalama yöneticilerinin kişisel hesapları için 2FA'yı etkinleştirmesini gerektirebilir.
  • Kurumsal Yönetilen Kullanıcılar (EMU' lar) ve GitHub Enterprise Server (GHE.com): Yöneticiler yalnızca kurumsal olarak yönetilen hesaplar için 2FA gerektirebilir, ancak kullanıcıların kişisel GitHub.com hesaplarında 2FA'yı zorunlu kılamaz.

2FA'nın zorunlu haleilmesi, kuruluşların yetkisiz erişimden korunmasına yardımcı olur ve depoların ve hassas verilerin güvenliğini güçlendirir.

SAML SSO

Kullanıcılarınızın kimliklerini bir kimlik sağlayıcısı (IdP) ile merkezi olarak yönetiyorsanız, kuruluşunuzun GitHub'daki kaynaklarını korumak için SAML çoklu oturum açma (SSO) yapılandırabilirsiniz. SAML SSO, kuruluş ve kuruluş sahiplerinin depolara, sorunlara, çekme isteklerine ve daha fazlasına erişimi denetlemesine ve güvenliğini sağlamasına olanak tanır. GitHub, kaynaklara erişirken kullanıcıları kuruluşun IdP'si ile kimlik doğrulaması yapmak üzere yeniden yönlendirir.

GitHub, SAML 2.0 standardını uygulayan tüm kimlik sağlayıcılarını destekler ve aşağıdakiler de dahil olmak üzere çeşitli popüler sağlayıcılar için resmi destek sunar:

  • Active Directory Federasyon Hizmetleri (AD FS) (AD FS).
  • Microsoft Entra Kimlik (ID)
  • Okta'ya gidin.
  • OneLogin.
  • PingOne.

LDAP (GitHub Enterprise Server)

LDAP (Basit Dizin Erişim Protokolü), kullanıcı dizini bilgilerine erişmek ve bunları yönetmek için yaygın olarak kullanılan bir protokoldür. GitHub Enterprise Server'da LDAP tümleştirmesi, mevcut şirket dizininizde kullanıcıların kimliğini doğrulamanıza ve depo erişimini merkezi olarak yönetmenize olanak tanır.

GitHub Enterprise Server aşağıdakiler gibi önemli LDAP hizmetleriyle tümleştirilir:

GitHub Enterprise Server, aşağıdaki popüler LDAP hizmetleriyle tümleştirilebilir:

  • Active Directory.
  • Oracle Directory Server Enterprise Sürümü.
  • OpenLDAP.
  • Dizin'i açın.