In PHP è necessario gestire i permessi sui file e sulle cartelle che andiamo a manipolare attraverso gli script. E’ una tecnica consigliabile sia quando si lavora in ambiente Windows che Linux, ma per quest’ultimo, essendo un sistema multitasking, è addirittura indispensabile, onde non correre il rischio di subire danni irreparabili al server ed all’interso sistema da parte di persone poco simpatiche.
L’assegnazione dei permessi viene gestita attraverso un elemento detto mode e PHP utilizza la funzione chmod() per la sua gestione.
Esistono tre tipi di permessi, indicati ciascuno da un numero:
1 - esecuzione 2 - scrittura 4 - lettura
Attraverso dei calcoli, che vedremo in seguito, possiamo utilizzare il valore 666 per assegnare i privilegi solo ad utenti autenticati ed il valore 777 per assegnarli a qualsiasi utente, come i navigatori di passaggio sul sito.
Vediamo come impostarli:
<?
chmod("/nome_cartella/nome_file.ext", 0666);
?>
oppure:
<?
chmod("/nome_cartella/nome_file.ext", 0777);
?>
Nel caso 666 il primo 6 indica l’utente principale (User), il secondo 6 indica il gruppo (Group) ed il terzo 6 indica gli altri utenti (Others). In questo modo non viene concessa l’esecuzione da parte di utenti la cui natura non viene identificata.
Nel caso 777 tutti e tre i 7 indicano l’appartenenza al gruppo di permessi: 1, 2 e 4, ovvero esecuzione, scrittura e lettura.
Si consiglia di valutare caso per caso la natura delle proprie applicazioni basate sulla gestione di file e/o cartelle e decidere se è bene impostare o meno le restrizioni descritte.
