Manejo de directorios y ficheros con accesos
protegidos por clave
La idea es ofrecer un espacio en nuestro servidor a nuestros clientes para
poder compartir archivos. Esto se consigue a través de un directorio general
para todos los clientes y otro particular para cada cliente.
Al directorio general tendrán acceso de lectura todos los clientes, aquí
podremos subir noticias, circulares, etc.
Estructura de los directorios a manejar:
- Carpeta "clientes":
- Carpeta "cliente1":
- Fichero "cliente1.txt"
- Fichero "cliente1.doc"
- Fichero "cliente1.pdf"
- Carpeta "cliente2":
- Fichero "cliente2.txt"
- Fichero "cliente2.doc"
- Fichero "cliente2.pdf"
- Fichero "general.txt"
- Fichero "general.doc"
- Fichero "general.pdf"
- Fichero "general.xls"
- Fichero "general.htm"
- Fichero "general.desconocido"
Usuarios
Funciones |
Administradores
(nivel 0) |
Cliente1
(nivel 1) |
Cliente2
(nivel 1) |
Operaciones en el directorio "clientes": |
Lectura de archivos |
Si |
Si |
Si |
Escritura de archivos |
Si |
No |
No |
Borrado de archivos |
Si |
No |
No |
Operaciones en el directorio "cliente1" |
Lectura de archivos |
Si |
Si |
No |
Escritura de archivos |
Si |
Si |
No |
Borrado de archivos |
Si |
Si |
No |
Operaciones en el directorio "cliente2" |
Lectura de archivos |
Si |
No |
Si |
Escritura de archivos |
Si |
No |
Si |
Borrado de archivos |
Si |
No |
Si |
El nombre de usuario, la clave de acceso y el nivel de permisos se controlan
mediante MySQL.
Por la situación del directorio "clientes" no se puede tener
acceso nada más que desde nuestros programas. La configuración del servidor
impide cualquier acceso externo.
Podemos implementar todo tipo de restricciones en cuanto al tipo y tamaño de
archivos a subir.
Podemos "obligar" a abrir un archivo con una aplicación
determinada (ya implementado para archivos pdf, doc y xls), para evitar que nos ejecuten algún script que suban con una
extensión falsa.
Funcionamiento: |
index.php |
- include "comprueba.php";
- Muestra los datos y las opciones
- Desconexión: desconexion.php
- Abrir un archivo: abrir_archivo.php
- Borrar un archivo: borrar_archivo.php
|
comprueba.php |
- Si no se ha iniciado sesión, redirige a "entrada.php"
|
entrada.php |
- Formulario de autentificación que se autoenvía
- Comprobación de usuario y clave en la base de datos
- Si son correctos, guarda usuario y clave en la sesión y
redirige a index.php
- Contiene estas aclaraciones
|
desconexion.php |
- Borra la sesión
- Redirige a index.php
|
abrir_archivo.php |
- include "comprueba.php";
- Abrimos el archivo en una nueva ventana con la aplicación
correspondiente si la hemos definido
|
borrar_archivo.php |
- include "comprueba.php";
- Intentamos borrar el archivo e informamos del resultado de la
operación
- Enlace a "index.php"
|
El programa se complementa con un directorio "imagenes" que contiene iconos de archivos y carpetas.
© Luciano 2.006 - www.luciano.es
|