Ubuntun käyttö > Ohjelmointi, palvelimet ja muu edistyneempi käyttö

[ ratkaistu ] php-sivun lähdetietojen piilottaminen wgetin näkyviltä

(1/2) > >>

teele:
Jos halutaan tehdä painonhallintasivusto jossa lähtötietoina on kunkin käyttäjän nimi, ikä ja sitten punnitustuloksia päivittäispunnituksista, niin miten voidaan piilottaa muiden käyttäjien tiedot kaikilta muilta ja erityisesti ulkopuolisilta.

Lähtötietotiedoston on ajateltu olevan muotoa

nimi   ikä  kg kg kg kg kg kg ....
nimi   ikä  kg kg kg kg kg kg .....
nimi   ikä  kg kg kg kg kg kg .....
.
.


Käyttäjät näkevät omat tietonsa ja oman painonsa kehittymisen verrattuna painojen kehittymisen keskiarvoon. Laskenta tehdään ja tiedot näytetään php:n avulla. Php-koodi ja tietorivit sisältävä tiedosto sijaitsevat DocumentRoot -määrittelyn mukaisessa hakemistossa, jonne www-datalla pitää tietysti olla luku- ja kirjoitusoikeudet tulosten laskemista ja uusien punnitustietojen lisäämistä varten.

Mutta kaikki aineisto on kenen tahansa haettavissa wgetin avulla, mikä ei ole toivottava piirre. Miten php-lähdetekstin ja kerätyt tiedot voisi suojata niin, että sivut toimisivat kuitenkin selaimella ja www-data pystyisi lukemaan ja kirjoittamaan hakemistoon.

Jos www_datalla on lukuoikeus, tarkoittaako se aina sitä, että se myös toimittaa lukemansa tiedot sen enempää kyselemättä esimerkiksi wgetille tai voisiko tiedosto-oikeuksia muuttamalla turvata lähdetiedot tai ratkeaisiko asia .htaccess -säädöillä?

_Pete_:
Yksi tapa on pistää tiedot tietokantaan.

nm:

--- Lainaus käyttäjältä: teele - 04.09.19 - klo:11.27 ---Käyttäjät näkevät omat tietonsa ja oman painonsa kehittymisen verrattuna painojen kehittymisen keskiarvoon. Laskenta tehdään ja tiedot näytetään php:n avulla. Php-koodi ja tietorivit sisältävä tiedosto sijaitsevat DocumentRoot -määrittelyn mukaisessa hakemistossa, jonne www-datalla pitää tietysti olla luku- ja kirjoitusoikeudet tulosten laskemista ja uusien punnitustietojen lisäämistä varten.
--- Lainaus päättyy ---

Kannattaa sijoittaa salassa pidettävä datatiedosto johonkin muualle kuin DocumentRootin alle. Toki myös .htaccess-tiedostolla tai muulla web-palvelinohjelmiston konfiguraatiolla voi piilottaa tiedostoja, mutta on selkeämpää ja helpompaa siirtää ne kokonaan muualle. Datakansioon ja -tiedostoihin tarvitsee vain lisätä pääsyoikeudet www-datalle, niin pystyt lukemaan tietoja PHP-ohjelmassa.

PHP-skriptit sen sijaan sijoitetaan tavallisesti web-palvelinohjelmiston (kuten Apachen) DocumentRootin tai erikseen konfiguroidun hakemiston alle. Apachen mod_php estää .php-tiedostojen sisällön esittämisen julkisesti, vaan sen sijaan suorittaa ohjelman, joka sitten tuottaa julkisesti näkyvän HTML-dokumentin.

teele:

Eli jos annan tietoihin luku- ja kirjoitusoikeudet erillisissä datakansioissa www-datalle, ne eivät tule kaikkien saataville wgetillä.

Tällöin oikeuksia ei ole ulkopuolisilla, mutta ymmärtääkö Apache olla toimittamatta tietoja eteen päin, jos se itse niihin pääsee käsiksi.Pitääkö Apachessa laittaa joku säätö päälle tällaisen toivottavan tilanteen aikaan saamiseksi.

_Pete_:

--- Lainaus käyttäjältä: teele - 04.09.19 - klo:12.56 ---
Eli jos annan tietoihin luku- ja kirjoitusoikeudet erillisissä datakansioissa www-datalle, ne eivät tule kaikkien saataville wgetillä.

Tällöin oikeuksia ei ole ulkopuolisilla, mutta ymmärtääkö Apache olla toimittamatta tietoja eteen päin, jos se itse niihin pääsee käsiksi.Pitääkö Apachessa laittaa joku säätö päälle tällaisen toivottavan tilanteen aikaan saamiseksi.

--- Lainaus päättyy ---

Apache ei tosiaankaan tarjoile mitään tiedostoja asetetun www-root kansion ulkopuolelta joten jos siinä ajettavalla php koodilla on lukuoikeus tiedostoon niin php pystyy sen lukemaan vaikka onkinin www-root ulkopuolella.

Navigaatio

[0] Viestien etusivu

[#] Seuraava sivu

Siirry pois tekstitilasta