Loading
_ DESCIFRANDO CONEXIÓN SEGURA...

Nombres de archivo en el almacenamiento de objetos

5 tareas · 40 min · Principiante

Editorial Quinchama no guarda los documentos en el disco del servidor, sino en un depósito de objetos, y mucha gente da por hecho que eso cierra el asunto de las rutas. Una autora dice que su manuscrito «cambió de contenido» y el equipo editorial encontró un archivo de regalías en la zona pública del sitio. Tienes el controlador de subida, la política del depósito, el inventario y el registro de subidas.

0 de 5 · 0%

Objetivo de la sala

Editorial Quinchama no guarda los documentos en el disco del servidor, sino en un depósito de objetos, y mucha gente da por hecho que eso cierra el asunto de las rutas. Una autora dice que su manuscrito «cambió de contenido» y el equipo editorial encontró un archivo de regalías en la zona pública del sitio. Tienes el controlador de subida, la política del depósito, el inventario y el registro de subidas.

Un depósito de objetos no tiene carpetas: tiene claves, que son cadenas de texto, y las barras que llevan dentro son parte del nombre. Lo que parece una carpeta es un prefijo, y lo que parece un árbol lo dibuja la consola para que resulte familiar.

Eso cambia dos cosas. La primera: el servicio no interpreta los ascensos de directorio, pero la biblioteca que usa la aplicación sí suele normalizar la clave antes de enviarla, así que un nombre con ascensos puede acabar convertido en una clave de otro prefijo. La segunda, y más importante: los permisos se dan por prefijo. Si la clave se arma con el nombre que manda el navegador, quien sube decide en qué prefijo cae su archivo, y con ello qué política de lectura le aplica.

A eso se suma algo que el disco de un servidor no hace tan en silencio: escribir una clave que ya existe reemplaza su contenido. Sin versiones activadas, lo anterior no queda en ninguna parte.

Responde para continuar

¿Por qué el nombre que manda el navegador no sirve para armar la clave de un objeto?

Ver pista de ayuda

Pregúntate quién decide el prefijo en ese código.

Abre el laboratorio. SubidaController.php muestra cómo se arma la clave; politica-almacen.json dice qué se lee en cada prefijo. Cruza el inventario con tabla-autores.txt: cada cuenta de autor tiene su prefijo y el equipo editorial publica en el público como parte de su trabajo.

Responde para continuar

¿Qué clave del inventario quedó donde cualquiera puede leerla sin tener sesión, escrita por una cuenta de autor? Escríbela completa, tal como aparece.

Ver pista de ayuda

Es la escritura más reciente del inventario.

La autora del libro QNC-2041 dice que su manuscrito ya no es el suyo. Mira en el inventario la clave de ese manuscrito: el tamaño, la fecha de la última escritura y la cuenta que la hizo.

Responde para continuar

¿Qué cuenta dejó escrito el manuscrito que hoy está en el prefijo de la autora del libro QNC-2041? Escríbela tal como aparece en el inventario.

Ver pista de ayuda

La fecha de esa línea no coincide con ninguna subida de la dueña del prefijo.

Para el informe hace falta una cifra: cuántos objetos del depósito los escribió una cuenta de autor fuera de su propio prefijo. La cuenta del equipo editorial publica en el prefijo público y en el interno como parte de su trabajo, así que sus escrituras no cuentan.

Responde para continuar

¿Cuántas claves del inventario las escribió una cuenta de autor fuera de su propio prefijo? Escribe solo el número.

Ver pista de ayuda

Cruza la columna de quién escribió con el prefijo que le toca a esa cuenta.

El informe de esta sala lleva varias recomendaciones: generar la clave en el servidor en lugar de tomarla del navegador, activar las versiones para que una escritura no borre la anterior y revisar qué llegó al prefijo público. Solo una de ellas impide que vuelva a ocurrir.

Responde para continuar

¿Cuál de los tres cambios cierra la causa y no solo el daño ya hecho?

Ver pista de ayuda

¿Cuál de los tres quita la decisión de manos de quien sube?

Inicia sesión para registrar tus puntos y progreso en el ranking.

Whoami-Labs Pro

Whoami-Labs Pro utiliza cookies

Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad