Firebase API anahtarınız sızdırıldığında yapmanız gerekenler:
-
API Anahtarını Değiştirin: Firebase konsolunda eski API anahtarınızı iptal edip yeni bir anahtar oluşturun.
- Firebase Konsoluna gidin: https://console.firebase.google.com/
- Projenizi seçin
- "Project Settings" > "General" sekmesine gidin
- "Web API Key" kısmındaki anahtarı döndürün/yenileyin
-
Ortam Değişkenlerini Güncelleyin: Tüm .env.local dosyalarınızı yeni API anahtarıyla güncelleyin.
NEXT_PUBLIC_FIREBASE_API_KEY=yeni_api_anahtarınız -
Güvenlik Kurallarını Kontrol Edin: Firebase Realtime Database güvenlik kurallarınızı gözden geçirin ve sadece gerekli işlemlere izin verin.
- Firebase Konsolunda "Realtime Database" > "Rules" bölümüne gidin
- Aşağıdaki gibi güvenli kurallar tanımlayın:
{ "rules": { "rooms": { "$roomId": { ".read": true, ".write": true, "messages": { ".read": true, ".write": true, "$messageId": { ".validate": "newData.hasChildren(['sender', 'text', 'timestamp'])" } } } } } } -
API Kısıtlamaları Ekleyin: Firebase konsolunda API anahtarınıza kısıtlamalar ekleyin:
- Firebase Konsolunda "Project Settings" > "API restrictions" bölümüne gidin
- Sadece uygulamanızın ihtiyaç duyduğu API'lere izin verin
- Referrer kısıtlamaları ekleyin
-
Kodunuzu Gözden Geçirin: Gizli anahtarların kodda hardcoded olarak bulunmadığından emin olun:
- Tüm yapılandırma bilgilerini ortam değişkenlerinden alın
- .gitignore dosyasında .env.local ve diğer gizli dosyaların listelendiğinden emin olun
- Gizli bilgileri içeren commitler için git history'i temizleyin
- Authentication Yapılandırma: Kullanıcı doğrulama sistemini etkinleştirin
- HTTPS Kullanımı: Tüm Firebase isteklerinin HTTPS üzerinden yapıldığından emin olun
- Firebase Security Rules: Veritabanı ve depolama kurallarınızı doğru yapılandırın
- Düzenli Denetimler: Güvenlik yapılandırmanızı düzenli olarak denetleyin
- Logları İzleme: Firebase konsolunda anormal aktiviteleri izleyin
API anahtarınız veya diğer gizli bilgileriniz sızdırıldığında, hemen değiştirin ve yukarıdaki adımları takip edin. Bu durumu bir güvenlik ihlali olarak değerlendirin ve gerekli önlemleri alın.
Eğer Firebase entegrasyonu sonrası build veya bağlantı sorunları yaşarsanız, aşağıdaki adımları izleyin:
-
Önbelleği Temizleyin: Next.js önbelleğini temizleyin:
rm -rf .next # veya Windows için: Remove-Item -Recurse -Force .next -
NPM Önbelleğini Temizleyin:
npm cache clean --force -
Bağımlılıkları Yeniden Yükleyin:
npm install -
Fallback Mekanizmasını Kontrol Edin: Firebase yapılandırma dosyasında kritik değerler (apiKey, databaseURL) için fallback değerlerinin olduğundan emin olun.
-
Ortam Değişkenlerini Doğrulayın:
.env.localdosyasında tüm Firebase konfigürasyon değerlerinin doğru şekilde ayarlandığından emin olun. -
Yeniden Build Alın:
npm run build -
Yeniden Başlatın:
npm run dev