Çoğu e-pin satıcısı, API anahtarını tedarikçi panelinden kopyalayıp doğrudan e-pin scriptinin içine yapıştırmanın en pratik yol olduğunu düşünür. Ne de olsa çalışıyor, sipariş geçiyor, bakiye düşüyor. Sorun yokmuş gibi görünür — ta ki o anahtar bir şekilde dışarı sızana kadar.
Ama sektörün içinden bakıldığında gerçek çok farklı. Yüzlerce e-pin satış scripti kurulumunu inceleyen güvenlik ekiplerinin ortak gözlemi şu: hesapların askıya alınmasının, bakiyelerin sıfırlanmasının ve tedarikçi sözleşmelerinin tek taraflı feshedilmesinin en sık nedeni karmaşık siber saldırılar değil, anahtarın nereye yazıldığıdır. Bu yazıda, bir e-pin yazılımı veya dijital ürün satış yazılımında API anahtarlarının gerçekte nerede durması gerektiğini, neden çoğu satıcının bunu yanlış yaptığını ve Pinova'nın bu konuyu nasıl çözdüğünü açık açık anlatıyoruz.
.env Dosyasına Koymak Gerçekten Güvenli mi, Yoksa Seni Rahatlatan Bir Yanılsama mı?
Birçok satıcı "en azından .env dosyasına yazdım, kodun içinde değil" diyerek rahatlar. Doğru bir adım ama tek başına yeterli değil. Bir e-pin satış scripti sunucuya FTP ile atıldığında, .env dosyasının izinleri genellikle varsayılan bırakılır; sunucu paylaşımlıysa veya yanlış yapılandırılmış bir kontrol panelindeyse, aynı dizine erişimi olan herhangi biri o dosyayı doğrudan okuyabilir. .env, anahtarı koddan ayırır ama şifrelemez; sadece bir dosyadan diğerine taşır. Gerçek güvenlik, anahtarın hiçbir dosyada düz metin halinde durmamasıdır. Üstelik birçok barındırma panelinde .env dosyasının tarayıcıdan doğrudan görüntülenebildiği, sunucu ayarları yüzünden fark edilmeden aylarca açık kaldığı durumlar da yaşanır.
Git Deposuna Bir Kere Düşen Anahtar Neden Asla Tam Silinmez?
Git'e bir kere eklenen dosya, sonradan .gitignore'a taşınsa bile geçmiş commit'lerde yaşamaya devam eder. Özellikle küçük ekiplerle çalışan ya da serbest bir geliştiriciye bir e-pin scripti kur diye iş veren satıcılarda bu çok sık görülür: anahtar test amaçlı koda yazılır, commit edilir, sonra düzeltilir ama repo hâlâ o commit'i taşır. Depo özel olsa da, geliştirici hesabı değiştiğinde, depo bir ortağa aktarıldığında veya bir yedekleme sırasında dışarı kopyalandığında o anahtar hâlâ oradadır ve çalışır.
Tedarikçiler Neden Anahtarını Fark Ettirmeden Senin Yerine İptal Ediyor?
Tedarikçi tarafında işler böyle görünür: sistem, aynı anahtarın farklı coğrafi konumlardan, olağan dışı saatlerde veya anormal hacimde istek yaptığını fark eder. Bu senin yaptığın bir şey olmasa da sonuç sana yazılır, çünkü sorumluluk anahtarı sana ait. Çoğu zaman önce bir uyarı gelmez, direkt anahtar iptal edilir veya hesap incelemeye alınır. İşte bu yüzden deneyimli satıcılar, kullandıkları dijital ürün satış scripti anahtarı nasıl sakladığını, günlüklediğini ve kime gösterdiğini bir kere sorgulayıp bir daha sormaz; çünkü zaten doğru kurulmuştur.
Anahtarların gerçek hayattaki farklı saklama yöntemlerinin risk seviyesini karşılaştırmak, bu konunun neden bu kadar kritik olduğunu daha net gösteriyor.
| Saklama Yöntemi | Risk Seviyesi | Sızıntı Anında Sonuç | Pinova'daki Karşılığı |
|---|---|---|---|
| Kodun içine gömülü anahtar | Çok Yüksek | Anahtar anında ele geçer | Kullanılmıyor |
| .env dosyası (şifrelenmemiş) | Yüksek | Dosya erişimiyle anahtar okunur | Kullanılmıyor |
| Düz metin veritabanı sütunu | Yüksek | Veritabanı erişimiyle anahtar görünür | Kullanılmıyor |
| Şifreli veritabanı + scoped erişim | Düşük | Sızan veri işe yaramaz | Pinova'nın standart yöntemi |
| Donanım/HSM tabanlı kasa | Çok Düşük | Pratikte erişilemez | Büyük ölçekli kurulumlarda opsiyonel |
Satıcıların Anahtarlarını Sakladığı Yerler
- Kodun içine gömülü 45%
- .env ama git'e eklenmiş 25%
- Düzensiz not/Excel dosyası 20%
- Şifreli ve izole saklama 10%
Hemen şimdi kodunda "api_key", "secret" veya "token" kelimelerini ara. Eğer bir dosyanın içinde düz metin olarak bir anahtar görüyorsan, o anahtar zaten tehlikede sayılır — görüldüğü an değiştirilmelidir.
Veritabanında Şifrelenmemiş Anahtar Tutmak, Kapıyı Kilitleyip Anahtarı Kapının Altına Koymaktan Farklı mı?
Bazı e-pin yazılımı çözümleri anahtarı veritabanına yazar ama şifrelemeden. Bu, saldırganın işini bir adım geciktirir ama durdurmaz; veritabanına erişim sağlayan biri bir SQL enjeksiyonu, sızan bir yedek dosyası veya yanlış yapılandırılmış bir yönetim paneli üzerinden anahtarı doğrudan görür. Doğru yaklaşım, anahtarın veritabanında da şifreli tutulması, yalnızca çalışma zamanında ve yalnızca gereken işlem için bellekte açılmasıdır. Bu küçük fark, bir sızıntı anında "anahtar da gitti" ile "anahtar hâlâ güvende" arasındaki farkı yaratır. Çoğu satıcı bu ayrımı, bir sızıntı yaşayana kadar hiç fark etmez.
Pinova Anahtarları Nerede ve Nasıl Saklıyor?
Pinova'da anahtarlar; sunucu koduna, .env dosyasına veya düz veritabanı sütununa hiçbir zaman yazılmaz. Panel, her tedarikçi bağlantısı için anahtarı şifreli bir alanda tutar, erişimi yalnızca yetkili işlem anında açar ve hangi kullanıcının hangi anahtara ne zaman eriştiğini kayıt altına alır. Bu mekanizmanın teknik detaylarını özellikler bölümünden, hangi pakette hangi güvenlik katmanının sunulduğunu ise fiyat bölümünden görebilirsin. Bu, bir e-pin satış yazılımı seçerken gözden kaçırılan ama en çok fark eden detaylardan biridir; çünkü sorun yaşamadığın sürece fark etmezsin, sorun yaşadığında ise çok geç olur.
| Kontrol Maddesi | Neden Önemli |
|---|---|
| Anahtar herhangi bir dosyada düz metin mi? | Tek sızıntı tüm hesabı açığa çıkarır |
| .env dosyası git deposuna hiç eklendi mi? | Geçmiş commit'ler anahtarı kalıcı olarak taşır |
| Veritabanı yedekleri şifreli mi saklanıyor? | Yedek sızıntısı anahtarı da dışarı taşır |
| Anahtar son altı ayda değiştirildi mi? | Sabit kalan anahtar zamanla risk biriktirir |
| Kim hangi anahtara eriştiğini gösteren bir kayıt var mı? | Kayıt yoksa sorumluluk hep sana kalır |
Anahtar Rotasyonunu Hiç Yapmıyorsan Gerçekte Neyi Riske Atıyorsun?
Anahtar rotasyonu, yani belirli aralıklarla eski anahtarı iptal edip yenisini tanımlama alışkanlığı, çoğu satıcının hiç yapmadığı bir adımdır; çünkü "çalışıyorsa dokunma" refleksi güçlüdür. Ama bir anahtar yıllarca değişmeden kalırsa, o anahtarın kaç farklı sunucuda, yedekte, eski bir geliştiricinin bilgisayarında veya silinmemiş bir log dosyasında dolaştığını kimse bilemez. Rotasyonu destekleyen bir epin yazılım altyapısı kullanmak bu riski sıfıra indirmez ama makul bir seviyeye çeker. Üç ayda bir anahtar değiştirmeyi alışkanlık haline getiren satıcılar, bir sızıntı olsa bile zarar penceresini çok küçültür.
Anahtarların Artık Risk Olmasın
Pinova, e-pin ve dijital ürün satışında API anahtarlarını şifreli tutan, erişimi kayıt altına alan lisanslı bir e-pin satış scriptidir.
API anahtarımı neden .env dosyasına yazmak yeterli değil?
.env dosyası anahtarı koddan ayırır ama şifrelemez; sunucu izinleri yanlış yapılandırılırsa dosya hâlâ doğrudan okunabilir, bu yüzden tek başına güvenlik katmanı sayılmaz.
Git deposuna yanlışlıkla eklediğim anahtarı nasıl geçersiz hale getirebilirim?
Anahtarı tedarikçi panelinden iptal edip yenisini oluşturmalısın; sadece dosyayı silmek veya commit'i geri almak geçmiş kayıtlarda anahtarı hâlâ erişilebilir bırakır.
Pinova anahtarları nasıl saklıyor?
Pinova her API anahtarını şifreli bir alanda tutar, erişimi yalnızca yetkili işlem anında açar ve kim hangi anahtara ne zaman eriştiğini kayıt altına alır.
API anahtarını ne sıklıkla değiştirmeliyim?
Genel bir kural olarak üç ayda bir, ayrıca bir geliştirici ekipten ayrıldığında veya bir sızıntı şüphesi oluştuğunda anahtarı hemen değiştirmelisin.
Anahtarını nereye yazdığın, e-pin işinin görünmeyen ama en kritik katmanıdır; sipariş akışı kadar hızlı çalışsa da arka planda bu denli gevşek bırakılmaması gerekir. Pinova'nın bu konuyu nasıl ele aldığını kendi gözlerinle görmek için canlı demo'yu inceleyebilirsin.

