Yapay Zeka ile SQL Üretmek Güvenli mi? Riskler ve Alınacak Önlemler
AI SQL generator araçları ve ChatGPT ile SQL yazdırmak yaygınlaştı; peki kurumsal veride güvenli mi? Dört gerçek risk ve her biri için somut önlem: salt-okunur kullanıcı, görünür SQL, veri yerelliği, ölçüm.
Yapay zekaya SQL yazdırmak artık sıradan: kimisi ChatGPT'ye tablo yapısını yapıştırıyor, kimisi bir AI SQL generator kullanıyor. Soru da o yüzden sıklaştı: bunu şirket veritabanında yapmak güvenli mi? Kısa cevap: doğru önlemlerle evet, önlemsiz hayır. Dört gerçek risk üzerinden gidelim.
Risk 1: Üretilen sorgu veri değiştirebilir mi?
En büyük korku bu: modelin bir UPDATE veya DELETE üretmesi ve birinin onu düşünmeden çalıştırması. Önlem iki katmanlıdır. Birincisi veritabanı tarafında: bağlantıyı yalnızca SELECT yetkisi olan bir kullanıcıyla kurun; böylece yanlış sorgu üretilse bile motor onu reddeder. İkincisi araç tarafında: ciddi araçlar SELECT dışındaki her şeyi zaten üretim aşamasında engeller. PerSight'ta ikisi birden geçerlidir; yazma teknik olarak imkânsızdır.
Risk 2: Verim modele gidiyor mu?
ChatGPT'ye şema veya örnek veri yapıştırdığınız anda o içerik şirket dışına çıkmış olur; birçok şirkette bu tek başına politika ihlalidir. Doğru kurgu, modele yalnızca şemanın (tablo ve kolon adlarının) gitmesi, satır verisinin hiç gitmemesidir. Değerlendirdiğiniz araca sorulacak soru net: "Buluta tam olarak ne gönderiyorsun ve bunu bana gösterebiliyor musun?" PerSight bunu uygulama içindeki şeffaflık panelinde birebir gösterir.
Risk 3: Sorgu yanlışsa ve kimse fark etmezse?
En sinsi risk budur, çünkü hata mesajı yoktur: sorgu çalışır, bir sayı döner ve o sayı yanlıştır. Kararlar da o yanlış sayıyla alınır. İki önlem birlikte çalışır: üretilen SQL her zaman görünür ve düzenlenebilir olmalı (kara kutu yasak) ve aracın doğruluğu düzenli, açık yöntemle ölçülüyor olmalı. Doğruluğunu ölçmeyen ya da ölçüp paylaşmayan bir araca kurumsal karar bağlamak, denenmemiş teraziyle altın tartmaktır.
Risk 4: Doğal dilden gelen kötü niyetli istek
OWASP'ın LLM güvenlik listesinde prompt injection ilk sıradadır: kullanıcı (veya veriye gömülü bir metin) modeli izin verilmeyen bir şeye ikna etmeye çalışabilir. Savunma, modelin terbiyesine güvenmek değildir; modelin ne üretirse üretsin geçemeyeceği sert kapılar koymaktır: salt-okunur kullanıcı, SELECT-dışı komut engeli ve insan onayından geçen görünür sorgu. Kapı katmanı doğru kurulduysa modelin kandırılması sonuç doğurmaz.
Sık sorulan sorular
- ChatGPT'ye şema yapıştırıp SQL yazdırmak güvenli mi?
- Şemanız şirket dışına çıkar ve üretilen sorgu hiçbir güvenlik katmanından geçmeden elinize gelir; çalıştırma sorumluluğu tamamen sizdedir. Kişisel deneme için idare eder, kurumsal veri için önerilmez.
- Salt-okunur veritabanı kullanıcısı nasıl oluşturulur?
- Her motorun GRANT komutuyla: örneğin PostgreSQL'de yalnızca SELECT yetkisi verilmiş bir rol tanımlarsınız. Beş dakikalık iştir ve AI'dan bağımsız olarak da iyi bir güvenlik pratiğidir.
- AI'ın ürettiği SQL'e ne kadar güvenebilirim?
- Ölçüme bakın. Biz PerSight'ın üretimini dört motorda yüzlerce gerçek soruyla test ediyoruz; sonuç doğruluğu tipik iş senaryolarında %94 ve yöntem sitede açık. %100 iddia eden olursa yöntemini sorun.
- Bu önlemlerin hepsi bende yoksa hiç mi kullanmayayım?
- En azından ilk ikisi (salt-okunur kullanıcı + görünür sorgu) olmadan kurumsal veride kullanmayın. Bu ikisi riskin büyük bölümünü tek başına kapatır.
Bu dört önlemi tek tek kurmak yerine hazır isteyenler için PerSight'ın varsayılanları şunlar: SELECT-dışı üretim engelli, sorgu her zaman görünür, buluta yalnızca şema ve soru gider, doğruluk düzenli ölçülüp yayımlanır. persight.ai/guvenlik sayfası IT ekibinize göre yazıldı.
Kaynaklar
İlgili yazılar
- Text-to-SQL Nedir? Doğal Dilden SQL'e Çeviri, Sade AnlatımText-to-SQL (NL2SQL), doğal dildeki bir soruyu çalıştırılabilir SQL sorgusuna çeviren yapay zeka tekniğidir. Nasıl çalışır, sınırları neler, güvenli kullanım için nelere bakılır? Pazarlamasız bir rehber.
- NLQ (Natural Language Query) Nedir? Veriye Kendi Dilinizle UlaşmakNLQ yani natural language query, veriye SQL veya filtre ekranı yerine kendi cümlenizle ulaşma deneyimidir. Text-to-SQL ile ilişkisi, self-servis BI'daki yeri ve sınırları bu yazıda.
- Doğal Dille Veritabanı Sorgulama Nasıl Çalışır (ve Görünür Sorgu Neden Önemli)Doğal dilden SQL üretimi sade bir anlatımla: sorunuz nasıl sorguya dönüşür, salt-okunur ve her zaman görünür bir sorgu neden daha güvenli ve PerSight verinizi neden makinenizde tutar.