Resources.

Downloads, guides, and reference materials.

Open Source

Postmark Webhooks

Reciba eventos de entrega de Postmark, conserve la evidencia de supresión y detenga el correo de Drupal a destinatarios bloqueados. Módulos opcionales integran Mailer Plus y concilian los registros de supresión del proveedor.
Open Source

Field Guard

Acceso a campos de Drupal basado en configuración que falla en modo cerrado para valores, filtros de JSON:API y ordenamiento de Views, y que exige concesiones explícitas de roles no administradores para los campos sensibles.
Open Source

Audit Chain

Un servicio de auditoría reutilizable para Drupal que detecta historial insertado, eliminado, reordenado o editado mediante una sola secuencia encadenada por hash, con firma HMAC opcional, cifrado, soporte de rotación y verificación independiente con Drush.
Article

Cuando un enlace de descarga no es suficiente

Un enlace firmado mantiene en secreto la dirección de un archivo. No comprueba quién lo abre. Por qué las descargas sensibles piden cada vez más una llave de hardware, y cómo agregar ese paso sin convertir cada archivo en una molestia.
Whitepaper

Entrega de archivos de alto aseguramiento: descargas protegidas por autenticación de hardware

Un enlace de descarga firmado protege la dirección, no a la persona que lo tiene. Este documento describe una forma de liberar archivos sensibles solo después de que el destinatario demuestre que posee una credencial de hardware (una llave de seguridad o una tarjeta PIV o CAC) y las decisiones que mantienen el control real sin convertir la descarga en una molestia.
Article

Una sola llave para el inicio de sesión y la entrega

La mayoría de los equipos que protegen archivos sensibles terminan con dos sistemas de credenciales: uno para iniciar sesión y otro para descargar. Construimos el otro arreglo, una sola llave de seguridad, inscrita una vez en el proveedor de identidad, que autoriza ambas cosas, y la construcción nos enseñó tres cosas que vale la pena transmitir.
Article

El aseguramiento es una afirmación, no una ceremonia

Si una descarga debe ser autorizada por una llave de seguridad, algo tiene que verificar la llave. Convertir su servicio de archivos en una segunda parte confiante es una respuesta; verificar lo que afirma el proveedor de identidad es la otra. La segunda es federación, y cambia qué verifica, cómo puede llamarlo y cuánto tiempo sigue siendo cierto.
Article

Quién dice el commit que lo escribió

Una política de atribución de IA es una frase en una guía de contribución hasta que algo lee el campo de autor. Teníamos la política, teníamos la verificación, y un commit escrito por un bot se fusionó limpio de todos modos. Lo que encontramos al corregirlo.
Guide

Secretos en las URL: por qué la rotación es el segundo paso

Un secreto enviado como parámetro de consulta se escribe en cada registro de acceso, proxy y traza que ve la solicitud. Rotarlo es necesario e insuficiente. Por qué el transporte va primero, cómo cambiar un protocolo sin un corte sincronizado y cómo verificar que el cambio realmente surtió efecto.
Whitepaper

Rieles regulados: tokenización de grado de cumplimiento en el XRP Ledger

La tokenización está saliendo del laboratorio piloto y encontrándose con los examinadores. Lo que realmente requiere la infraestructura de activos digitales de grado de cumplimiento (integración regulada con el libro mayor, rieles de tesorería con monedas estables, arquitectura de gestión de claves e infraestructura soberana de libro mayor) y por qué el diseño del XRP Ledger se corresponde con los requisitos institucionales.
Whitepaper

De la señal a la decisión: ingeniería de una canalización de inteligencia soberana

A los responsables de decisiones no les falta información; les falta la estructura que convierte las señales del mundo en sus decisiones. La anatomía de una canalización de inteligencia que fusiona, analiza y entrega dentro de su perímetro: ingesta, fusión, analítica, seguridad por necesidad de conocer y entrega a la cadencia en que la dirección realmente trabaja.
Whitepaper

IA privada detrás del perímetro: una arquitectura para operaciones soberanas de LLM

Por qué las organizaciones que más tienen que ganar con los modelos de lenguaje de gran tamaño son las menos capaces de enviarles sus datos, y la arquitectura que resuelve el dilema: alojamiento privado del modelo, generación aumentada por recuperación sobre datos que nunca salen del perímetro, y la capa de gobernanza que hace defendible el conjunto.
Whitepaper

Fallas silenciosas en la costura desacoplada

En una sola versión corregimos tres defectos en el límite entre un CMS Drupal y su front end Next.js. Ninguno produjo un error. Los tres eran invisibles para CI, los tipos y las comprobaciones de salud. Por eso ese límite falla en silencio, y esto es lo que hicimos para que falle de forma visible.
Article

Los roles de su cuenta de servicio no son los roles que usa

Encontramos una cuenta de servicio OAuth con el rol de administrador y esperábamos hallar una fuga de privilegios. No la había: simple_oauth había estado ignorando ese rol todo el tiempo. Luego casi tumbamos el sitio al demostrarlo.
Article

Un solo campo ausente tumba todas las páginas que lo piden

GraphQL rechaza una consulta en su totalidad si un solo campo seleccionado ha desaparecido. Renombre un campo de Drupal y todas las páginas que ejecutan esa consulta quedan en blanco a la vez, mientras TypeScript, la compilación y CI siguen en verde. Esta es la verificación que añadimos.
Article

Configuración como código con Config Split: nunca haga cex de lo que un split oculta

