abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

dnes 08:00 | Pozvánky

V Praze dnes probíhá konference Internet a Technologie 17.2 pořádaná sdružením CZ.NIC. Sledovat ji lze online. K dispozici je také archiv předchozích konferencí. Sdružení nedávno vydalo bezpečnostní pexeso. Ke stažení jako pdf pod licencí CC BY-NC-SA.

Ladislav Hagara | Komentářů: 0
dnes 07:22 | Nová verze

Byla vydána verze 10.2 a krátce na to opravná verze 10.2.1 open source alternativy GitHubu, tj. softwarového nástroje s webovým rozhraním umožňujícího spolupráci na zdrojových kódech, GitLab (Wikipedie). Představení nových vlastností v příspěvku na blogu a na YouTube.

Ladislav Hagara | Komentářů: 8
dnes 06:22 | Pozvánky

V úterý 28. listopadu se v Brně koná již 4. přednáškový večer Ruby Stories. Těšit se můžete na témata jako TDD, hybridní mobilní aplikace či programování v Elixiru. Více informací na Facebooku nebo se rovnou registruj na Eventbrite. Na místě bude zdarma drink a lehké občerstvení, tak dorazte.

ondrej-zadnik | Komentářů: 0
dnes 06:11 | Pozvánky

V úterý 28. 11. 2017 bude další Prague Containers Meetup. DC/OS a Mesos vás provede Mesosphere's Developer Advocate Matt Jarvis.

little-drunk-jesus | Komentářů: 0
včera 14:44 | Komunita

Mozilla.cz informuje, že Firefox bude možná upozorňovat na úniky vašich hesel. V Mozille prototypují upozorňování na únik informací o vašem účtu, pokud se na seznamu Have I been pwned? objeví služba, ke které máte ve Firefoxu uložené přihlašovací údaje. Informace se objevila v pravidelném newsletteru o vývoji Firefoxu.

Ladislav Hagara | Komentářů: 5
včera 00:22 | Bezpečnostní upozornění

Společnost ZONER informuje o bezpečnostním incidentu, při kterém došlo ke zcizení a zveřejnění části přihlašovacích údajů zákazníků k elektronické poště a webhostingu CZECHIA.COM.

Ladislav Hagara | Komentářů: 0
22.11. 23:44 | Nová verze

Byla vydána nová stabilní verze 1.13 (1.13.1008.32) webového prohlížeče Vivaldi (Wikipedie). Z novinek vývojáři zdůrazňují možnost zobrazení otevřených i uzavřených listů pomocí ikonky Okno na postranní liště a vylepšené stahování (YouTube). Nejnovější Vivaldi je postaveno na Chromiu 62.0.3202.97.

Ladislav Hagara | Komentářů: 9
22.11. 20:55 | Nová verze

Byla vydána verze 2017.3 dnes již průběžně aktualizované linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux. Aktualizovat systém lze pomocí příkazů "apt update; apt dist-upgrade; reboot". Z novinek lze zmínit 4 nové nástroje: InSpy, CherryTree, Sublist3r a OSRFramework.

Ladislav Hagara | Komentářů: 1
22.11. 01:55 | Bezpečnostní upozornění

Společnost Uber potvrdila bezpečnostní incident a únik dat v roce 2016. Unikly údaje o 57 milionech cestujících (jména, emailové adresy a čísla mobilních telefonů) a 600 tisících řidičích (navíc čísla řidičských průkazů).

Ladislav Hagara | Komentářů: 1
21.11. 23:44 | Humor

Co vypíše příkaz man půl hodiny po půlnoci? Text "gimme gimme gimme". Jedná se o virtuální velikonoční vajíčko připomínající skupinu ABBA a její hit Gimme! Gimme! Gimme! (A Man After Midnight). Problém nastane, pokud gimme gimme gimme nabourá automatizované testování softwaru. To se pak příkaz man musí opravit [Bug 1515352] [reddit].

