Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
nejaky app.config (xml suboru z ktoreho si aplikacia cita nastavenia).
wam_Spider007 24.10.2014 11:09
wam_Spider007
To jsem si taky myslel, ale urcite tam nedam pristupove udaje k db v plaintextu ne?
kamil5 24.10.2014 11:11
kamil5
Minimalne heslo se uklada jako hash. Uzivatel zada jmeno a heslo v klientske aplikaci, ta spocita ha…
Jan Fiala 24.10.2014 11:26
Jan Fiala
To se přece obecně nedá, logovat se do DB přes hashované heslo...
MaSo 24.10.2014 12:06
MaSo
Pokud je on autor te aplikace, pak nevisím žádný důvod, proč by to nešlo. Nejde o přihlášení k DB (t… poslední
Jan Fiala 25.10.2014 18:07
Jan Fiala
Takže máš tlustého klienta a v něm uložený přímo login/pass DB usera? nový
MaSo 24.10.2014 12:08
MaSo
V Jave sa nastavenia ukladajú zvyčajne do .properties súboru, ktorý nie je v XML formáte (.config sú… nový
los 24.10.2014 12:19
los
Neni to zadna komercni aplikace, takze nejakou webovou sluzbu resit nebudu. Je to ciste amaterska de… nový
kamil5 24.10.2014 14:29
kamil5
precitaj si nieco o REST alebo SOAP. nový
wam_Spider007 24.10.2014 15:30
wam_Spider007
Dôležité je, že komunikácia s webovou službou prebieha cez rovnaký port, ako keď pristupuješ k webov… nový
los 24.10.2014 23:32
los

Minimalne heslo se uklada jako hash.
Uzivatel zada jmeno a heslo v klientske aplikaci, ta spocita hash a posle na server k overeni. Pokud hashe souhlasi, je uzivatel autentifikovan.

Pri zmene hesla se na server odesle a ulozi novy hash.

Jeste se dela to, ze k heslu pred vypoctem hashe neco pridas, treba znak na zacatek a na konec - tzv. osoleni.

Lokalne ty udaje vubec ukladat nemusis.

Pokud je on autor te aplikace, pak nevisím žádný důvod, proč by to nešlo.
Nejde o přihlášení k DB (to může být někde skrytě na pozadí a celá aplikace může používat jedno připojení), ale o autentizaci uživatele v rámci aplikace.

V Jave sa nastavenia ukladajú zvyčajne do .properties súboru, ktorý nie je v XML formáte (.config súbor v XML formáte je typický pre .NET). Spôsob uloženia hesla závisí od požadovanej úrovne bezpečnosti - niekedy nemusí byť problém ani heslo v plain-texte. Tiež existuje možnosť, že heslo nebudeš ukladať vôbec a do databázy budeš pristupovať ako používateľ, ktorý je práve prihlásený (cez single sign-on, napr. Kerberos). Pokiaľ sa potrebuješ prihlásiť do databázy s heslom a plain-text nie je možnosť, tak heslo musíš šifrovať (hešovanie nebude stačiť).

Z popisu nie je jasné, či klienti pristupujú k databáze len v rámci internej siete alebo aj zvonku. Ak je to aj zvonku, tak priamy prístup k databáze by som ani nepovolil a všetok prístup k databáze by bol skrytý za webovou službou.

Neni to zadna komercni aplikace, takze nejakou webovou sluzbu resit nebudu. Je to ciste amaterska desktopova aplikace, ktera ma data ve vzdalene databazi, ke ktere se vzdy pri spusteni aplikace prihlasi. Proto mi slo jen o zpusob ulozeni techto prihlasovacich udaju. A jak jste uz napsali, nezbyde asi jina moznost nez udaje sifrovat v nejakem .properties souboru.

Ohledne te web sluzby, kdyby se toto do budoucna melo implementovat - jak pak funguje komunikace? Jakym protokolem? A jak se dotazovat web sluzby na data?

Dôležité je, že komunikácia s webovou službou prebieha cez rovnaký port, ako keď pristupuješ k webovým stránkam. Vďaka tomu máš takmer istotu, že ti nebude stáť v ceste nejaký firewall. Použitý protokol zvyčajne je, ako už bolo napísané, SOAP alebo REST (resp. REST-like) JSON.

Hlavný rozdiel je ale v tom, že vo webovej službe dokážeš oveľa lepšie riadiť prístup, než priamo v databáze. Používateľ sa tak môže prihlasovať len pod svojím menom/heslom. Poskytnúť mu môžeš len tie operácie, na ktoré má oprávnenie. A budú sa vykonávať len také SQL príkazy, ktoré do webovej služby napíšeš. Je to naozaj obrovský rozdiel z hľadiska bezpečnosti.

Zpět do poradny Odpovědět na původní otázku Nahoru