Zasadniczo mam nową aplikację komputerową, nad którą pracuję mój zespół i pracuję nad nią na komputerach z systemem Windows 7 w naszej hali produkcyjnej. Ten program będzie używany dość ciężko, gdy zostanie wprowadzony i będzie musiał wchodzić w interakcję z naszą bazą danych produkcji. Oceniam, że będzie (w końcu) około 100-200 maszyn obsługujących tę aplikację w tym samym czasie.Jak powinienem wchodzić w interakcje z bazą danych z aplikacji desktopowej bez otwierania jej na cały świat?
Mamy szczęście, robimy wszystko od zera, więc definiujemy bazę danych, wszelkie usługi sieciowe, projekt programu i wszelkie interakcje między wyżej wymienionymi.
Tak jak obecnie, nasze starsze aplikacje mają bezpośredni dostęp do bazy danych, co jest trudne. Nie chcemy tego robić w nowej aplikacji.
Moje pytanie brzmi: jak to zrobić? Niejasne, wiem, ale w zasadzie mam tu dużo do powiedzenia i nie jestem do końca pewien, jaki jest właściwy kierunek.
Moja początkowa myśl, oparta na tym, co zauważyłem, że inni robią, polega w zasadzie na tym, że pomija się bazę danych za pomocą usług sieciowych. tj. wszystkie interakcje z bazą danych z poziomu podłogi MUSZĄ występować za pośrednictwem usług sieciowych, zapewniając warstwę bezpieczeństwa, wykonując większość logiki bazy danych za zamkniętymi drzwiami. Połączenia z usługami sieciowymi są następnie zabezpieczane dla poszczególnych użytkowników za pośrednictwem usługi Active Directory.
Jak jednak stwierdziłem, ma to pewne implikacje ... Musimy zebrać dane, zanim dotrą do aplikacji. Nadal istnieje możliwość złośliwego nadużywania poprzez wielokrotne wykorzystywanie wywołań usług sieciowych do niszczenia lub spamowania danych. Przyjrzeliśmy się Entity Framework i bardzo podoba nam się to, co zapewnia, ale jak najlepiej mogę powiedzieć, to będzie niedostępne, dopóki nie znajdziemy się na poziomie aplikacji w tym przypadku.
Po prostu wydaje się, że nie mogę dojść do wniosku, co jest "właściwe". Co jest słuszne?
Dziękuję za odpowiedź! Miałem nadzieję, że to będzie właściwe podejście. – MGSoto