Dokümanlar/Gizli Bilgi Güvenliği

Gizli Bilgi Güvenliği

Sıkı güvenli kodlama kuralları, zero-trust bulut depolama modeli ve yerel gizli bilgi koruma mekanizmaları.

Zero-Secret Politikası

Güvenlik, VibeBasket için temel önceliklerden biridir. Kurulan MCP sunucularının kullandığı OpenAI veya GitHub API token’ları gibi hassas anahtarlar bundle veritabanına asla taşınmaz ve burada önbelleğe alınmaz.

Zero-Trust Bulut Politikası

Bundle manifest’leri son kullanıcı çalışma zamanı gizli bilgilerini içermez. Host edilen uygulama seçilen katalog metadatasını ve isteğe bağlı olarak şifrelenmiş yönetici yedekleme kimlik bilgilerini saklayabilir; ancak kurulan MCP’lerin veya ajan araçlarının çalışma anında kullandığı API anahtarlarını saklamaz.

Bunun yerine bir bundle yerelde uygulanırken CLI, hedefin ihtiyaç duyduğu credential anahtarlarını çözer ve bunları güvenli şekilde eklemek için kullanıcıya yerel terminalde istemde bulunur. Host edilen uygulama bu çalışma zamanı değerlerini hiç görmez.

Sonraki secret yönetimi hedef adaptöre göre değişir. Çoğu IDE, yerel config dosyalarında satır içi MCP env veya header değerleri ister; bu nedenle CLI secret’ları operatörün makinesinde çözüp yalnızca o makinenin yerel IDE config’ine yazar. Codex, uzak MCP auth header’ları için kısmi bir istisnadır: doğal config formatı environment-key referansını desteklediğinde VibeBasket ham token’ı TOML içine yazmak yerine bu referansı tercih eder.

Hız Sınırlama

Tüm açık API endpoint’leri, IP bazlı izleme ve otomatik temizlik içeren sliding-window hız sınırlayıcıyla korunur. Proxy kaynaklı IP başlıklarına yalnızca self-host eden kişi proxy güvenini açıkça etkinleştirirse güvenilir.

API endpoint hız sınırları
EndpointLimit
/api/health120/min
/api/catalog120/min
/api/auth/*60/min
/api/bundle/[id]60/min
/api/stacks30/min
/api/admin/stats30/min
/api/catalog/status5/min
/api/bundle POST20/min

Güvenlik Başlıkları

Tüm yanıtlar sertleştirilmiş güvenlik başlıkları içerir. Production ortamında HTML rotaları nonce tabanlı bir Content-Security-Policy alır; böylece Next.js güvenli biçimde hydrate olurken toplu inline script çalıştırmaya kapı açılmaz. Ayrıca HSTS tüm deployment boyunca etkin tutulur.

Güvenlik yanıt başlıkları
BaşlıkDeğer
X-Frame-OptionsDENY
X-Content-Type-Optionsnosniff
Referrer-Policystrict-origin-when-cross-origin
X-Permitted-Cross-Domain-Policiesnone
X-Download-Optionsnoopen
Permissions-Policycamera=(), microphone=(), geolocation=()
Strict-Transport-Securitymax-age=63072000; includeSubDomains; preload
Content-Security-Policydefault-src 'self'; script-src 'self' 'nonce-<request-nonce>' 'strict-dynamic' 'wasm-unsafe-eval'; style-src 'self' 'unsafe-inline'; object-src 'none'; manifest-src 'self'; frame-ancestors 'none'

Admin Panel Güvenliği

/admin adresindeki yönetim paneli, OAuth ile doğrulanmış oturumların arkasında korunur. Erişim, ADMIN_OAUTH_EMAILS ortam değişkeninde listelenen e-posta adresleriyle sınırlandırılır; yalnızca doğrulanmış ve allowlist’te bulunan hesaplar yönetici olur.

Admin panel güvenlik kontrolleri
ÖzellikAçıklama
Katalog SenkronuUpstream kaynaklardan registry senkronizasyonunu manuel tetikler.
Yedek YönetimiHerhangi bir yapılandırılmış depolama altyapısına veritabanı yedekleri oluşturur, listeler, indirir ve geri yükler.
FTS5 İndeks SağlığıBütünlüğü doğrulamak için full-text arama indeks satır sayısını katalog tablosuyla karşılaştırır.
Veritabanı Sağlık KontrolüVeritabanı bütünlük tanılarını çalıştırır ve bozulmayı erken yakalar.
Zorla TemizlikSüresi dolmuş bundle’ları, eski session’ları, verification token’larını ve sync kayıtlarını temizler, ardından vacuum çalıştırır.
Kullanıcı ÖzetiKayıtlı kullanıcı sayılarını, kaydedilmiş stack telemetrisini ve popülerlik sıralamalarını inceler.
Yönetici E-postalarıVirgülle ayrılmış yönetici e-posta allowlist’ini site config içinde saklar.

Tüm yönetici işlemleri yalnızca server-side çalışır ve doğrulanmış bir yönetici oturumu gerektirir. /api/admin/stats endpoint’i için hız sınırı dakikada 30 istektir.