<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Security on DevFlow · Desarrollador Python Django Freelance</title>
    <link>https://dev-flow.io/es/tags/security/</link>
    <description>Recent content in Security on DevFlow · Desarrollador Python Django Freelance</description>
    <generator>Hugo</generator>
    <language>es</language>
    <lastBuildDate>Tue, 26 May 2026 00:00:00 +0200</lastBuildDate>
    <atom:link href="https://dev-flow.io/es/tags/security/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Permisos declarativos en DRF con rest_access_policy</title>
      <link>https://dev-flow.io/es/posts/django-rest-access-policy/</link>
      <pubDate>Tue, 26 May 2026 00:00:00 +0200</pubDate>
      <guid>https://dev-flow.io/es/posts/django-rest-access-policy/</guid>
      <description>rest_access_policy reemplaza has_permission de DRF por statements declarativos. Reglas de acceso legibles, testeables y extensibles sin riesgo de olvidos.</description>
    </item>
    <item>
      <title>Hash, HMAC y cifrado: cómo proteger un token en Django</title>
      <link>https://dev-flow.io/es/posts/hash-hmac-token-seguridad/</link>
      <pubDate>Mon, 25 May 2026 00:00:00 +0200</pubDate>
      <guid>https://dev-flow.io/es/posts/hash-hmac-token-seguridad/</guid>
      <description>sha256, salt, HMAC o cifrado? Cada mecanismo ofrece garantías distintas. Aquí se explica cómo elegir según la necesidad real, con ejemplos en Django.</description>
    </item>
    <item>
      <title>Timing attacks en Django con constant_time_compare</title>
      <link>https://dev-flow.io/es/posts/django-timing-attacks/</link>
      <pubDate>Thu, 14 May 2026 00:00:00 +0200</pubDate>
      <guid>https://dev-flow.io/es/posts/django-timing-attacks/</guid>
      <description>La comparación == en un token filtra información por el tiempo de ejecución. Django ofrece constant_time_compare() para eliminar este riesgo en producción.</description>
    </item>
  </channel>
</rss>
