Creative Studio
كيف أفعل ذلك؟

API Anahtarını Yanlışlıkla GitHub'a Atarsanız Ne Olur? Bu Koruma Sizi Durdurabilir

API Anahtarını Yanlışlıkla GitHub'a Atarsanız Ne Olur? Bu Koruma Sizi Durdurabilir

Bir yazılım geliştirirken en tehlikeli hatalardan biri şudur:

Kodun içine bir API anahtarı veya erişim sırrı yazmak.

Sonra:

git push

dersiniz.

Ve anahtar GitHub'a gider.

GitHub'ın Push Protection özelliği tam olarak bu tür kazaları önlemeye yardımcı oluyor.

GitHub'ın güncel dokümantasyonuna göre Push Protection, desteklenen gizli bilgilerin GitHub'a gönderilmesini tespit edip gönderimi engelleyebiliyor.

Hangi bilgilerden bahsediyoruz?

Örneğin:

  • API anahtarları

  • Erişim belirteçleri

  • Bulut servis anahtarları

  • Kimlik doğrulama sırları

  • Bazı servis sağlayıcılarına ait gizli bilgiler

gibi veriler.

Sistem nasıl çalışıyor?

Örneğin kodunuzda yanlışlıkla bir gizli anahtar olduğunu düşünelim.

Kod:

git push

ile GitHub'a gönderilmeye çalışılıyor.

GitHub desteklenen bir gizli bilgi tespit ederse gönderimi engelleyebilir.

Böylece sır GitHub'a ulaşmadan önce durdurulmuş olur.

GitHub size ne gösteriyor?

Push engellendiğinde GitHub:

  • Tespit edilen gizli bilginin türünü

  • Nerede bulunduğunu

  • Push işleminin neden durdurulduğunu

gösterebiliyor.

“Ama o gerçek bir API anahtarı değil”

Bazen sistem yanlış pozitif üretebilir.

GitHub'ın arayüzünde bunun için:

It's a false positive

seçeneği bulunuyor.

Yani tespit edilen metnin gerçek bir gizli bilgi olmadığını belirtebilirsiniz.

“Test için kullandığım anahtar”

GitHub'ın Push Protection arayüzünde testlerde kullanılan ve risk taşımayan bir değer için ayrı bir gerekçe de bulunuyor:

It's used in tests.

Ancak gerçek bir gizli anahtarı test dosyasına koymak yine de iyi bir uygulama değildir.

“Sonra düzeltirim” seçeneği neden tehlikeli?

GitHub arayüzünde gerçek bir sır olduğunu bilip daha sonra düzeltmek istediğinizi belirtebileceğiniz bir seçenek de bulunuyor.

Ama burada kritik nokta şu:

Gerçek bir API anahtarını GitHub'a gönderdikten sonra sadece koddan silmek yeterli olmayabilir.

Çünkü anahtarın erişim yetkisi artık açığa çıkmış olabilir.

Bu durumda ilgili servis sağlayıcısında:

Anahtarı iptal et → yeni anahtar oluştur

yaklaşımı daha güvenli olabilir.

Push Protection neden önemli?

Çünkü insan hatasını tamamen ortadan kaldırmaz ama son anda fren görevi görebilir.

Örneğin:

Geliştirici → yanlışlıkla API anahtarını commit etti → git push → GitHub engelledi

şeklinde bir güvenlik bariyeri oluşur.

GitHub'a hiç gizli bilgi koymamak daha iyi

Push Protection iyi bir savunma katmanı ama:

“GitHub beni yakalar.”

diye API anahtarlarını kod içine yazmak doğru değil.

Daha iyi yöntemler:

  • Ortam değişkenleri

  • GitHub Actions Secrets

  • Harici secret yönetim sistemleri

  • Yerel .env dosyaları

  • Gizli bilgileri kaynak kodundan ayrı tutmak

gibi yöntemleri kullanmaktır.

Gizli bilgi GitHub'a gittiyse

Öncelik:

  1. Anahtarı tespit edin.

  2. Anahtarı kullanan servise gidin.

  3. Anahtarı iptal edin.

  4. Yeni anahtar oluşturun.

  5. Koddan eski anahtarı kaldırın.

  6. Gerekirse Git geçmişindeki izleri temizleme prosedürünü uygulayın.

  7. Yeni anahtarı güvenli bir secret yönetimine taşıyın.

En kritik nokta: Anahtar GitHub'a gerçekten ulaştıysa, “commit'i sildim, sorun bitti” diye düşünmeyin.

Yorumlar (0)

Henüz yorum yapılmamış. İlk yorumu siz yapın!

Bir Yorum Bırakın

İlginizi Çekebilir

Size nasıl yardımcı olabiliriz?
ZerX
ZerX AI Çevrimiçi
Merhaba! Ben ZerX ⚡
Zertucha laboratuvarından geliyorum. Size nasıl yardımcı olabilirim?

Sohbeti Temizle

Tüm konuşma geçmişiniz kalıcı olarak silinecektir. Emin misiniz?

AI
ZerX