Ladislav Hagara | Komentářů: 10
Jak se vás potenciálně dotkne trend odstraňování analogového audio konektoru typu 3,5mm jack z „chytrých telefonů“?
 (9%)
 (1%)
 (1%)
 (1%)
 (75%)
 (14%)
Celkem 759 hlasů
 Komentářů: 37, poslední 21.11. 15:21
    Rozcestník

    Dotaz: PHP login = MySQL user

    15.1.2011 00:01 Martin Vesely
    PHP login = MySQL user
    Přečteno: 3758×
    Dobry den,

    pisu takovy maly "informacni system" pro kamarady. Bude se do nej prihlasovat jen nekolik lidi. Z "urcitych duvodu" bych potreboval, aby login do aplikace korespondoval s loginem do MySQL. Tedy v zadnem PHP souboru nebude ulozene jmeno a heslo do DB.

    Jenomze at googlim jak googlim, nachazim akorat clanky o tom, jak se prihlasovat pomoci tabulky 'users' a loginu ulozenem v 'config.php'.

    Nemate nekdo zkusenosti s tim jak postupovat, pokud chci aby login do PHP aplikace byl zaroven loginem do MySQL? Mam pouzit mysql_pconnect? Skript 'login.php' otevre spojeni s DB a kdyz se povede tak presmeruje na index.php a spojeni zustane otevrene? Skript 'logout.php' spojeni zavre?

    Nedari se mi nalezt jediny clanek, ktery by se timto zabyval. Ktery by mne upozornil na zasadni chyby, ukazal cestu...

    Prosim nasmerujte mne nekdo. Dekuji. -Martin

    Odpovědi

    15.1.2011 11:10 Magog | skóre: 6
    Rozbalit Rozbalit vše Re: PHP login = MySQL user
    Proč to nejde udělat tak, že jméno a heslo z přihlašovacího formuláře bude zároveň jménem a heslem do MySQL? Problém bude v tom, jak udržovat spojení do databáze. Můžete si například pamatovat to jméno a heslo. Pamatovat si jej na straně serveru bude obtížné, protože nemáte k dispozici databázi, resp. ukládáte údaje nutné k přihlášení do DB. Pamatovat si to na straně klienta (např. v cookies nebo jako součást stránky) taky není ideální, protože při každém požadavku se jméno a heslo přenáší znovu na server.

    Jinak řečeno logovat se do PHP systému loginem do DB serveru přináší spoustu problémů. Nestálo by za to zvážit, zda to nelze udělat jinak, jednodušeji?

    Jinak standardní praxe je na začátku skriptu otevřít spojení do DB, vykonat svoje dotazy, zavřít spojení a odeslat výsledek.
    mess avatar 15.1.2011 11:52 mess | skóre: 43 | blog: bordel | Háj ve Slezsku - Smolkov
    Rozbalit Rozbalit vše Re: PHP login = MySQL user
    Nešlo by si pamatovat to přihlašovací jméno a heslo v $_SESSION. Samozřejmě za předpokladu, že se session bude ukládat někam jinam, než do databáze. Jak se dívám do dokumentace, tak se session ukládá do filesystému, takže s tím by problém být neměl.
    Cez párne mesiace zošíváš vaginy, cez neparne montuješ hajzle.
    15.1.2011 12:40 Magog | skóre: 6
    Rozbalit Rozbalit vše Re: PHP login = MySQL user
    Ano, sessions je možnost. Musí být ale povolené na serveru (což je dost často) a uživatel musí mít povolené cookies (což nemusí být tak časté, např. na mobilech nebo z důvodu paraonii).

    (Session ID se ukládá do cookies u uživatele. Rozdíl je v tom, že se o to nemusíte starat vy jako autor dané aplikace)
    mess avatar 15.1.2011 13:23 mess | skóre: 43 | blog: bordel | Háj ve Slezsku - Smolkov
    Rozbalit Rozbalit vše Re: PHP login = MySQL user
    ... a uživatel musí mít povolené cookies...
    Uživatel, který má cookies zakázané se stejně nepřihlásí na většinu webů, jelikož je přihlášování většinou řešené právě tím to způsobem. Zadruhé, když je má zakázané, asi ví, co dělá a měla by mu stačit hláška, že si má cookies pro přihlášení povolit. Takže bych povolení/nepovolení cookies na straně uživatele jako problém neviděl.
    Cez párne mesiace zošíváš vaginy, cez neparne montuješ hajzle.
    15.1.2011 13:55 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: PHP login = MySQL user
    Lze to řešit ta že to bude $_SESSION proměná, ktéré se při standardním přihlášení ukládají do přednastaveného adresáře. Tento adresář lze změnit i ze skriptu (pokud máte server pod kontrolou a je Vám to umožněno) pomocí fce session_save_path().
    Pokud takto učiníte máte další možnost kontroly tohoto ukládacího prostoru, a můžete jej promazávat dalšími prostředky aby tam něco nezůstávalo apod.
    Pokud chcete zvýšit bezpečnost, můžete hesla do $_SESSION zašifrovaná na základě třeba něčeho v konfiguračním souboru php aplikace či certifikátu, a k tomuto souboru umožníte přístup jen pro čtení a jen uživateli, na kterého běží web server. (někdo bude argumentovat, že je to „security by obscurity“, ale není, je to jiná level, ne každý se může přihlásit na uživatele 'wwwrun', nebo jiného na kterého běží web server.) - já bych tam ještě před tím vložil nějaký obskurní prvek (otočil heslo, pokud má lichý počet znaků tak něco a tak), bo i to může být někdy součástí zabezpečení (buď to prodlouží, nepatrně čas k získání hesel, nebo to znemožní, člověku neznalému co se mu to dostalo do ruky, včetně certifikátu či master hesla to prokouknout).
    A co se týče vypnutých cookie, zkuste si následující (na serveru s safe_mode=off):
    <?php
    error_reporting(0);
    ini_set('display_errors', 'Off');
    
    ini_set("session.use_only_cookies", "0");
    ini_set("session.use_cookies", "1");
    ini_set("session.use_trans_sid","1");
    ini_set("session.name", "uidhash");
    session_start();
    echo ini_get();
    
    error_reporting(E_ALL | E_STRICT);
    ini_set('display_errors', 'On');
    
    if(!isset($_SESSION['test']))
      $_SESSION['test'] = '???';
    echo 'Last time: '.  $_SESSION['test'] . ', now: ' . time() . '<br />';
    
    $_SESSION['test']=time();
    
    ?>
    <form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>" >
      <input type="submit" />
    </form>
    <a href="<?php echo $_SERVER['PHP_SELF'];?>">link</a>
    
    Vypněte cookies v prohlížeči a refreshněte stránku a zkuste znovu - a podívejte se na zdrojová kód stránky.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    16.1.2011 14:16 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: PHP login = MySQL user
    echo ini_get(); na 10. řádku je tam zbytečné-nesmyslné zakomentujte si jej :)
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    16.1.2011 14:29 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: PHP login = MySQL user
    Ono se to může ukládat i do DB, je potřeba jen napsat jednotlivé fce, zaregistrovate je pomocí session_set_save_handler() a pro připojení k DB použijete master heslo s uživatelem oprávněným zapisovat jen do té tabulky či db pro session proměnné.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    Jendа avatar 15.1.2011 12:36 Jendа | skóre: 74 | blog: Výlevníček | JO70FB
    Rozbalit Rozbalit vše Re: PHP login = MySQL user
    Při normálním HTTP přihlášení má na straně serveru jméno a heslo pořád dostupné v $_SERVER['PHP_AUTH_USER'] a $_SERVER['PHP_AUTH_PW'].
    taky není ideální, protože při každém požadavku se jméno a heslo přenáší znovu na server
    Jak to vadí?
    Why did the multithreaded chicken cross the road? to To other side. get the
    15.1.2011 12:42 Magog | skóre: 6
    Rozbalit Rozbalit vše Re: PHP login = MySQL user
    Pokud jde přes HTTP, tak jde v plaintextu. A tím pádem se kdokoliv může kdekoliv po cestě kouknout. HTTPS je práce navíc.
    Jendа avatar 15.1.2011 12:50 Jendа | skóre: 74 | blog: Výlevníček | JO70FB
    Rozbalit Rozbalit vše Re: PHP login = MySQL user
    Pokud to jde nešifrovaně, tak kdokoli může
    • odposlechnout heslo při přihlašování
    • ukrást session při každém požadavku
    • a pokud chce heslo a má session, může session zneplatnit a tím donutit oběť k dalšímu přihlášení heslem
    Why did the multithreaded chicken cross the road? to To other side. get the
    xkucf03 avatar 16.1.2011 13:45 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: PHP login = MySQL user
    Jestli se citlivé údaje přenášejí jen jednou nebo pokaždé je celkem jedno, rozdíl je minimální. HTTPS je více méně nutnost – ano, někdo to může považovat za práci/náklady navíc, ale v takovém případě bych doporučil zamyslet se nad tím, jakou bude mít práci a náklady v případě kompromitace, odposlechu.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    15.1.2011 13:12 Martin Vesely
    Rozbalit Rozbalit vše Re: PHP login = MySQL user
    Dobry den,

    tedy predem dekuji za Vas zajem a pomoc. A abych trochu odkryl karty, proc vlastne resim tento zpusob prihlaseni do aplikace...

    V prve rade jsem jej (snad naivne) pokladal za bezpecnejsi. Ale neuvedomil jsem si, ze stejne nekde budu muset mit uschovane to heslo. Kdyz jsem si precetl rozdil mezi mysql_connect a *_pconnect, zjistil jsem, ze slouzi docela jinemu ucelu, nez jsem se domnival.

    Ve druhe rade budu mit uzivatele, kteri budou do DB prispivat a ty, kteri ji budou pouze cist. Delegovanim kontroly prav na MySQL jsem se chtel vyhnout tomu, abych to musel resit v samotne aplikaci. Tedy ne, ze bych to do jiste miry resit nemusel, ale i pri opomenuti/chybe by pripadny pokus o zapis zastavilo MySQL.

    No a do tretice mne uz psani PHP kodu trochu omrzelo a zacal jsem objevovat schopnosti a silu samotneho (My)SQL. Snazim se na jeho bedra prenest velkou cast prace. Neresim do jake miry je to rozumne, chci si to zkratka vyzkouset.

    Jak je login reseny napr. u PHPMyAdmin, netusite nekdo? Tedy koukam tady do kodu, ale moudry z toho nejsem.

    Dekuji Vam, -Martin
    15.1.2011 14:39 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: PHP login = MySQL user
    U phpMyAdmin definujete pomocí $cfg['Servers'][$i]['auth_type'] metodu přihlášení a od ní odvinutý způsob uložení informací viz třeba zde.
    Kde v případě 'cookie' není heslo v session proměnné, jak píšou - kód jsem nezkoumal, ale přímo v zašifrované cookie (pomocí fráze v $cfg['blowfish_secret']), z hlediska bezpečnosti na to může být dvojí pohled. Heslo je zašifrované jinde, než je klíč - což je dobře, ale zašifrované heslo je veřejné - což nemusí vadit (mně to vadí z toho důvodu, že zašifrovná hesla se mohou nasbírat a pak stačí mít tu passfrázi (nechťa uteče :)). Pokud by byla zašifrovaná hesla na serveru jen nezbytně dlouho dobu, je těžké je nasbírat a není to tak zlé, bo ji(passfrazi) změním a hotovo, ale když to chodí pryč je třeba změnit všechna hesla hned.).
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.