Baza danych (MySql) stoi na maszynie Unixowej, połączenie do niej możliwe tylko po SSH.
Problem niby prosty, tworzymy aplikację kliencką, która ma na celu prezentację wyników zapytań z bazy dnaych:
SSH służy tutaj jako zabezpieczenie przed dostępem do poufnych danych przez niepożądane osoby.
Problem więc należy rozwiązać w następujący sposób:
- stworzyć bezpieczne połączenie SSH
- przeforwardować nasz port lokalny na port zdalny gdzie pracuje baza danych
- stworzyć połączenie do bazy danych - tutaj postępujemy tak jak zwykle, z tą różnicą iż teraz musimy połączyć się z naszym lokalnym komputerem, poprzez skonfigurowany w poprzednim punkcie port
- skorzystać z aplikacji, którą uruchomimy jako osobny proces w tle np. PLINK
- wykorzystać jedną z dostępnych bibliotek SSH
Bibliotek do SSH dla .NET nie brakuje w sieci. Ja wybrałem SharpSSH, które można pobrać ze strony http://www.tamirgal.com/blog/page/SharpSSH.aspx (dział Download).
Do projektu należy dodać następujące DLL:
- Tamir.SharpSSH.dll
- Org.Mentalis.Security.dll
- DiffieHellman.dll
Code:
Następnie w połączeniu z bazą danych skorzystamy z portu 3307, oraz servera - localhost.
Brak komentarzy:
Prześlij komentarz