Config Split mantiene la configuración específica del entorno fuera del directorio de sincronización canónico, pero ejecutar drush cex mientras un split está activo borra los archivos propiedad del split de config/sync. El modelo seguro: editar a mano las listas de miembros del split, verificar con cim en lugar de cex y encaminar los valores por entorno a través de anulaciones en settings.php en lugar del split.
Article

El composer.lock que solo compila en su máquina

Un repositorio de tipo path ignorado por git, que enlaza simbólicamente un módulo del registro a una copia local, escribe un dist de tipo path en composer.lock. Haga commit de ese lock y todos los trabajos de CI y compilaciones de imágenes fallarán, porque el directorio hermano solo existe en su máquina. Regenere el lock con la anulación apartada y añada una protección en CI que rechace un dist de tipo path.
Article

El despliegue que no podía recrear su propio contenedor

Un docker compose up interrumpido deja un contenedor huérfano, con prefijo de hash, ocupando el nombre de un servicio, de modo que todos los despliegues posteriores fallan al recrearlo hasta que alguien lo elimina a mano. Añadir --remove-orphans (o una limpieza previa) permite que el despliegue repare su propia pila en lugar de fallar por el estado que dejó una ejecución anterior.
Article

El acceso a campos no puede ver el valor entrante: gobierne las escrituras en Drupal con una restricción de validación

En una escritura JSON:API o REST, Drupal comprueba el acceso de edición al campo contra el valor almacenado, no el entrante, de modo que un control de acceso a campos que gobierna lo que un agente puede establecer ve el valor equivocado. La costura correcta es una restricción de validación, que se ejecuta sobre la entidad analizada y puede comparar el valor entrante con la política en todos los transportes.
Article

Un punto de acceso de estado que es general en público y detallado en privado

Cómo exponer un punto de acceso de salud que da al público un resumen general activo/degradado mientras desbloquea el detalle completo por servicio solo para un llamador de servidor a servidor que posee un secreto compartido. Cubre la comparación en tiempo constante, el almacenamiento en caché privado, los valores predeterminados que fallan en modo cerrado y un despliegue seguro ante el orden.
Article

El bucle de redirección que solo ocurre detrás de HTTPS

Una reescritura de configuración regional forzada a http: es de otro origen detrás de un proxy HTTPS, así que Next la reemite como solicitud externa que reentra en el proxy y deja la página de inicio en un bucle de 301. Pasa todas las pruebas locales porque el bucle solo aparece cuando X-Forwarded-Proto: https está establecido. La solución: marcar la reescritura interna con un secreto por proceso para que la canonicalización la omita.
Article

La reclamación que se puede eliminar: una lección de canonicalización HMAC

Vincular un valor a una firma es necesario pero no suficiente. Si la forma en que serializa las reclamaciones antes de firmar es ambigua, un atacante puede remodelar una solicitud para que una reclamación vinculada desaparezca en silencio, y la firma sigue verificándose. La trampa, un ejemplo concreto y la regla que lo evita.
Whitepaper

Restringir archivos privados en un CMS desacoplado

La ingeniería detrás de File Gate: cómo una plataforma Drupal 11 desacoplada retiene un archivo privado hasta que un visitante se lo ha ganado: denegar en el origen, entregar a través de una ruta firmada de corta duración y nunca filtrar la ruta de almacenamiento.
Open Source

File Gate

Entrega de archivos privados para Drupal tras una condición de acceso real: concesiones firmadas de corta duración, ocho métodos de acceso incluidos, controles de revocación y uso, garantía opcional respaldada por hardware y una API independiente del framework.
News

Presentamos File Gate

Wilkes & Liberty ha liberado como código abierto File Gate, un módulo de Drupal que restringe archivos privados para cualquier front end. Ya disponible en drupal.org.
News

Presentamos Menu Autopilot

Un módulo gratuito y de código abierto de Drupal para navegación híbrida: seleccione su menú de nivel superior y deje que los hijos de cada elemento se construyan y mantengan solos a partir del contenido publicado, con URL limpias y listas para un sitio desacoplado.
Open Source

Menu Autopilot

Navegación Drupal híbrida para editores y constructores de sitios: cure cada padre y luego reconcilie hijos de enlace de menú ordinarios a partir de taxonomía, bundles de contenido o una lista ordenada de nodos.
Whitepaper

Consolidar un modelo de contenido sin migrar

Cómo consolidamos doce tipos de contenido Drupal en seis en un sitio desacoplado en vivo: en el mismo lugar, sin tiempo de inactividad y sin perder un solo id de nodo, URL, revisión ni valor SEO.
Whitepaper

Componer la navegación en un CMS desacoplado

Cómo construimos una navegación híbrida que se mantiene sola para Drupal 11 desacoplado y Next.js: los editores curan el nivel superior, los hijos se completan solos a partir del contenido publicado y cada URL se mantiene canónica.
Open Source

GraphQL Compose Codegen

Generación mediante Drush de tipos TypeScript, fragmentos GraphQL y andamiajes React a partir del esquema GraphQL Compose en vivo de Drupal, con detección de desvío en CI para contratos de frontend desacoplado.
Open Source

MCP Sentinel

Gobernanza del lado del servidor para el acceso autenticado de agentes de IA a Drupal: perfiles de política con alcance OAuth, puertas de publicación, redacción y DLP, cuotas, aprobaciones, webhooks confiables y evidencia de auditoría a prueba de manipulación.
Open Source

Drupal MCP Connector

Un conector Node.js seguro del Model Context Protocol para uno o varios sitios Drupal, con operaciones de contenido gobernadas, lecturas duales JSON:API/GraphQL, auditorías, ejecuciones de prueba y un puente Drush opcional.