Avatar
Eldest
Redaktor
Avatar
Eldest:

Ahoj, chtěl bych se zeptat, zda se dá ve zdrojovém kódu nějak skrýt či zašifrovat heslo k připojení k DB. Ve škole musíme odevzdávat učiteli programy na kontrolu. Většinou to jsou programy, kde se připojujeme ke vzdálenému serveru (...MySQL...). Problém je v tom, že bych nechtěl, aby učitel viděl moje heslo. Pomocí kterého se přihlašují do své databáze...

 
Odpovědět 14.2.2015 15:07
Avatar
Odpovídá na Eldest
sadlomaslox25:

pokud vim tak se to resi 2 zpusoby:

  1. slozitejsi varianta je udelas si mezivrstvu v podobe weboveve sluzby ktera obsluhuje db. toto je nejcastejsi reseni.
  2. zalozit v db usera a tomu priradit prislusna opravneni pro cteni a zapis. tabulky je mozna ochranit pomoci view a stored procedur.

pokud by ses znazil nejakym zpusobme heslo "znecitelnit" tak nezapomen ze .NET programy se daji velmi jednoduse dekompilovat a da se v nich cist jako v knize :)

 
Nahoru Odpovědět 14.2.2015 16:23
Avatar
Eldest
Redaktor
Avatar
Odpovídá na sadlomaslox25
Eldest:

Díky za odpověď, ale nevím, jestli jsi mě správně pochopil. Například: Připojuji s programu C# k serveru -> musím při přihlášení zadat adresu serveru, název databáze, ke které se připojuji, jméno uživatele a heslo. Nic z toho mi nevadí kromě hesla. To potřebuji nějak ve zdrojáku skrýt, aby ho učitel, spolužák nebo prostě kdokoliv neviděl.

 
Nahoru Odpovědět 14.2.2015 18:10
Avatar
Odpovídá na Eldest
sadlomaslox25:

no ja sem te pochopil. ale tys asi nepochopil ze to nejde tak jak si predstavujes :D.

priklad toho co muzes udelat:
string zasifrovane_hes­lo_databaze="xik­nasodineqwwed";
string klic_k_rozsifro­vani="passwor­d1";
SqlConnection con=new SqlConnection("IP=1­.1.1.1;Userna­me=user;Pass="+si­fra.Desifruj(za­sifrovane_hes­lo_databaze,klic_k_roz­sifrovani));

tvuj kod si muze kdokoli otevrit tyhle 3 radky zkopirovat a provest u sebe a to heslo zjisti. neni moznost jak to skryt.

 
Nahoru Odpovědět 14.2.2015 18:37
Avatar
Eldest
Redaktor
Avatar
Odpovídá na sadlomaslox25
Eldest:

Ani to třeba nějak zahashovat?

 
Nahoru Odpovědět 14.2.2015 19:13
Avatar
BlugW
Redaktor
Avatar
Odpovídá na Eldest
BlugW:

Prostě tam nevkládej svoje běžné údaje, vytvoř si nového usera a dej mu minimalni práva co to jde.

Odevzdáš úkol, učitel zkontroluje, dá za to známku, a ty hned smaž uživatele nebo změň heslo a jeto.

Jinak to udělat nejde.

Editováno 14.2.2015 19:56
Nahoru Odpovědět 14.2.2015 19:55
Pořiď si mac na www.appletrh.cz. Novinky a zajímavosti ze světa Apple na https://www.applemagazin.eu
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na Eldest
Jan Vargovský:
https://msdn.microsoft.com/en-us/library/89211k9b(v=vs.80).aspx
 
Nahoru Odpovědět 14.2.2015 20:19
Avatar
Odpovídá na Jan Vargovský
sadlomaslox25:

to je trochu jiny scenar.to co popisuji na tom MSDN nejde moc aplikovat na tento pripad.

 
Nahoru Odpovědět 14.2.2015 20:28
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na sadlomaslox25
Jan Vargovský:

Vždyť tam přece používá taky connection string, tak ať si ho přesune do app.configu, ne?

 
Nahoru Odpovědět 14.2.2015 21:04
Avatar
Odpovídá na Jan Vargovský
sadlomaslox25:

"Note
The connection string can only be decrypted on the computer on which it was encrypted."

 
Nahoru Odpovědět 14.2.2015 22:00
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na sadlomaslox25
Jan Vargovský:

Tak nic no :) já tohle zatím moc neřešil.

 
Nahoru Odpovědět 14.2.2015 22:02
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 11 zpráv z 11.