Lexega, SQL kodunun çalıştırılmadan önce deterministik ve eyleme geçirilebilir "sinyallere" dönüştürülmesini sağlayan, SQL için bir koruma katmanı görevi gören yapısal bir analiz motorudur. Temel amacı, geliştiricilerin gözünden kaçabilecek tehlikeli SQL ifadelerinin üretim ortamına ulaşmasını engellemektir. Sistem, SQL kodunu analiz ederek, ne yaptığını açıklayan semantik olaylar olan sinyaller üretir ve bu sinyallere dayanarak kurallar ve politikalar uygular.
Lexega'nın işleyişi dört ana adımdan oluşur: İlk olarak, çoklu ifade betikleri ve Jinja/dbt şablonları dahil olmak üzere SQL kodunu token'lara ayırır ve ayrıştırır. Ardından, AST'yi (Soyut Sözdizimi Ağacı) gezerek okunan/yazılan tablolar, izinler ve politika değişiklikleri gibi semantik gerçekleri çıkarır ve ne olduğunu açıklayan kategorik sinyaller yayar. Üçüncü adımda, bu sinyallerle hem yerleşik hem de özel YAML kurallarını eşleştirerek ciddiyet ve mesajlandırma atar. Son olarak, bir karar (engelle, uyar veya izin ver) üretmek için politikayı değerlendirir. Bu süreç tamamen deterministiktir; yani aynı girdi, her zaman aynı sinyalleri üretir.
Sinyaller, bir ifadenin nasıl göründüğünden ziyade ne yaptığını tanımlar. Örneğin, bir WHERE koşulu olmayan sınırsız bir DELETE işlemi, kaldırılan bir maskeleme politikası veya harici bir aşamada şifrelemenin devre dışı bırakılması gibi durumlar birer sinyal olarak algılanabilir. Makalede verilen somut bir örnekte, görünüşte masum bir SELECT sorgusunun içindeki LEFT JOIN'i INNER JOIN'e dönüştüren ve potansiyel bir hataya yol açan bir durumun nasıl tespit edildiği gösterilmiştir. Lexega, bu tür karmaşık hataları sütun soy ağacını (column lineage) kullanarak belirleyebilir ve geliştiricileri olası veri bütünlüğü sorunları hakkında uyarabilir.
SQL kodunda gözden kaçan tehlikeli değişiklikleri ve hataları otomatik olarak tespit ederek veri bütünlüğünü ve güvenliğini artırır.