Portál AbcLinuxu, 15. července 2025 08:32


Dotaz: Shel - Uložení dat

21.7.2011 16:46 Dědek
Shel - Uložení dat
Přečteno: 340×
Odpovědět | Admin
Ahoj, poradí prosím někdo jak v shelu uložit bezpečně data do mysql? Děkuji za pomoc

Řešení dotazu:


Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

21.7.2011 16:58 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: Shel - Uložení dat
Odpovědět | | Sbalit | Link | Blokovat | Admin
Jak bezpečně?, Jaká data?
… s ochrankou za zády? :-)
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
mess avatar 21.7.2011 16:58 mess | skóre: 43 | blog: bordel | Háj ve Slezsku - Smolkov
Rozbalit Rozbalit vše Re: Shel - Uložení dat
Odpovědět | | Sbalit | Link | Blokovat | Admin
Co konkrétně myslíš pojmem "bezpečně"? Jinak man myslq
Cez párne mesiace zošíváš vaginy, cez neparne montuješ hajzle.
21.7.2011 22:37 Dědek
Rozbalit Rozbalit vše Re: Shel - Uložení dat
Odpovědět | | Sbalit | Link | Blokovat | Admin
No bezpečně tím myslím tak, že nebudu vyžadováno heslo přímo ve scriptu..
xkucf03 avatar 22.7.2011 00:27 xkucf03 | skóre: 49 | blog: xkucf03
Rozbalit Rozbalit vše Re: Shel - Uložení dat
Viz Kit – heslo napíšeš do konfiguračního souboru .my.cnf a nezapomeň mu dát chmod 600, ať to nečte kde kdo.
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-DK, Relational pipes
21.7.2011 23:13 Kit
Rozbalit Rozbalit vše Re: Shel - Uložení dat
Odpovědět | | Sbalit | Link | Blokovat | Admin
Třeba pomocí curl přes Apache a PHP. Nejsnazší a nejpohodlnější řešení, je možné si tak v PHP vyrobit vlastní protokol dle potřeby.

Je také možné si vyrobit jiného démona, třeba z netcatu, samozřejmě běžícího pod jiným uživatelem. Heslo uložíš do .my.cnf, viz manuál.
Heron avatar 25.7.2011 09:38 Heron | skóre: 53 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: Shel - Uložení dat

To je trochu overkill, ne? Vlastní protokol, nutnost mít spuštěný webserver a nainstalovaný interpretr jazyka což vlastně nakonec jen nahradí volání mysql za volání curl v jeho daném skriptu. Náklady navíc, přínos nulový.

xkucf03 avatar 25.7.2011 11:06 xkucf03 | skóre: 49 | blog: xkucf03
Rozbalit Rozbalit vše Re: Shel - Uložení dat
+1
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-DK, Relational pipes
25.7.2011 11:52 Kit
Rozbalit Rozbalit vše Re: Shel - Uložení dat
Pokud nechci uživateli umožnit přístup k heslu MySQL, tak moc dalších variant není. Ještě samozřejmě SSH s klíči.

Řešení přes Apache a PHP běžně používám, protože je stejně mám nainstalované. Navíc to funguje i v síti. Klient nemusí být curl, stačí netcat. Mně samotnému to už jako overkill nepřipadá.

Je však možné, že tazatel jen chce, aby heslo nebylo ve spouštěcím příkazu klienta MySQL. V tom případě dobře poslouží .my.cnf
xkucf03 avatar 25.7.2011 13:09 xkucf03 | skóre: 49 | blog: xkucf03
Rozbalit Rozbalit vše Re: Shel - Uložení dat
Ale pak mu musíš dát jméno/heslo k tomu HTTP rozhraní, takže to vyjde nastejno. Navíc, musíš programovat, co uživatel může a co ne – místo abys jen v SQL udělal GRANT na patřičné tabulky/operace.
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-DK, Relational pipes
25.7.2011 14:22 Kit
Rozbalit Rozbalit vše Re: Shel - Uložení dat
Původní dotaz byl snad zodpovězen, tak se můžeme věnovat polemice.

Ano, řešení přes .my.conf používám, pokud s MySQL chci komunikovat jazykem SQL. Pokud potřebuji omezená práva uživatele, vytvořím mu účet v MySQL a přidělím GRANT.

Jazyk SQL byl původně navržen pro přímou komunikaci uživatele s databází. Pokud někomu vyhovuje, je to v pořádku. Praxe však ukázala, že pro všechny typy uživatelů vhodný není. Moc si nedovedu představit, jak skladník píše výdejku přímo v SQL, i když to jde.

Proto vznikly různé aplikační nadstavby, které bohužel převzaly velkou část vnitřní logiky SQL a databázi degradovaly na datový sklad tím, že využívají jen některé základní příkazy. Příkladem budiž správa uživatelů a zmíněný GRANT. V aplikacích napsaných v PHP je dnes najdeme jen zřídka. Běžně dostupné ORM na tom budou asi podobně.

Když jsem včera hledal, jak vytvořit podmíněný INSERT (vložení jednoho záznamu jen pokud celkový počet nepřekročí 15), tak jsem nic nenašel. Nakonec jsem na to přišel, ten příkaz ani není dlouhý, ale došlo mi, jak málo schopností jazyka SQL se využívá. Daleko častěji se tyto schopnosti obchází berličkami v PHP či v jiných nadstavbových aplikacích. Souhlasím, že mé řešení bylo také jednou takovou berličkou.

Založit nové vláknoNahoru

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

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.