{"id":15160,"date":"2026-08-31T23:40:32","date_gmt":"2026-09-01T04:40:32","guid":{"rendered":"https:\/\/urbadigital.com\/?p=15160"},"modified":"2026-09-03T09:44:47","modified_gmt":"2026-09-03T14:44:47","slug":"web-security-across-ecuadors-municipal-gads-what-we-found-and-why-it-is-also-a-lopdp-compliance-issue","status":"publish","type":"post","link":"https:\/\/urbadigital.com\/es\/blog\/web-security-across-ecuadors-municipal-gads-what-we-found-and-why-it-is-also-a-lopdp-compliance-issue\/","title":{"rendered":"Web Security Across Ecuador&#8217;s Municipal GADs: What We Found and Why It Is Also a LOPDP Compliance Issue"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"15160\" class=\"elementor elementor-15160\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c727d11 e-flex e-con-boxed e-con e-parent\" data-id=\"c727d11\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6a071d3 elementor-widget elementor-widget-html\" data-id=\"6a071d3\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"html.default\">\n\t\t\t\t\t<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Rubik:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600;700&family=Nunito:wght@300;400;500;600;700&family=Raleway:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap\" rel=\"stylesheet\">\r\n\r\n<style>\r\n\r\n  :root {\r\n    --bg: #0F0F1E;\r\n    --bg-elev: #16162F;\r\n    --bg-card: #1D1D3E;\r\n    --bg-card-hover: rgba(255,255,255,0.04);\r\n    --border: rgba(255,255,255,0.08);\r\n    --border-strong: rgba(255,255,255,0.14);\r\n    --text: #FFFFFF;\r\n    --text-muted: #C0C0C0;\r\n    --text-dim: #858599;\r\n    --good: #4ADE80;\r\n    --good-bg: rgba(74,222,128,0.12);\r\n    --warn: #FBB040;\r\n    --warn-bg: rgba(251,176,64,0.12);\r\n    --bad: #F87171;\r\n    --bad-bg: rgba(248,113,113,0.12);\r\n    --accent: #FBB040;\r\n    --accent-soft: rgba(251,176,64,0.15);\r\n    --info: #60A5FA;\r\n    --display-font: 'Rubik', -apple-system, sans-serif;\r\n    --sub-font: 'Inter', -apple-system, sans-serif;\r\n    --body-font: 'Nunito', -apple-system, sans-serif;\r\n    --accent-font: 'Raleway', -apple-system, sans-serif;\r\n    --mono-font: 'JetBrains Mono', monospace;\r\n  }\r\n\r\n  .blog-gads {\r\n    background: transparent;\r\n    color: var(--text);\r\n    font-family: var(--body-font);\r\n    font-weight: 400;\r\n    line-height: 1.8;\r\n    -webkit-font-smoothing: antialiased;\r\n    overflow-x: hidden;\r\n  }\r\n\r\n  .blog-gads *, .blog-gads *::before, .blog-gads *::after {\r\n    box-sizing: border-box;\r\n    margin: 0;\r\n    padding: 0;\r\n  }\r\n\r\n  .blog-gads .wrap { max-width: 800px; margin: 0 auto; padding: 0 24px; }\r\n\r\n  \/* HEADER *\/\r\n  .blog-gads .blog-header {\r\n    padding: 70px 0 45px;\r\n    border-bottom: 1px solid var(--border);\r\n  }\r\n  .blog-gads .eyebrow {\r\n    font-family: var(--accent-font);\r\n    font-size: 11px;\r\n    font-weight: 700;\r\n    letter-spacing: 0.2em;\r\n    text-transform: uppercase;\r\n    color: var(--accent);\r\n    margin-bottom: 18px;\r\n    display: inline-block;\r\n  }\r\n  .blog-gads .blog-title {\r\n    font-family: var(--display-font);\r\n    font-size: clamp(30px, 5vw, 44px);\r\n    font-weight: 500;\r\n    line-height: 1.25;\r\n    letter-spacing: -0.02em;\r\n    color: var(--text);\r\n    margin-bottom: 24px;\r\n  }\r\n  .blog-gads .blog-meta-bar {\r\n    display: flex;\r\n    flex-wrap: wrap;\r\n    gap: 16px;\r\n    font-family: var(--sub-font);\r\n    font-size: 13px;\r\n    color: var(--text-dim);\r\n    align-items: center;\r\n    margin-top: 24px;\r\n  }\r\n  .blog-gads .blog-meta-bar .author { color: var(--text-muted); font-weight: 500; }\r\n  .blog-gads .blog-meta-bar .separator { color: var(--border-strong); }\r\n\r\n  \/* CONTENT *\/\r\n  .blog-gads .blog-content { padding: 56px 0; font-size: 18px; }\r\n  .blog-gads .blog-content p { margin-bottom: 26px; color: var(--text-muted); }\r\n  .blog-gads .blog-content strong { color: var(--text); font-weight: 600; }\r\n  .blog-gads .blog-content a.inline-link {\r\n    color: var(--accent);\r\n    text-decoration: none;\r\n    font-weight: 600;\r\n    border-bottom: 1px dashed rgba(251,176,64,0.4);\r\n    padding-bottom: 1px;\r\n    transition: all 0.2s ease;\r\n  }\r\n  .blog-gads .blog-content a.inline-link:hover {\r\n    border-bottom-style: solid;\r\n    color: var(--text);\r\n  }\r\n  .blog-gads .blog-content h2 {\r\n    font-family: var(--display-font);\r\n    font-size: 28px;\r\n    font-weight: 500;\r\n    margin: 52px 0 24px;\r\n    color: var(--text);\r\n    letter-spacing: -0.018em;\r\n    line-height: 1.3;\r\n  }\r\n  .blog-gads .blog-content h2::after {\r\n    content: '';\r\n    display: block;\r\n    width: 45px;\r\n    height: 3px;\r\n    background: var(--accent);\r\n    margin-top: 10px;\r\n    border-radius: 2px;\r\n  }\r\n\r\n  \/* LISTS *\/\r\n  .blog-gads .blog-content ul {\r\n    list-style: none;\r\n    margin-bottom: 32px;\r\n    padding-left: 4px;\r\n  }\r\n  .blog-gads .blog-content ul li {\r\n    position: relative;\r\n    padding-left: 28px;\r\n    margin-bottom: 14px;\r\n    color: var(--text-muted);\r\n    font-size: 17px;\r\n  }\r\n  .blog-gads .blog-content ul li::before {\r\n    content: '';\r\n    position: absolute;\r\n    left: 6px;\r\n    top: 10px;\r\n    width: 6px;\r\n    height: 6px;\r\n    background: var(--accent);\r\n    border-radius: 50%;\r\n  }\r\n  .blog-gads .blog-content ol {\r\n    margin-bottom: 32px;\r\n    padding-left: 20px;\r\n    color: var(--text-muted);\r\n  }\r\n  .blog-gads .blog-content ol li {\r\n    margin-bottom: 14px;\r\n    padding-left: 8px;\r\n    font-size: 17px;\r\n  }\r\n\r\n  \/* INFOGRAPHIC \/ CHART *\/\r\n  .blog-gads .infographic-wrapper {\r\n    background: var(--bg-elev);\r\n    border: 1px solid var(--border);\r\n    border-radius: 16px;\r\n    padding: 30px;\r\n    margin: 44px 0;\r\n  }\r\n  .blog-gads .infographic-title {\r\n    font-family: var(--display-font);\r\n    font-size: 17px;\r\n    font-weight: 500;\r\n    color: var(--text);\r\n    margin-bottom: 24px;\r\n    text-align: center;\r\n    letter-spacing: -0.01em;\r\n  }\r\n  .blog-gads .infographic-chart { display: flex; flex-direction: column; gap: 16px; }\r\n  .blog-gads .chart-row {\r\n    display: grid;\r\n    grid-template-columns: 80px 1fr 130px;\r\n    align-items: center;\r\n    gap: 16px;\r\n  }\r\n  .blog-gads .chart-label {\r\n    font-family: var(--mono-font);\r\n    font-size: 12px;\r\n    font-weight: 500;\r\n    color: var(--text-muted);\r\n  }\r\n  .blog-gads .chart-bar-track {\r\n    background: rgba(255,255,255,0.03);\r\n    height: 24px;\r\n    border-radius: 6px;\r\n    overflow: hidden;\r\n    border: 1px solid var(--border);\r\n  }\r\n  .blog-gads .chart-bar-fill { height: 100%; border-radius: 5px; }\r\n  .blog-gads .chart-bar-fill.tier-a { background: #3B82F6; width: 0%; }\r\n  .blog-gads .chart-bar-fill.tier-b { background: linear-gradient(90deg,#86EFAC,#4ADE80); width: 5.9%; }\r\n  .blog-gads .chart-bar-fill.tier-c { background: linear-gradient(90deg,#FDE047,#FACC15); width: 23.5%; }\r\n  .blog-gads .chart-bar-fill.tier-d { background: linear-gradient(90deg,#FCA5A5,#F87171); width: 23.5%; }\r\n  .blog-gads .chart-bar-fill.tier-dm { background: linear-gradient(90deg,#F87171,#EF4444); width: 5.9%; }\r\n  .blog-gads .chart-bar-fill.tier-f { background: linear-gradient(90deg,#F87171,#EF4444); width: 41.2%; }\r\n  .blog-gads .chart-value {\r\n    font-family: var(--mono-font);\r\n    font-size: 12px;\r\n    color: var(--text-dim);\r\n    text-align: right;\r\n  }\r\n  .blog-gads .chart-value strong { color: var(--text-muted); }\r\n  .blog-gads .chart-caption {\r\n    font-size: 12px;\r\n    color: var(--text-dim);\r\n    text-align: center;\r\n    margin-top: 18px;\r\n    font-family: var(--sub-font);\r\n  }\r\n\r\n  \/* PORTAL RANKING (HORIZONTAL BARS) *\/\r\n  .blog-gads .ranking-wrapper {\r\n    background: var(--bg-elev);\r\n    border: 1px solid var(--border);\r\n    border-radius: 16px;\r\n    padding: 30px;\r\n    margin: 44px 0;\r\n  }\r\n  .blog-gads .ranking-rows { display: flex; flex-direction: column; gap: 8px; }\r\n  .blog-gads .ranking-row {\r\n    display: grid;\r\n    grid-template-columns: 200px 1fr 46px;\r\n    align-items: center;\r\n    gap: 12px;\r\n  }\r\n  .blog-gads .portal-name {\r\n    font-family: var(--mono-font);\r\n    font-size: 12px;\r\n    color: var(--text-dim);\r\n    text-align: right;\r\n  }\r\n  .blog-gads .portal-name.top { color: var(--good); font-weight: 700; }\r\n  .blog-gads .bar-track {\r\n    background: rgba(255,255,255,0.04);\r\n    border-radius: 4px;\r\n    height: 16px;\r\n    border: 1px solid var(--border);\r\n  }\r\n  .blog-gads .bar-fill { height: 100%; border-radius: 4px; }\r\n  .blog-gads .score-val {\r\n    font-family: var(--mono-font);\r\n    font-size: 12px;\r\n    font-weight: 700;\r\n    text-align: right;\r\n  }\r\n  .blog-gads .s-f  { color: #EF4444; }\r\n  .blog-gads .s-d  { color: #D9622B; }\r\n  .blog-gads .s-d2 { color: #F08A24; }\r\n  .blog-gads .s-c  { color: var(--warn); }\r\n  .blog-gads .s-b  { color: var(--good); }\r\n\r\n  \/* INFRASTRUCTURE TABLE *\/\r\n  .blog-gads .infra-table {\r\n    background: var(--bg-elev);\r\n    border: 1px solid var(--border);\r\n    border-radius: 16px;\r\n    overflow: hidden;\r\n    margin: 32px 0;\r\n  }\r\n  .blog-gads .infra-table-head {\r\n    display: grid;\r\n    grid-template-columns: 2fr 1fr;\r\n    background: rgba(255,255,255,0.04);\r\n    padding: 14px 24px;\r\n    font-family: var(--mono-font);\r\n    font-size: 11px;\r\n    letter-spacing: 0.1em;\r\n    text-transform: uppercase;\r\n    color: var(--text-dim);\r\n    border-bottom: 1px solid var(--border);\r\n  }\r\n  .blog-gads .infra-table-row {\r\n    display: grid;\r\n    grid-template-columns: 2fr 1fr;\r\n    padding: 14px 24px;\r\n    font-size: 16px;\r\n    border-bottom: 1px solid var(--border);\r\n    color: var(--text-muted);\r\n    transition: background 0.2s;\r\n  }\r\n  .blog-gads .infra-table-row:last-child { border-bottom: none; }\r\n  .blog-gads .infra-table-row:hover { background: rgba(255,255,255,0.02); }\r\n  .blog-gads .infra-table-row .count {\r\n    font-family: var(--mono-font);\r\n    font-weight: 700;\r\n    color: var(--accent);\r\n  }\r\n\r\n  \/* CALLOUT BOXES *\/\r\n  .blog-gads .legal-callout {\r\n    background: var(--bg-elev);\r\n    border-left: 4px solid var(--info);\r\n    border-radius: 0 12px 12px 0;\r\n    padding: 26px 30px;\r\n    margin: 36px 0;\r\n    border-top: 1px solid var(--border);\r\n    border-right: 1px solid var(--border);\r\n    border-bottom: 1px solid var(--border);\r\n  }\r\n  .blog-gads .legal-callout.warning { border-left-color: var(--warn); }\r\n  .blog-gads .legal-callout-title {\r\n    font-family: var(--mono-font);\r\n    font-size: 11px;\r\n    font-weight: 500;\r\n    letter-spacing: 0.12em;\r\n    text-transform: uppercase;\r\n    color: var(--info);\r\n    margin-bottom: 10px;\r\n  }\r\n  .blog-gads .legal-callout.warning .legal-callout-title { color: var(--warn); }\r\n  .blog-gads .legal-callout h4 {\r\n    font-family: var(--display-font);\r\n    font-size: 19px;\r\n    font-weight: 500;\r\n    margin-bottom: 10px;\r\n    color: var(--text);\r\n  }\r\n  .blog-gads .legal-callout p { margin-bottom: 0; font-size: 16px; line-height: 1.65; }\r\n  .blog-gads .legal-callout a { color: var(--info); font-weight: 600; }\r\n  .blog-gads .legal-callout.warning a { color: var(--warn); }\r\n\r\n  \/* PRECEDENT BOX *\/\r\n  .blog-gads .precedent-box {\r\n    background: linear-gradient(135deg, rgba(248,113,113,0.06), transparent);\r\n    border: 1px solid rgba(248,113,113,0.15);\r\n    border-left: 4px solid var(--bad);\r\n    border-radius: 12px;\r\n    padding: 26px;\r\n    margin: 36px 0;\r\n  }\r\n  .blog-gads .precedent-box h4 {\r\n    font-family: var(--display-font);\r\n    font-size: 19px;\r\n    font-weight: 500;\r\n    color: var(--bad);\r\n    margin-bottom: 10px;\r\n  }\r\n  .blog-gads .precedent-box p { margin-bottom: 0; font-size: 16px; line-height: 1.65; }\r\n  .blog-gads .precedent-box a { color: var(--bad); font-weight: 600; }\r\n\r\n  \/* SOURCES BOX *\/\r\n  .blog-gads .sources-box {\r\n    background: var(--bg-elev);\r\n    border: 1px solid var(--border-strong);\r\n    border-radius: 14px;\r\n    padding: 30px;\r\n    margin: 48px 0;\r\n  }\r\n  .blog-gads .sources-title {\r\n    font-family: var(--display-font);\r\n    font-size: 18px;\r\n    font-weight: 600;\r\n    color: var(--text);\r\n    margin-bottom: 16px;\r\n  }\r\n  .blog-gads .sources-list { list-style: none !important; padding-left: 0 !important; margin-bottom: 0 !important; }\r\n  .blog-gads .sources-list li {\r\n    position: relative;\r\n    padding-left: 0 !important;\r\n    margin-bottom: 12px !important;\r\n    font-size: 15px !important;\r\n    color: var(--text-muted);\r\n    border-bottom: 1px dashed rgba(255,255,255,0.06);\r\n    padding-bottom: 10px;\r\n  }\r\n  .blog-gads .sources-list li:last-child { border-bottom: none; margin-bottom: 0 !important; padding-bottom: 0; }\r\n  .blog-gads .sources-list li::before { display: none !important; }\r\n  .blog-gads .sources-list a { color: var(--accent); text-decoration: none; font-weight: 600; }\r\n  .blog-gads .sources-list a:hover { text-decoration: underline; color: #FFF; }\r\n  .blog-gads .source-tag {\r\n    font-family: var(--mono-font);\r\n    font-size: 11px;\r\n    background: rgba(255,255,255,0.06);\r\n    padding: 2px 8px;\r\n    border-radius: 4px;\r\n    color: var(--text-dim);\r\n    margin-right: 8px;\r\n  }\r\n\r\n  \/* SPECIAL MENTION *\/\r\n  .blog-gads .special-mention-box {\r\n    background: linear-gradient(135deg, rgba(22,22,47,0.4), rgba(251,176,64,0.02));\r\n    border: 1px solid rgba(251,176,64,0.2);\r\n    border-radius: 12px;\r\n    padding: 28px 32px;\r\n    margin: 48px 0 24px;\r\n    transition: all 0.3s ease;\r\n  }\r\n  .blog-gads .special-mention-box:hover {\r\n    border-color: rgba(251,176,64,0.4);\r\n    transform: translateY(-2px);\r\n    box-shadow: 0 12px 30px rgba(0,0,0,0.2);\r\n  }\r\n  .blog-gads .special-mention-title {\r\n    font-family: var(--accent-font);\r\n    font-size: 12px;\r\n    font-weight: 700;\r\n    letter-spacing: 0.15em;\r\n    text-transform: uppercase;\r\n    color: var(--accent);\r\n    margin-bottom: 12px;\r\n  }\r\n  .blog-gads .special-mention-box p { font-size: 16px; color: var(--text-muted); line-height: 1.7; margin-bottom: 14px; }\r\n  .blog-gads .special-mention-box p:last-child { margin-bottom: 0; }\r\n  .blog-gads .special-mention-box a {\r\n    color: var(--accent);\r\n    text-decoration: none;\r\n    font-weight: 600;\r\n    border-bottom: 1px dashed rgba(251,176,64,0.4);\r\n    padding-bottom: 1px;\r\n    transition: all 0.2s ease;\r\n  }\r\n  .blog-gads .special-mention-box a:hover { border-bottom-style: solid; color: var(--text); }\r\n\r\n  \/* RESPONSIVE *\/\r\n  @media (max-width: 768px) {\r\n    .blog-gads .wrap { padding: 0 20px; }\r\n    .blog-gads .blog-header { padding: 50px 0 35px; }\r\n    .blog-gads .blog-title { font-size: 28px; }\r\n    .blog-gads .blog-content { font-size: 17px; }\r\n    .blog-gads .blog-content h2 { font-size: 24px; margin-top: 40px; }\r\n    .blog-gads .infographic-wrapper, .blog-gads .ranking-wrapper { padding: 20px; }\r\n    .blog-gads .chart-row { grid-template-columns: 60px 1fr 90px; gap: 10px; }\r\n    .blog-gads .ranking-row { grid-template-columns: 130px 1fr 38px; }\r\n    .blog-gads .infra-table-head, .blog-gads .infra-table-row { padding: 12px 16px; }\r\n  }\r\n\r\n<\/style>\r\n\r\n<div class=\"blog-gads\">\r\n\r\n  <!-- HEADER -->\r\n  <header class=\"blog-header\">\r\n    <div class=\"wrap\">\r\n      <div class=\"eyebrow\">Cybersecurity \/ Public Sector \u00b7 Municipal GADs Ecuador<\/div>\r\n      <h1 class=\"blog-title\">Web Security Across Ecuador's Municipal GADs: What We Found and Why It Is Also a LOPDP Compliance Issue<\/h1>\r\n      <div class=\"blog-meta-bar\">\r\n        <span class=\"author\">By URBADIGITAL SA<\/span>\r\n        <span class=\"separator\">\u00b7<\/span>\r\n        <span>Based on the WebPerformance Report study<\/span>\r\n        <span class=\"separator\">\u00b7<\/span>\r\n        <span>Week 35, August 2026<\/span>\r\n        <span class=\"separator\">\u00b7<\/span>\r\n        <span>5 min read<\/span>\r\n      <\/div>\r\n    <\/div>\r\n  <\/header>\r\n\r\n  <!-- CONTENT -->\r\n  <article class=\"blog-content\">\r\n    <div class=\"wrap\">\r\n\r\n      <p>We evaluated the web security of <strong>17 municipal decentralized autonomous government (GAD) portals across Ecuador<\/strong> using <a href=\"https:\/\/observatory.mozilla.org\" target=\"_blank\" rel=\"noopener\" class=\"inline-link\">Mozilla HTTP Observatory<\/a>[cite: 1], the same free, public tool that anyone can use to audit a website in minutes. The result leaves no room for interpretation: <strong>no portal reaches Tier A<\/strong>, the sector average stands at 27.6 out of 100, and 70.6% currently operate in Tier D or F.<\/p>\r\n\r\n      <p>This is no longer just a technical issue. Municipal portals process citizen identity records, property taxes, cadastral registries, and civic documentation for thousands of residents. With the <strong>Organic Law on Personal Data Protection (LOPDP)<\/strong> fully in force and the Superintendencia de Protecci\u00f3n de Datos Personales (SPDP) actively conducting audits, every red mark in this study is, potentially, documentable regulatory non-compliance[cite: 1].<\/p>\r\n\r\n      <h2>Key Findings<\/h2>\r\n\r\n      <ul>\r\n        <li><strong>0 out of 17 portals<\/strong> achieve Tier A in web security.<\/li>\r\n        <li><strong>100% fail on Content Security Policy (CSP)<\/strong>, the foundational control against malicious code injection in the citizen's browser.<\/li>\r\n        <li><strong>70.6% of the sector (Tiers D, D-, and F)<\/strong> operates with attack vectors exploitable today without sophisticated tools.<\/li>\r\n        <li><strong>5 out of 17 portals do not implement SRI at all<\/strong> (a critical -50 point penalty), leaving external resources without integrity verification.<\/li>\r\n        <li><strong>A 70-point gap<\/strong> exists between the sector's top posture (quevedo.gob.ec, 70\/100) and the lowest (0\/100 across four portals).<\/li>\r\n      <\/ul>\r\n\r\n      <!-- TIER DISTRIBUTION -->\r\n      <div class=\"infographic-wrapper\">\r\n        <div class=\"infographic-title\">Web Security Tier Distribution \u2014 17 Municipal GAD Portals Evaluated<\/div>\r\n        <div class=\"infographic-chart\">\r\n          <div class=\"chart-row\">\r\n            <span class=\"chart-label\">Tier A<\/span>\r\n            <div class=\"chart-bar-track\"><div class=\"chart-bar-fill tier-a\"><\/div><\/div>\r\n            <span class=\"chart-value\"><strong>0.0%<\/strong> (0 portals)<\/span>\r\n          <\/div>\r\n          <div class=\"chart-row\">\r\n            <span class=\"chart-label\">Tier B<\/span>\r\n            <div class=\"chart-bar-track\"><div class=\"chart-bar-fill tier-b\"><\/div><\/div>\r\n            <span class=\"chart-value\"><strong>5.9%<\/strong> (1 portal)<\/span>\r\n          <\/div>\r\n          <div class=\"chart-row\">\r\n            <span class=\"chart-label\">Tier C<\/span>\r\n            <div class=\"chart-bar-track\"><div class=\"chart-bar-fill tier-c\"><\/div><\/div>\r\n            <span class=\"chart-value\"><strong>23.5%<\/strong> (4 portals)<\/span>\r\n          <\/div>\r\n          <div class=\"chart-row\">\r\n            <span class=\"chart-label\">Tier D<\/span>\r\n            <div class=\"chart-bar-track\"><div class=\"chart-bar-fill tier-d\"><\/div><\/div>\r\n            <span class=\"chart-value\"><strong>23.5%<\/strong> (4 portals)<\/span>\r\n          <\/div>\r\n          <div class=\"chart-row\">\r\n            <span class=\"chart-label\">Tier D-<\/span>\r\n            <div class=\"chart-bar-track\"><div class=\"chart-bar-fill tier-dm\"><\/div><\/div>\r\n            <span class=\"chart-value\"><strong>5.9%<\/strong> (1 portal)<\/span>\r\n          <\/div>\r\n          <div class=\"chart-row\">\r\n            <span class=\"chart-label\">Tier F<\/span>\r\n            <div class=\"chart-bar-track\"><div class=\"chart-bar-fill tier-f\"><\/div><\/div>\r\n            <span class=\"chart-value\"><strong>41.2%<\/strong> (7 portals)<\/span>\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"chart-caption\">Source: <a href=\"https:\/\/webperformancereport.com\" target=\"_blank\" rel=\"noopener\" style=\"color:var(--accent);\">WebPerformance Report<\/a>, scan from August 31, 2026. No portal reaches the excellence tier (Tier A).<\/div>\r\n      <\/div>\r\n\r\n      <!-- PORTAL RANKING -->\r\n      <div class=\"ranking-wrapper\">\r\n        <div class=\"infographic-title\">Score by portal, from lowest to highest (17 GADs evaluated)<\/div>\r\n        <div class=\"ranking-rows\">\r\n\r\n          <div class=\"ranking-row\">\r\n            <span class=\"portal-name\">ambato.gob.ec<\/span>\r\n            <div class=\"bar-track\"><div class=\"bar-fill\" style=\"width:0.5%;background:#EF4444;\"><\/div><\/div>\r\n            <span class=\"score-val s-f\">0<\/span>\r\n          <\/div>\r\n          <div class=\"ranking-row\">\r\n            <span class=\"portal-name\">guayaquil.gob.ec<\/span>\r\n            <div class=\"bar-track\"><div class=\"bar-fill\" style=\"width:0.5%;background:#EF4444;\"><\/div><\/div>\r\n            <span class=\"score-val s-f\">0<\/span>\r\n          <\/div>\r\n          <div class=\"ranking-row\">\r\n            <span class=\"portal-name\">manta.gob.ec<\/span>\r\n            <div class=\"bar-track\"><div class=\"bar-fill\" style=\"width:0.5%;background:#EF4444;\"><\/div><\/div>\r\n            <span class=\"score-val s-f\">0<\/span>\r\n          <\/div>\r\n          <div class=\"ranking-row\">\r\n            <span class=\"portal-name\">ibarra.gob.ec\/site<\/span>\r\n            <div class=\"bar-track\"><div class=\"bar-fill\" style=\"width:0.5%;background:#EF4444;\"><\/div><\/div>\r\n            <span class=\"score-val s-f\">0<\/span>\r\n          <\/div>\r\n          <div class=\"ranking-row\">\r\n            <span class=\"portal-name\">loja.gob.ec<\/span>\r\n            <div class=\"bar-track\"><div class=\"bar-fill\" style=\"width:7.1%;background:#EF4444;\"><\/div><\/div>\r\n            <span class=\"score-val s-f\">5<\/span>\r\n          <\/div>\r\n          <div class=\"ranking-row\">\r\n            <span class=\"portal-name\">machala.gob.ec<\/span>\r\n            <div class=\"bar-track\"><div class=\"bar-fill\" style=\"width:14.3%;background:#EF4444;\"><\/div><\/div>\r\n            <span class=\"score-val s-f\">10<\/span>\r\n          <\/div>\r\n          <div class=\"ranking-row\">\r\n            <span class=\"portal-name\">guaranda.gob.ec<\/span>\r\n            <div class=\"bar-track\"><div class=\"bar-fill\" style=\"width:21.4%;background:#EF4444;\"><\/div><\/div>\r\n            <span class=\"score-val s-f\">15<\/span>\r\n          <\/div>\r\n          <div class=\"ranking-row\">\r\n            <span class=\"portal-name\">babahoyo.gob.ec<\/span>\r\n            <div class=\"bar-track\"><div class=\"bar-fill\" style=\"width:35.7%;background:#D9622B;\"><\/div><\/div>\r\n            <span class=\"score-val s-d\">25<\/span>\r\n          <\/div>\r\n          <div class=\"ranking-row\">\r\n            <span class=\"portal-name\">portoviejo.gob.ec<\/span>\r\n            <div class=\"bar-track\"><div class=\"bar-fill\" style=\"width:42.9%;background:#F08A24;\"><\/div><\/div>\r\n            <span class=\"score-val s-d2\">30<\/span>\r\n          <\/div>\r\n          <div class=\"ranking-row\">\r\n            <span class=\"portal-name\">gadmriobamba.gob.ec<\/span>\r\n            <div class=\"bar-track\"><div class=\"bar-fill\" style=\"width:42.9%;background:#F08A24;\"><\/div><\/div>\r\n            <span class=\"score-val s-d2\">30<\/span>\r\n          <\/div>\r\n          <div class=\"ranking-row\">\r\n            <span class=\"portal-name\">lagoagrio.gob.ec<\/span>\r\n            <div class=\"bar-track\"><div class=\"bar-fill\" style=\"width:50%;background:#F08A24;\"><\/div><\/div>\r\n            <span class=\"score-val s-d2\">35<\/span>\r\n          <\/div>\r\n          <div class=\"ranking-row\">\r\n            <span class=\"portal-name\">gmtulcan.gob.ec<\/span>\r\n            <div class=\"bar-track\"><div class=\"bar-fill\" style=\"width:50%;background:#F08A24;\"><\/div><\/div>\r\n            <span class=\"score-val s-d2\">35<\/span>\r\n          <\/div>\r\n          <div class=\"ranking-row\">\r\n            <span class=\"portal-name\">latacunga.gob.ec\/es<\/span>\r\n            <div class=\"bar-track\"><div class=\"bar-fill\" style=\"width:71.4%;background:#FBB040;\"><\/div><\/div>\r\n            <span class=\"score-val s-c\">50<\/span>\r\n          <\/div>\r\n          <div class=\"ranking-row\">\r\n            <span class=\"portal-name\">azogues.gob.ec<\/span>\r\n            <div class=\"bar-track\"><div class=\"bar-fill\" style=\"width:78.6%;background:#FBB040;\"><\/div><\/div>\r\n            <span class=\"score-val s-c\">55<\/span>\r\n          <\/div>\r\n          <div class=\"ranking-row\">\r\n            <span class=\"portal-name\">quito.gob.ec<\/span>\r\n            <div class=\"bar-track\"><div class=\"bar-fill\" style=\"width:78.6%;background:#FBB040;\"><\/div><\/div>\r\n            <span class=\"score-val s-c\">55<\/span>\r\n          <\/div>\r\n          <div class=\"ranking-row\">\r\n            <span class=\"portal-name\">esmeraldas.gob.ec<\/span>\r\n            <div class=\"bar-track\"><div class=\"bar-fill\" style=\"width:78.6%;background:#FBB040;\"><\/div><\/div>\r\n            <span class=\"score-val s-c\">55<\/span>\r\n          <\/div>\r\n          <div class=\"ranking-row\">\r\n            <span class=\"portal-name top\">quevedo.gob.ec<\/span>\r\n            <div class=\"bar-track\"><div class=\"bar-fill\" style=\"width:100%;background:#4ADE80;\"><\/div><\/div>\r\n            <span class=\"score-val s-b\">70<\/span>\r\n          <\/div>\r\n\r\n        <\/div>\r\n        <div class=\"chart-caption\" style=\"margin-top:18px;\">Source: WebPerformance Report, scan from August 31, 2026. Score out of 100 (HTTP Observatory)[cite: 1]. Green = B \u00b7 Amber = C \u00b7 Orange = D \u00b7 Red = F.<\/div>\r\n      <\/div>\r\n\r\n      <h2>Infrastructure Providers Do Not Explain the Results<\/h2>\r\n\r\n      <p>We cross-referenced the findings by server and infrastructure provider, and the pattern repeats: simply operating behind a modern CDN or proxy does not, by itself, translate into a robust security posture.<\/p>\r\n\r\n      <div class=\"infra-table\">\r\n        <div class=\"infra-table-head\">\r\n          <div>Infrastructure<\/div>\r\n          <div>Portals<\/div>\r\n        <\/div>\r\n        <div class=\"infra-table-row\"><div>Apache<\/div><div class=\"count\">9<\/div><\/div>\r\n        <div class=\"infra-table-row\"><div>Cloudflare (proxy)<\/div><div class=\"count\">3<\/div><\/div>\r\n        <div class=\"infra-table-row\"><div>Nginx<\/div><div class=\"count\">2<\/div><\/div>\r\n        <div class=\"infra-table-row\"><div>LiteSpeed<\/div><div class=\"count\">1<\/div><\/div>\r\n        <div class=\"infra-table-row\"><div>Unidentified<\/div><div class=\"count\">2<\/div><\/div>\r\n      <\/div>\r\n\r\n      <p>The three portals routed through Cloudflare (quevedo.gob.ec, esmeraldas.gob.ec, and guayaquil.gob.ec) achieve scores in Tiers B, C, and F respectively\u2014the proxy reduces surface-level network exposure, but cannot replace secure application-level header configuration.<\/p>\r\n\r\n      <div class=\"legal-callout warning\">\r\n        <div class=\"legal-callout-title\">Additional Risk \u00b7 Unsupported PHP (Fingerprinting)<\/div>\r\n        <h4>End-of-Life Versions Exposed in Headers<\/h4>\r\n        <p>Two portals explicitly expose unpatched PHP versions in their HTTP headers: <strong>babahoyo.gob.ec<\/strong> runs PHP 7.3.33, and <strong>esmeraldas.gob.ec<\/strong> runs PHP 5.6.40\u2014the latter burdened with more than a decade of known vulnerabilities with no security patches available.<\/p>\r\n      <\/div>\r\n\r\n      <h2>The New Reality: This Is Also a Risk Under the LOPDP<\/h2>\r\n\r\n      <p>Municipal GADs process national identification records, land registries, property tax accounts, and civic documentation belonging to their citizens\u2014precisely the personal data rigorously protected under the LOPDP[cite: 1]. Two legal articles connect directly to our findings:<\/p>\r\n\r\n      <div class=\"legal-callout\">\r\n        <div class=\"legal-callout-title\">LOPDP \u00b7 <a href=\"https:\/\/procuraduria.utpl.edu.ec\/sitios\/documentos\/NormativasPublicas\/Ley%20de%20Org%C3%A1nica%20de%20Protecci%C3%B3n%20de%20Datos.pdf\" target=\"_blank\" rel=\"noopener\">Article 37<\/a><\/div>\r\n        <h4>Security of Personal Data<\/h4>\r\n        <p>Mandates the implementation of adequate and necessary technical, organizational, and security measures according to the state of the art[cite: 1]. Content Security Policy (CSP) is free and has been a universal web standard for years; its complete omission across the sector is indefensible during a regulatory audit or post-incident review.<\/p>\r\n      <\/div>\r\n\r\n      <div class=\"legal-callout\">\r\n        <div class=\"legal-callout-title\">LOPDP \u00b7 <a href=\"https:\/\/procuraduria.utpl.edu.ec\/sitios\/documentos\/NormativasPublicas\/Ley%20de%20Org%C3%A1nica%20de%20Protecci%C3%B3n%20de%20Datos.pdf\" target=\"_blank\" rel=\"noopener\">Article 39<\/a><\/div>\r\n        <h4>Data Protection by Design and by Default<\/h4>\r\n        <p>Requires that security controls and appropriate data processing principles be integrated into digital systems from their initial conception, rather than added as reactive patches after a security compromise[cite: 1].<\/p>\r\n      <\/div>\r\n\r\n      <div class=\"precedent-box\">\r\n        <h4>Legal Precedent: Sanctions Against LigaPro<\/h4>\r\n        <p>This risk is no longer merely theoretical. In January 2026, the SPDP <a href=\"https:\/\/spdp.gob.ec\/prensa\/\" target=\"_blank\" rel=\"noopener\">sanctioned Ecuador's Professional Football League (LIGAPRO)<\/a> with a fine of USD 95,502.63 for failing to implement data protection by design and default in its Fan ID application\u2014the exact same regulatory principle that applies to the web security findings in this study. A serious incident can trigger simultaneous sanction proceedings from multiple oversight bodies.<\/p>\r\n      <\/div>\r\n\r\n      <h2>The Good News<\/h2>\r\n\r\n      <p>The initial phase of technical remediation\u2014implementing CSP, HSTS, and X-Frame-Options\u2014<strong>carries zero software licensing cost<\/strong> and can be completed in under 30 days by internal IT staff[cite: 1]. It represents the fastest way to mitigate attack vectors while generating tangible compliance evidence ahead of any potential SPDP audit.<\/p>\r\n\r\n      <h2>What to Do Now<\/h2>\r\n\r\n      <ol>\r\n        <li><strong>Request a free diagnostic assessment<\/strong> for your municipality using HTTP Observatory\u2014takes 5 minutes, requires no credentials, and involves zero cost.<\/li>\r\n        <li><strong>Review with your legal and IT teams<\/strong> whether you have a designated Data Protection Officer (DPO) and a formally established security incident response protocol.<\/li>\r\n        <li><strong>Prioritize Phase 1 technical remediation<\/strong> (CSP, HSTS, X-Frame-Options) before investing in complex third-party software suites.<\/li>\r\n      <\/ol>\r\n\r\n      <!-- SOURCES -->\r\n      <div class=\"sources-box\">\r\n        <div class=\"sources-title\">Data Sources &amp; Study References<\/div>\r\n        <ul class=\"sources-list\">\r\n          <li>\r\n            <span class=\"source-tag\">ANALYTICS<\/span>\r\n            <strong>Mozilla HTTP Observatory:<\/strong> Public web security and server response header scanning tool \u2014 <a href=\"https:\/\/observatory.mozilla.org\" target=\"_blank\" rel=\"noopener\">observatory.mozilla.org<\/a>[cite: 1]\r\n          <\/li>\r\n          <li>\r\n            <span class=\"source-tag\">PLATFORM<\/span>\r\n            <strong>WebPerformance Report:<\/strong> Continuous monitoring and vulnerability assessment platform for the public sector \u2014 <a href=\"https:\/\/webperformancereport.com\" target=\"_blank\" rel=\"noopener\">webperformancereport.com<\/a>[cite: 1]\r\n          <\/li>\r\n          <li>\r\n            <span class=\"source-tag\">REGULATION<\/span>\r\n            <strong>Organic Law on Personal Data Protection (LOPDP):<\/strong> Articles 37 and 39 \u2014 <a href=\"https:\/\/procuraduria.utpl.edu.ec\/sitios\/documentos\/NormativasPublicas\/Ley%20de%20Org%C3%A1nica%20de%20Protecci%C3%B3n%20de%20Datos.pdf\" target=\"_blank\" rel=\"noopener\">procuraduria.utpl.edu.ec<\/a>[cite: 1]\r\n          <\/li>\r\n          <li>\r\n            <span class=\"source-tag\">REGULATOR<\/span>\r\n            <strong>Superintendencia de Protecci\u00f3n de Datos Personales (SPDP):<\/strong> Sanction resolutions, enforcement, and public audits \u2014 <a href=\"https:\/\/spdp.gob.ec\/prensa\/\" target=\"_blank\" rel=\"noopener\">spdp.gob.ec<\/a>[cite: 1]\r\n          <\/li>\r\n          <li>\r\n            <span class=\"source-tag\">AUTHOR<\/span>\r\n            <strong>URBADIGITAL SA:<\/strong> Specialized engineering, high-end software systems, and data firm in Ecuador \u2014 <a href=\"https:\/\/urbadigital.com\" target=\"_blank\" rel=\"noopener\">urbadigital.com<\/a>[cite: 1]\r\n          <\/li>\r\n        <\/ul>\r\n      <\/div>\r\n\r\n      <!-- SPECIAL MENTION -->\r\n      <div class=\"special-mention-box\">\r\n        <div class=\"special-mention-title\">Special Mention \u00b7 WebPerformance Report<\/div>\r\n        <p>This sector benchmark was conducted by <strong>URBADIGITAL SA<\/strong> utilizing the continuous diagnostic architecture of <a href=\"https:\/\/webperformancereport.com\" target=\"_blank\" rel=\"noopener\">WebPerformance Report<\/a> to collect and audit web security telemetry across the 17 evaluated municipal portals[cite: 1].<\/p>\r\n      <\/div>\r\n\r\n    <\/div>\r\n  <\/article>\r\n\r\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-6a4b1b57 e-con-full e-flex e-con e-child\" data-id=\"6a4b1b57\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-299459ee ekit-equal-height-disable elementor-widget elementor-widget-elementskit-icon-box\" data-id=\"299459ee\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-icon-box.default\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" >        <!-- link opening -->\n                <!-- end link opening -->\n\n        <div class=\"elementskit-infobox text-center text- icon-lef-right-aligin elementor-animation-   \">\n                        <div class=\"box-body\">\n                            <h3 class=\"elementskit-info-box-title\">\n                    Need Help?                <\/h3>\n                                            <\/div>\n        \n        \n                <\/div>\n        <\/div>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3fbc15cd elementor-align-center elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"3fbc15cd\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"icon-list.default\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<a href=\"mailto:info@urbadigital.com\">\n\n\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20\" height=\"18\" viewBox=\"0 0 20 18\" fill=\"currentColor\"><path d=\"M18.5352 2.92871C18.5352 2.55396 18.2312 2.25 17.8564 2.25H2.14258C1.76781 2.25 1.46387 2.55395 1.46387 2.92871V15.0713C1.46387 15.4461 1.76782 15.75 2.14258 15.75H17.8564C18.2312 15.75 18.5352 15.4461 18.5352 15.0713V2.92871ZM20.0352 15.0713C20.0352 16.2745 19.0597 17.25 17.8564 17.25H2.14258C0.939373 17.25 -0.0361328 16.2745 -0.0361328 15.0713V2.92871C-0.0361328 1.72552 0.939387 0.75 2.14258 0.75H17.8564C19.0596 0.75 20.0352 1.7255 20.0352 2.92871V15.0713Z\"><\/path><path d=\"M18.7984 2.71521C19.1135 2.44643 19.5862 2.48413 19.8551 2.7992C20.1237 3.11419 20.0868 3.58696 19.7721 3.85584L11.4 10.9994L11.3932 11.0043C11.0018 11.3302 10.509 11.5091 9.9996 11.5092C9.4901 11.5092 8.9965 11.3303 8.60507 11.0043L8.59823 10.9994L0.227136 3.85584C-0.0879085 3.58703 -0.12555 3.1143 0.143152 2.7992C0.411962 2.48415 0.884692 2.44651 1.19979 2.71521L9.56503 9.85193L9.66171 9.91932C9.76386 9.97789 9.88051 10.0092 9.9996 10.0092C10.1581 10.0091 10.3114 9.95337 10.4332 9.85193L18.7984 2.71521Z\"><\/path><\/svg>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">info@urbadigital.com<\/span>\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9ec7590 elementor-invisible elementor-widget elementor-widget-elementskit-creative-button\" data-id=\"9ec7590\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeInUp&quot;,&quot;_animation_delay&quot;:200,&quot;ekit_we_effect_on&quot;:&quot;none&quot;}\" data-widget_type=\"elementskit-creative-button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" >\t\t<div class=\"ekit-btn-wraper\">\n\t\t\t\t\t\t\t\t<a href=\"\/contact-us\/\" class=\"ekit_creative_button ekit_position_aware\" id=\"\" data-text=\"\">\n\n\t\t\t\t\t\t\n\t\t\t\t\t\t<span class=\"ekit_creative_button_text\">Contact Us<\/span>\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10\" height=\"10\" viewBox=\"0 0 10 10\" fill=\"currentColor\"><path d=\"M8.33624 2.84003L1.17628 10L0 8.82373L7.15913 1.66376H0.849348V0H10V9.15065H8.33624V2.84003Z\"><\/path><\/svg>\n\t\t\t\t\t\t\t\t\t\t\t\t<span class='ekit_position_aware_bg'><\/span>\t\t\t\t\t<\/a>\n\t\t\t\t\t\t<\/div>\n        <\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Cybersecurity \/ Public Sector \u00b7 Municipal GADs Ecuador [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":15162,"comment_status":"closed","ping_status":"open","sticky":false,"template":"elementor_header_footer","format":"standard","meta":{"_angie_page":false,"_monsterinsights_skip_tracking":false,"page_builder":"","footnotes":""},"categories":[1,6,83],"tags":[],"class_list":["post-15160","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","category-cyber-security","category-studies"],"aioseo_notices":[],"rttpg_featured_image_url":{"full":["https:\/\/urbadigital.com\/wp-content\/uploads\/2026\/08\/Gemini_Generated_Image_e84iqqe84iqqe84i-scaled.jpg",2560,1429,false],"landscape":["https:\/\/urbadigital.com\/wp-content\/uploads\/2026\/08\/Gemini_Generated_Image_e84iqqe84iqqe84i-scaled.jpg",2560,1429,false],"portraits":["https:\/\/urbadigital.com\/wp-content\/uploads\/2026\/08\/Gemini_Generated_Image_e84iqqe84iqqe84i-scaled.jpg",2560,1429,false],"thumbnail":["https:\/\/urbadigital.com\/wp-content\/uploads\/2026\/08\/Gemini_Generated_Image_e84iqqe84iqqe84i-150x150.jpg",150,150,true],"medium":["https:\/\/urbadigital.com\/wp-content\/uploads\/2026\/08\/Gemini_Generated_Image_e84iqqe84iqqe84i-300x167.jpg",300,167,true],"large":["https:\/\/urbadigital.com\/wp-content\/uploads\/2026\/08\/Gemini_Generated_Image_e84iqqe84iqqe84i-1024x572.jpg",800,447,true],"1536x1536":["https:\/\/urbadigital.com\/wp-content\/uploads\/2026\/08\/Gemini_Generated_Image_e84iqqe84iqqe84i-1536x857.jpg",1536,857,true],"2048x2048":["https:\/\/urbadigital.com\/wp-content\/uploads\/2026\/08\/Gemini_Generated_Image_e84iqqe84iqqe84i-2048x1143.jpg",2048,1143,true],"trp-custom-language-flag":["https:\/\/urbadigital.com\/wp-content\/uploads\/2026\/08\/Gemini_Generated_Image_e84iqqe84iqqe84i-18x10.jpg",18,10,true]},"rttpg_author":{"display_name":"urbasignature","author_link":"https:\/\/urbadigital.com\/es\/blog\/author\/urbasignature\/"},"rttpg_comment":0,"rttpg_category":"<a href=\"https:\/\/urbadigital.com\/es\/blog\/category\/blog\/\" rel=\"category tag\">Blog<\/a> <a href=\"https:\/\/urbadigital.com\/es\/blog\/category\/cyber-security\/\" rel=\"category tag\">Cyber Security<\/a> <a href=\"https:\/\/urbadigital.com\/es\/blog\/category\/studies\/\" rel=\"category tag\">Studies<\/a>","rttpg_excerpt":"Cybersecurity \/ Public Sector \u00b7 Municipal GADs Ecuador [&hellip;]","_links":{"self":[{"href":"https:\/\/urbadigital.com\/es\/wp-json\/wp\/v2\/posts\/15160","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/urbadigital.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/urbadigital.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/urbadigital.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/urbadigital.com\/es\/wp-json\/wp\/v2\/comments?post=15160"}],"version-history":[{"count":11,"href":"https:\/\/urbadigital.com\/es\/wp-json\/wp\/v2\/posts\/15160\/revisions"}],"predecessor-version":[{"id":15253,"href":"https:\/\/urbadigital.com\/es\/wp-json\/wp\/v2\/posts\/15160\/revisions\/15253"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/urbadigital.com\/es\/wp-json\/wp\/v2\/media\/15162"}],"wp:attachment":[{"href":"https:\/\/urbadigital.com\/es\/wp-json\/wp\/v2\/media?parent=15160"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/urbadigital.com\/es\/wp-json\/wp\/v2\/categories?post=15160"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/urbadigital.com\/es\/wp-json\/wp\/v2\/tags?post=15160"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}