Zaščita PHP skripte - Joomla
 
inkanet 16. dec 2012 11:27:11 Pridružen od:
3. okt 2008
328 objav
110 1 2
#1

Stran imam narejeno v Joomli 2.5. V eni od podmap www.domena.com/podmapa imam php skripto ki pobere z druge strani podatke o ceni in jo zapiše v tabelo. Tabela se nahaja v isti bazi kot vse tabele od Joomle. Komponenta v Joomli iz te tablele potem prebere podatke in jih prikaže na strani.



Zanima me kako bi lahko zaščitil php skript saj je sedaj v njem podatek za dostop do baze vpisan kot navaden tekst:



mysql_connect("localhost:3306","uporabnik","geslo");



Ali se da za connect na bazo uporabiti katerega od klicev za Joomlo, ali je bolje na kakšen način zaščititi sam php file? S .htaccess mogoče.


všeč(0) ni všeč(0) spam(0)
 
Mešetar 16. dec 2012 11:36:00 Pridružen od:
24. nov 2010
1543 objav
1945 962 114
#2

php file je "zasciten" (executable) ze sam po sebi... ce nima nihce dostopa do ftpja ali kako drugace do raw fajlov, pol nima kaj praskat...



ce bos lazje spal, includaj pol config fajl od joomle in uporabi joomla spremenljivke za connect


všeč(1) ni všeč(0) spam(0)
 
Gogy 16. dec 2012 11:47:17 Pridružen od:
17. mar 2007
2491 objav
2064 252 12
#3

@Mešetar, ponavadi je te connectione boljše dat od Joomle že zato, da če spremeniš geslo na bazi, da ti ni potrebno spreminjat vseh connectionov kjer so takole kot pri inkanet v vsaki skripti posebej ampak samo spremeniš v Joomli in vse deluje naprej kot prej.


všeč(1) ni všeč(0) spam(0)
 
Mešetar 16. dec 2012 12:01:49 Pridružen od:
24. nov 2010
1543 objav
1945 962 114
#4

ja sej... zato sem mu tudi to predlagal...

pa cetudi je spraseval, kako zascitit php file in ne kaj je iz structure design/maintainability point of view-ja boljse... ;)


všeč(0) ni všeč(0) spam(0)
 
Gogy 16. dec 2012 13:45:16 Pridružen od:
17. mar 2007
2491 objav
2064 252 12
#5

Aha, OK.



Sem razumel, da si mu želel povedat da je tako čisto v redu, če pa bo lažje spal, da pa lahko tudi includa :) v smislu da raje pusti tako, ampak če se bo bolje počutil naj naredi tako kot je prav :)


všeč(0) ni všeč(0) spam(0)
 
inkanet 16. dec 2012 13:56:14 Pridružen od:
3. okt 2008
328 objav
110 1 2
#6

Ni tak problem spremeniti ročno, ker se gre samo za eno stran/bazo.



Se pravi nekaj takega če bi to reševal v okviru joomle:


<?php
//init Joomla Framework
define( '_JEXEC', 1 );
define( 'DS', DIRECTORY_SEPARATOR );
define( 'JPATH_BASE', realpath(dirname(__FILE__).DS.'..' ));

require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );

$mainframe = JFactory::getApplication('site');

//DBQuery
$database =& JFactory::getDBO();
$query = "SELECT * FROM ..... WHERE ....;";
$database->setQuery($query);
$result = $database->query();
print_r($result);
?>

V bistvu če razumem pa to niti ni potrebno ker je php varen pred "pogledi od zunaj"?


všeč(0) ni všeč(0) spam(0)
 
Mešetar 16. dec 2012 14:41:16 Pridružen od:
24. nov 2010
1543 objav
1945 962 114
#7

tako je, ce je webserver pravilno nastiman (kar je ze po defaultu) ne more nihce pogledat v kodo php skripte, vidi le output ven


všeč(0) ni všeč(0) spam(0)
 
 

🔒 Za odgovor na to temo se moraš prijaviti.

Prijavi se