ConnectionString - gdzie go trzymać?

0

Witam,

Piszę aplikację bazodanową. Do łączenia z bazą danych korzysta się rzecz jasna z ciągu zwanym ConnectionString.
Jednak taki ciąg niebezpiecznie jest - z tego co wiem - trzymać w kodzie aplikacji. Z tego też powodu gdzie go przechowywać?

Czy dobrym pomysłem będzie trzymać go w jakimś pliku zaszyfrowanym, a plik ten w tym samym katalogu co exe?
Jak w takiej sytuacji odszyfrować ciąg? Klucz będzie musiał być i tak wbity w kod aplikacji.

Jak to rozwiązać?
Pozdrawiam.

0

Nie łączyć się bezpośrednio z bazą a dać jakiś serwis pośredni lub stworzyć użytkownika w DB z uprawnieniami read-only i tak się łączyć.

0

hmmm nie wyobrażam sobie tego za bardzo.
Aplikacja ma robić wiele rzeczy - między innymi zapisywać dane i je modyfikować.

Co więcej aplikacja będzie nie tylko www, czy desktopowa, ale także mobilna. Jak w takiej sytuacji zrobić serwis pośredni? Nigdy o tym nie słyszałem. Raczej w takiej sytuacji nie będę mógł tego użyć.

0

Ale co to za różnica czy jest to aplikacja na desktopie czy mobilna? Wysyłasz dane na serwer np. używając HTTP i odbierasz informację czy się udało czy nie.

0

Przecież takie coś przy wielu danych będzie strasznie długotrwałe i nieoptymalne pod względem czasowym.

0

Ok problem rozwiązany, wymyśliłem inny sposób.

0

jeżeli aplikacja ma robić wiele rzeczy to w bazie danych można porobić funkcje i procedury robiące te rzeczy i dać dostęp użytkownikowi tylko do nich, a nie do tabel samych w sobie - ewentualnie można zrobić widoki które będą ograniczały widoczne dane

2
KolegaNaszIWasz napisał(a):

Co więcej aplikacja będzie nie tylko www, czy desktopowa, ale także mobilna. Jak w takiej sytuacji zrobić serwis pośredni? Nigdy o tym nie słyszałem. Raczej w takiej sytuacji nie będę mógł tego użyć.

Skoro to mają być dwie aplikacje, to tym bardziej dostęp do bazy powinieneś zrealizować za pomocą jakichś webserwisów, z których obie aplikacje będą mogły korzystać.

1 użytkowników online, w tym zalogowanych: 0, gości: 1