Pagina 1 van 1

Rechten op mappen.

Geplaatst: 05 jun 2003, 09:55
door NieMakkelijk
Wie kan me wat uitleg geven over rechten op mappen. Ik heb op meerdere plaatsten al wat gelezen maar kom er niet echt uit.

Ik wil op een server mappen aanmaken voor sommige gebruikers. Zij kunnen hierin geuploade bestanden bewaren. Hoe voorzie ik dat alleen de eigenaar toegang heeft tot deze folder? Als je dus een url zou intypen:
www.mijnsite.be/members/foldervanmember1/MyWife.jpg je dit plaatje niet te zien krijgt als je niet de eigenaar bent van de map 'foldervanmember1'.

Kan dit?

NieMakkelijk (Starter).

Geplaatst: 05 jun 2003, 10:27
door meon
Ja, dat kan, ik heb het zelfs nog niet zo lang geleden gemaakt.

Wat je daarvoor nodig gaar hebben zijn sessies en filesystemfuncties van PHP. Kijk eens op PHP.net als die dingen je niet afschrikken, want makkelijk/basic is dat toch niet.
Kijk eens naar
http://be2.php.net/filesystem en
http://be2.php.net/manual/nl/ref.session.php

Bovendien is een koppeling met MySQL dan ook wel handig:
http://be2.php.net/manual/nl/ref.mysql.php

Als de moed je niet naar de schoenen zakt wil ik je wel op weg helpen ;-)

Het idee is dat je:
1) Je kan aanmelden als zijnde die persoon
2) Je bestanden dan kan uploaden, deze worden dan weggeschreven op schijf en er wordt in de database bijgehouden welke file van wie is
3) Je kan ook downloaden, er wordt in de database gekeken of jij rechten hebt op die file
4) Bovendien moet je er voor zorgen dat je gewoonweg geen files kan downloaden (op geen enkele manier) tenzij je bent aangemeld.

Snap het een beetje.

Geplaatst: 05 jun 2003, 13:29
door Gast
Ik snap wel een beetje het globale idee. Je werkt met 'leden' die allemaal een bepaald 'level' hebben. Aan de hand van dit level regel je via PHP toegang tot bepaalde mappen, bestanden, enz...

Maar als ik op jou foto rechtsklik, dan krijg ik het URL adres: http://cmdstud.khlim.be/~cpeeters/downl ... avatar.gif

Copieer ik dit naar de adresbalk krijg ik alleen je foto in mijn browser. Deze map (images) is dus niet beveiligd, want ik kan aan je foto?!

t'Is omdat ik bij andere pogingen nog nooit een waarschuwing heb gekregen dat ik geen toegang heb tot een welbepaalde map?!

Volg je me een beetje?

Mvg,

Geplaatst: 05 jun 2003, 13:41
door meon
Jaja, dat is m'n stapje 4 eh :-)

Ik zal je eens een ander voorbeeld geven:

http://pool.anigraphics.be/get.php?file ... f377594dfb > deze file is gemarkeerd als public
en
http://pool.anigraphics.be/get.php?file ... d5712ef9a2 > deze file is gemarkeerd als private en dus enkel te downloaden als je aangemeld bent.

Sorry als ik lastig doe maar....

Geplaatst: 05 jun 2003, 20:05
door NieMakkelijk
In je vb kan ik ook uit de url niet opmaken in welke map dit bestand staat. Ik kan alleen aan je bestand via PHP.

Maar van bijna elke foto op eender welke site kan je de locatie achterhalen (of het rechtsklikken zou moeten worden afgevangen met JavaScript). Kan je dat ook beveiligen?

Php genereert dus een pagina (tekst en images) -> geen probleem, maar zou je rechtstreeks toegang willen krijgen tot een bepaald image (door de url in de address-balk in te typen), zou je ook een bepaalde warning moeten krijgen.

Nog een kleine vraag: Ik voorzie enkele personen bij het opstarten ve site met level 4, dwz dat ze de site voorzien van nieuwsberichten, flashes, etc... Zij krijgen een map op de server toegewezen waar ze hun images kunnen stockeren. Na verloop van tijd dienen zich nog enkele kandidaten aan. Ik breng ze over naar level 4, dwz dat ze ook een map krijgen. Laat elke server dit toe dat php binnen de root mappen aanmaakt??

Sorry voor de 'abbetante' vragen vriend...!

Geplaatst: 05 jun 2003, 22:05
door meon
Hier zeg je wel wat anders eh!
Kijk, als je op een php-pagina al een image ziet staan is het al te laat: het staat dan al op de lokale schijf van die persoon die het zag.

Hier gaat het om bestandbeveiliging daarvoor.

In m'n url kan je inderdaad niet zien in welke map het zit (in werkelijkheid zit het zelfs helemaal niet in een map).

Wat je kan doen ik controleren op HTTP_REFERRER, dus de aanvraag-site moet dezelfde zijn als de site waar de image op staat bijvoorbeeld. Als je dan de image direct aanspreekt krijg je een error.

Nog eenvoudiger om dat op te lossen is werken met een correcte .htaccess , maar daar weet ik nu niet meteen wat daar in moet staan om dat te doen werken.

Geplaatst: 05 jun 2003, 22:37
door Pi R²
maar ge kunt toch als ge de juiste webhost hebt, makkelijk beveiligde directories maken?

Als het om een beperkt aantal gebruikers gaat, kan je toch voor elke gebruiker op voorhand een beveiligde map maken, waaraan een paswoord hangt (afhankelijk van de mogelijkheden van de provider).

Als map http://domein/gebruiker_A beveiligd is, plaatst ge in die map een php-scriptje om te uploaden: http://domein/gebruiker_A.

Als iemand dan bv. http://domein/gebruiker_A/file in de adresbalk typt, dan zal hij vragen naar het paswoord om die beveiligde map te openen, en dan kan alleen een "gebruiker A" dat openen.

Om iets te uploaden gaat gebruiker A naar http://domein/gebruiker_A/upload.php , om daar te geraken moet hij ook eerst inloggen.

Voor elke gebruiker maakt ge dan een map ala http://domein/gebruiker_B, http://domein/gebruiker_C etc. waarin telkens een bestandje upload.php zit. Zo een php-script kunt ge wel schrijven hoop ik? Gewoon zoeken naar de bron op de pc, en dan kopieren via ftp naar de server.

Ik denk dat ge zo een systeem bedoelt?

Grtzzz, de surface