Tervehdys Ohjelmointiputkalaiset!
Olen hieman etsinyt ratkaisua kyseiseen pulmaan, mutta ajattelin tulla kysymään teiltä guruila hyvää ratkaisutapaa.
Haluan tietyille kansioille ja tiedostoille käyttäjäkohtaiset oikeudet esim. käyttäjä1 ei pääse selaamaan kayttaja2-kansion sisältöä ja niin edelleen. .htaccess oikea tapa lähestyä? Nopealta vilkaisulta vain tutustunut ja näytti, että saattaisi saada sillä toimimaan.
-Othnos
Saat tehtyä hakemistokohtaiset oikeudet esim. juuri .htaccess:lla, tosin jos kansioita on paljon tai oikeuksia muutetaan usein, on .htaccess turhan hankala. Silloin suosittelisin vaikka PHP-pohjaista autentikointia.
Mikäli haluat käyttää .htaccess:ia, löytyy siihen ohjeet osoitteesta http://www.htmlite.com/HTA006.php
Kiitos vastauksesta. Taisi olla juuri tuo linkki mistä kävin nopeasti vilkaisemassa ja näyttäisi olevan passeli omaan tarkoitukseen.
Miten PHP:llä pystyy kansioita ja tiedostoja suojaamaan? Tarkoitus olisi, kun kansiorakenteen tulevat olemaan samankaltaisia kuten kayttaja1/kuvat/kuva1.jpg, kayttaja2/kuvat/kuva1.jpg jne. niin ettei tietämällä suoraa urlia pääse tiedostoon käsiksi. Itselleni tulee vain mieleen, että jokaisen käyttäjän kansion nimeen generoidaan jokin pitkä merkkijono, mutta sekään ei poista ongelmaa täydellisesti.
-Othnos
Kuvatiedostoja ei pysty PHP:llä suoraan suojaamaan, mutta voithan käyttää sessioneja tai cookieita muiden tiedostojen kanssa.
PHP:llä pystyt suojaamaan siten, että ModRewrite:llä muutat kayttaja1/kuvat/kuva1.jpg:n sivu.php?tiedosto=kayttaja1/kuvat/kuva1.jpg:ksi ja sitten tarkistat onko käyttäjällä oikeus avata tiedosto.
-tossu- kirjoitti:
PHP:llä pystyt suojaamaan siten, että ModRewrite:llä muutat kayttaja1/kuvat/kuva1.jpg:n sivu.php?tiedosto=kayttaja1/kuvat/kuva1.jpg:ksi ja sitten tarkistat onko käyttäjällä oikeus avata tiedosto.
Minä ainakin arvaisin suoraan, että alkuperäinen on sijainnissa kayttaja1/kuvat/kuva1.jpg.
Voisihan sen tehdä siten, että luot taulukon kaikista kuvista, ja annat niille jonkin "salakoodin", esimerkiksi md5-summan kuvan nimestä ja jostain lisämerkkijonosta (esim. md5("kuva1.jpg" . "abc")).
$tiedostot = array(array("kuva1.jpg", md5-summa), array("kuva2.jpg", md5-summa));
Vai pystyikö PHP:ssä tekemään näin?
$tiedostot = array("kuva1.jpg" = md5-summa, "kuva2.jpg" = md5-summa);
Käyttäjä antaa kuvan osoitteen muodossa kuva.php?id=kuvan_md5_nimi. Tarkistat käyttäjän oikeudet, katsot mitä kuvaa id vastaa ja piirrät kuvan uudelleen GD:llä.
Macro kirjoitti:
Minä ainakin arvaisin suoraan, että alkuperäinen on sijainnissa kayttaja1/kuvat/kuva1.jpg.
Mitä se vaikuttaa asiaan? Et pääse tiedostoon käsiksi kun ModRewrite on käytössä.
temu92 kirjoitti:
Macro kirjoitti:
Minä ainakin arvaisin suoraan, että alkuperäinen on sijainnissa kayttaja1/kuvat/kuva1.jpg.
Mitä se vaikuttaa asiaan? Et pääse tiedostoon käsiksi kun ModRewrite on käytössä.
Olimpas tyhmä.
Kiitos vastanneille.
-tossu- kirjoitti:
PHP:llä pystyt suojaamaan siten, että ModRewrite:llä muutat kayttaja1/kuvat/kuva1.jpg:n sivu.php?tiedosto=kayttaja1/kuvat/kuva1.jpg:ksi ja sitten tarkistat onko käyttäjällä oikeus avata tiedosto.
Tämä kyseinen tapa lienee helpoin toteuttaa olemassa olevan järjestelmäni päälle ja helppo tehdä tarkistus PHP:n puolella.
Aihe on jo aika vanha, joten et voi enää vastata siihen.