İçeriğe geç
Muhammet Şafak
en

QueryProxy

Devam ediyor Amiral Gemileri

QueryProxy, geliştiricilerin üretim veritabanına kimlik bilgisi almadan erişebilmesi için geliştirdiğim self-hosted bir sorgu onay portalıdır. Yazılan SQL çözümlenerek denetlenir, bir DBA onayından geçtikten sonra kuyrukta çalışır, sonuçlar diske yazılırken maskelenir ve her adım değiştirilemez bir denetim kaydına düşer.

Rolüm
Founder & Developer
Süre
Eylül 2026 — Devam ediyor

Teknolojiler

PHP Laravel Livewire Blade Tailwind CSS Vite CodeMirror phpMyAdmin SQL Parser Pest Docker GitHub Actions PostgreSQL MySQL MariaDB SQL Server SQLite

Yetenekler

Access Control SQL Parsing Data Masking Approval Workflows Audit Logging Queue Design Security Engineering Self-Hosted Deployment Open Source Maintenance Release Engineering

QueryProxy, bir geliştiricinin üretim veritabanındaki veriye bakabilmesi için üretim parolasını almak zorunda kalmasını ortadan kaldıran, açık kaynak ve self-hosted bir sorgu onay portalıdır. Kullanım vaadi şudur: geliştirici korumalı bir editörde SQL’ini yazar, portal ifadeyi çözümleyip tehlikeli olanı daha gönderilmeden reddeder, kalan istek bir DBA onayına düşer ve onaylandığında istek döngüsünün dışında, kuyrukta çalışır. Sonuç geliştiriciye maskelenmiş olarak döner. Kimlik bilgisi hiçbir aşamada kullanıcıya gösterilmez; bağlantı künyesi uygulamada şifreli durur ve sorguyu çalıştıran portalın kendisidir. PostgreSQL, MySQL, MariaDB, SQL Server ve SQLite destekleniyor.

Mimarinin dört taşıyıcı kararı var. Denetim desen eşleştirmesiyle değil çözümlemeyle yapılıyor: gelen SQL ayrıştırılıyor, WHERE’i olmayan UPDATE/DELETE reddediliyor, limitsiz SELECT varsayılan bir satır sınırıyla dönüyor, veritabanı ve kullanıcı yönetimine dokunan ifadeler koşulsuz engelleniyor; yorumlar ve dize sabitleri normalize edildiği için araya yorum sıkıştırarak kapı aşılamıyor, ve çalıştırıcı tarafında SQL ne derse desin geçerli olan mutlak bir satır tavanı duruyor. Onay tek servisten geçiyor: web arayüzü, Slack ve Microsoft Teams aynı karar noktasına iniyor, bir DBA’nın kendi isteğini onaylaması her kanalda kapalı (sistem admini aşabiliyor, aşma denetime yazılıyor) ve eşzamanlı iki onay koşullu güncellemeyle tekilleştiriliyor; sohbet geri çağrıları HMAC-SHA256 ile imzalanıyor, dar bir zaman penceresiyle tekrar saldırısına kapatılıyor ve eylemi yapan kişi isteğin beyanından değil yöneticinin kurduğu eşlemeden çözülüyor. Maskeleme yazma anında uygulanıyor: sonuç akışı satır satır okunup her satır dosyaya yazılmadan önce maskeleniyor, böylece sonuç deposuna maskesiz veri hiç girmiyor; sütun deseni ve içerik düzenli ifadesi olmak üzere iki kural tipi, tam, kısmi ve özet (hash) olmak üzere üç strateji var ve bir düzenli ifade çalışma anında değerlendirilemezse değer açıkta bırakılmıyor, maskeleniyor. Denetim izi değiştirilemez: kayıt tablosunda güncelleme sütunu yok, güncelleme ve silme model düzeyinde istisna atıyor ve kayıt satırları hiçbir yabancı anahtar kısıtı taşımıyor — bir bağlantı silindiğinde onun geçmişi silinmiyor.

Ürün, bir ekibin docker run ile ayağa kaldırabileceği tek konteyner olarak paketlendi: uygulama, kuyruk işçisi ve zamanlayıcı aynı imajda çalışıyor ve varsayılan kurulum hiçbir dış servise ihtiyaç duymuyor. Takım rolleri DBA, Developer ve Auditor; üstlerinde takımdan bağımsız bir sistem admini duruyor. TOTP ile iki faktörlü doğrulama, giden webhook’lar için host beyaz listesi, güvenlik başlıkları ve her yüzeyde hız sınırı var. Kalite tarafında Pest ile yazılmış bir test paketi, üç PHP sürümünde koşan bir CI hattı, composer audit ve npm audit ile bağımlılık taraması ve yayın öncesi imajı düşüren bir konteyner zafiyet taraması bulunuyor. Lisans AGPL-3.0-only: QueryProxy’yi değiştirip ağ üzerinden servis eden herkes değişikliklerini aynı lisansla yayımlamak zorunda.

Beslediği alan: Backend Geliştirici

Diğer Projeler

Tüm projeler
BabelQueue kapak görseli — bir üreticiden kuyruğa, oradan başka bir dildeki tüketiciye akan kanonik JSON zarfı ve çok dilli SDK listesi

BabelQueue

Devam ediyor

Founder & Developer

BabelQueue, farklı dillerde yazılmış servislerin aynı kuyruğu serileştirme kilidine takılmadan paylaşmasını sağlayan, dilden bağımsız bir mesaj kuyruğu standardıdır. PHP'nin serialize()'ı gibi dile özgü formatlar yerine; her dilin doğal olarak okuyabildiği, schema_version 1'de dondurulmuş katı bir JSON zarfı tanımlar. Redis ve RabbitMQ üzerinde, sidecar ya da broker eklentisi olmadan, %2'nin altında ek yükle çalışır.

JSON Redis RabbitMQ +6 daha
Haziran 2026 — Devam ediyor
CommitBrief CLI çıktısı — terminalde renkli severity kartları halinde listelenmiş kod inceleme bulguları

CommitBrief

Devam ediyor

Founder & Developer

CommitBrief, git diff'leri üzerinde LLM destekli yerel kod incelemesi yapan, sağlayıcıdan bağımsız bir Go CLI aracıdır. Staged/unstaged değişikliklerden tek bir commit'e ya da PR tarzı üç noktalı aralıklara kadar her kapsamı; terminalden çıkmadan, diff'i dışarı sızdırmadan ve özelleştirilebilir proje kurallarıyla denetler.

Go Cobra go-git +8 daha
Nisan 2026 — Devam ediyor
Parantaj kapak görseli — toplam bakiye, hesaplar, harcama kategorileri ve nakit akışı grafiğiyle bir finans kontrol paneli

Parantaj

Devam ediyor

Owner

Kişisel ve kurumsal finansal yönetim platformu. Gelir-gider takibi, bütçe planlama, detaylı raporlama ve çoklu hesap yönetimi sunar.

PHP Laravel Go +8 daha
Ekim 2024 — Devam ediyor

Sitede Ara

Yazı, proje ve sayfalarda arama yapmak için yazmaya başlayın.

Esc ile kapat Pagefind ile güçlendirildi