DB erişim katmanımızda bazı dinamik sorgu oluşturma işlemlerine sahibiz. Elbette bir şey mümkün enjeksiyon saldırıları önlemek için yapılmalıdır böyleceORDER BY deyiminde SQL Injection'ı önleyin yan tümce
protected string BuildSortString(string sortColumn, string sortDirection, string defaultColumn)
{
if (String.IsNullOrEmpty(sortColumn))
{
return defaultColumn;
}
return String.Format("{0} {1}", sortColumn, sortDirection);
}
sorundur, sortColumn
ve sortDirection
hem dizeleri olarak dışarıdan geliyor: Örneğin, bir ORDER BY
maddenin bir parçası oluşturmak için aşağıdaki yöntemi var . Bunun nasıl yapılabileceği hakkında bir fikri olan var mı? Eğer dizeleri uğraşmak zorunda varsa
+1, ben "mutlak tutam" konulu kişisel vurgu ekleyeceğiz, normalde bu yüzden alanları sipariş edilebileceği üzerinde kontrole sahip beyaz listeye istiyorum tarafından (veya bu konu için sorgulanan). Karar vermek için müşteriye bırakmak, hangi sorguları optimize edeceğini öğrenmek için muhtemelen birden çok müşteriyi analiz etmeniz gerektiği anlamına gelir. Orada, bitti, eğlenceli değil: -/ –
İlk bakışta bizim durumumuzda bir beyaz liste oluşturmak mümkündür. Bir deneyelim, teşekkürler Mark. – Andrei