Avatar billede Slettet bruger
26. september 2006 - 20:29 Der er 6 kommentarer og
1 løsning

SQLconnection string i exe, dårlig sikkerhed?

Jeg står til at skulle release et sql program til at kommunikere med en sql server tilhørende en hjemmeside. Men efter at have lavet en beta udgivelse for jeg efter meget kort tid atvide at en har uncompilet min exe og derfor direkte kunne læse brugernavn og adgangskode til sql severen. Er der en metode hvor jeg kan forhindre at dette forekommer???..
Avatar billede hacked Nybegynder
26. september 2006 - 22:21 #1
1. Du kan bede brugeren om at indtaste det.
2. Du kan bruge en såkaldt obfuscator som gør at din kode bliver sværere at decompilere.
Avatar billede davidfossil Nybegynder
26. september 2006 - 23:51 #2
Det lyder som en temmelig usikker måde at kommunikere på - i hvert fald hvis det pågældende login til SQL serveren giver adgang til mere en brugeren burde have adgang til. Mine forslag:

1. Sørg for at den connection string som programmet bruger, benytter sig af et login der på ingen måder kan misbruges. Brugeren skal således kun have adgang til at eksekvere lige netop de procedurer som programmet skal kunne bruge, og det må ikke være muligt at snyde ved at sende "usande" parametre med el. lign.

2. En meget bedre løsning: Byg en webservice oven på din database, som stiller præcis de nødvendige funktionaliter til rådigheder. Lad dit program kommunikere med denne webservice, uden at have nogen som helst anelse om hvilken database der ligger bag. Denne fremgangsmåde giver den bedste sikkerhed, samtidig med at den giver dig friheden til at senere at flytte din database som det passer dig, eller skifte den ud med en anden form for database server, uden at det påvirker klient programmerne.

Umiddelbart kan det lyde som om der skal laves meget om, og det skal der sandsynligvis også. Din nuværende løsning holder i hvert fald ikke =\
Avatar billede hacked Nybegynder
27. september 2006 - 01:03 #3
Hov misforstod vist lige noget :/ . Drop min nummer 1.
Obfuscator metoden kan du stadig bruge men ændre du brugernavn eller password til sql serveren skal samtlige klienter have en opdatering.
Jeg joiner davidfossil og råder dig til at bruge webservicemetoden selvom den også har sine begrænsninger såfremt du skifter webservice adresse ect.
Avatar billede akempff Nybegynder
27. september 2006 - 08:00 #4
Som side kommentar til malkor, så kan webservice bindingen laves dynamisk og webadressen lægges i en appconfig. Så vil problemet med webservice adresse skift ikke være anderledes end sql server adresse skift i den nuværende løsning, og muligt at ændre lokalt.
Avatar billede Slettet bruger
27. september 2006 - 08:17 #5
Findes der noget eksempel på sådan en webservice?
Avatar billede akempff Nybegynder
27. september 2006 - 08:42 #6
Der er et eksempel her:
http://www.codeproject.com/cs/webservices/myservice.asp

Det er godt nok i .NET 1.1, men det er praktisk taget det samme i 2.0
Avatar billede hacked Nybegynder
29. september 2006 - 21:09 #7
Hvis du ikke har sat database restriktioner for det gældende username/password så gør det. Foreksempel at pågældende user ikke må ændre i database og hvilke tabeller user har adgang til ect.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester