Często napotykam aplikacje internetowe, które ujawniają klucze podstawowe bazy danych za pośrednictwem formularzy, takich jak pola wyboru. Czasami widzę dopasowanie javascript przeciwko int lub guid magicznej wartości, która przełącza logikę.Unikaj narażania kluczy głównych w źródle aplikacji internetowej?
Jest to najlepsza praktyka, aby uniknąć przeciekania wszystkich wewnętrznych identyfikatorów wierszy w aplikacji internetowej, aby uniemożliwić osobom postronnym zrozumienie zbyt dużej części systemu i ewentualnie użycie go w celu wykorzystania systemu. Jeśli tak, jaki jest najlepszy sposób rozwiązania tego problemu?
Czy należy ujawnić inną wartość aplikacji internetowej, którą można przetłumaczyć z powrotem na klucz podstawowy?
Dzięki
Edytuj
w idealnym świecie aplikacja będzie w 100% bezpieczne, więc nie ma znaczenia, jeśli zasłonięty rzeczy. Oczywiście tak nie jest, więc czy powinniśmy zachować ostrożność i nie ujawniać tych informacji?
Niektórzy zwracają uwagę, że Stackoverflow prawdopodobnie ujawnia klucz w Url, który prawdopodobnie jest w porządku. Czy jednak są inne względy dotyczące aplikacji dla przedsiębiorstw?
+1 Zgadzam się. Używanie dowolnych wartości w celu uniknięcia pokazywania identyfikatora czegoś jest w najlepszym przypadku najlepszym zabezpieczeniem (czytaj: niezbyt dobre). Twoje bezpieczeństwo powinno być wystarczająco silne, aby odrzucić użytkowników fałszujących wartości. – nickf
, ale ... co o PKs uzyskanych z DB reprezentujących wiersze w tabeli, które będą używane do generowania siatki? – JPCF
@nickf Czy rozważysz przechowywanie hasła jako hash zamiast zwykłego tekstu jako "security-through-zaciemnienie". – Medorator