{
    "schema": "https://saferpage.de/schemas/operator-remediation-ticket-delivery.v1",
    "generated_at": "2026-06-13T18:20:48+00:00",
    "domain": "blog.heise-academy.de",
    "available": true,
    "scan": {
        "id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
        "checked_at": "2026-06-09 23:58:23.264405+02"
    },
    "summary": "Delivery-Paket fuer Remediation-Tickets mit Webhook-, Slack-, Teams- und Jira-Payloads, HMAC-Receiver-Vertrag und Test-Fixture.",
    "dry_run": true,
    "does_not_send": true,
    "metrics": {
        "delivery_job_count": 49,
        "high_priority_count": 21,
        "channel_count": 4,
        "receiver_check_count": 6,
        "test_fixture_negative_count": 4
    },
    "signature_verification": {
        "algorithm": "HMAC-SHA256",
        "canonical_body": "Exakt canonical_webhook_body aus dem jeweiligen delivery_job signieren; keine Pretty-Print- oder Reordering-Variante verwenden.",
        "signature_secret_ref": "SAFERPAGE_OPERATOR_WEBHOOK_SECRET oder zielsystemspezifisches Secret im Secret Manager",
        "signature_header": "X-SaferPage-Signature",
        "signature_format": "sha256=<hex_hmac_sha256>",
        "body_sha256_header": "X-SaferPage-Body-SHA256",
        "idempotency_header": "X-SaferPage-Idempotency-Key",
        "receiver_must_check": [
            "HMAC ueber den exakten Request-Body stimmt mit X-SaferPage-Signature ueberein.",
            "SHA-256 des exakten Request-Body stimmt mit X-SaferPage-Body-SHA256 ueberein.",
            "X-SaferPage-Event ist operator.remediation.ticket_ready.",
            "X-SaferPage-Schema ist operator-remediation-ticket-delivery.v1.",
            "X-SaferPage-Idempotency-Key wurde fuer Domain, Scan und Ticket noch nicht verarbeitet.",
            "Empfaenger, Projekt, Queue und Owner sind fuer diese Domain freigegeben."
        ],
        "failure_policy": "Bei fehlender Signatur, Body-Hash-Abweichung, Replay oder unbekanntem Zielsystem ablehnen, nicht teilweise verarbeiten und Auditlog ohne Secret-Werte schreiben."
    },
    "verification_test_fixture": {
        "public_test_secret": "saferpage_remediation_ticket_test_secret_do_not_use_in_production",
        "canonical_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"example.test\",\"scan_id\":\"scan_test_2026_06_09\",\"ticket_id\":\"remediation_test_ticket\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Datenschutz/IT\",\"sla\":\"7 Tage\",\"title\":\"Consent-Befund reproduzieren und beheben\",\"evidence\":\"Test-Fixture fuer Receiver-Implementierung.\",\"action\":\"Testpayload unveraendert verifizieren, Idempotency-Key pruefen und danach verwerfen.\",\"acceptance_criteria\":[\"Signatur stimmt mit exakt diesem Body ueberein.\",\"Idempotency-Key wurde noch nicht verarbeitet.\",\"Event, Schema und Domain sind erlaubt.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/tracking-und-consent-reparieren\",\"evidence\":\"https://saferpage.de/befunde/example.test\",\"rescan\":\"https://saferpage.de/scanbetrieb/example.test\",\"report\":\"https://saferpage.de/example.test\",\"fix_guides\":\"https://saferpage.de/fix-guides/example.test\"}}",
        "canonical_body_sha256": "cd19d86313ea4d6ea0f5dcd65b2b40794f017121c655dedcdfa6df362b480dcf",
        "expected_signature": "sha256=834a9f0cd7a3922648b8aa1ab00aef7ae7aa31d08b63e804ee4a586c0e9dd555",
        "expected_signature_header": "X-SaferPage-Signature: sha256=834a9f0cd7a3922648b8aa1ab00aef7ae7aa31d08b63e804ee4a586c0e9dd555",
        "idempotency_key": "sp-fix-test-fixture",
        "positive_test": "Empfaenger akzeptiert den unveraenderten canonical_body mit expected_signature und verwirft ihn danach als Testevent.",
        "negative_tests": [
            "Ein geaendertes Byte im Body muss abgelehnt werden.",
            "Ein fehlender oder doppelter X-SaferPage-Idempotency-Key muss abgelehnt werden.",
            "Eine Signatur mit anderem Secret muss abgelehnt werden.",
            "Ein erneuter Request mit derselben Idempotency-Key/Event-Kombination darf nicht erneut verarbeitet werden."
        ],
        "sample_commands": [
            "printf %s \"$BODY\" | openssl dgst -sha256 -hmac \"saferpage_remediation_ticket_test_secret_do_not_use_in_production\" -binary | xxd -p -c 256",
            "printf %s \"$BODY\" | sha256sum",
            "curl -X POST -H \"Content-Type: application/json\" -H \"X-SaferPage-Event: operator.remediation.ticket_ready\" -H \"X-SaferPage-Signature: sha256=834a9f0cd7a3922648b8aa1ab00aef7ae7aa31d08b63e804ee4a586c0e9dd555\" --data \"$BODY\" https://receiver.example.test/saferpage"
        ]
    },
    "retry_policy": {
        "max_attempts": 3,
        "backoff_seconds": [
            300,
            1800,
            7200
        ],
        "dead_letter_queue": "privacyops.remediation_ticket.failed"
    },
    "delivery_jobs": [
        {
            "id": "sp-fix-6bcb3935c20a4b3f91b7e1b1",
            "ticket_id": "remediation_vendor_contract_transfer_fix",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Legal/Vendor Owner",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] Anbieterakten, AVV/DPA und Transfers priorisiert schließen",
            "description": "Top-Anbieter mit Zweck, Rolle, AVV/DPA, TOMs, Subprozessoren und Transfergrundlage dokumentieren.",
            "idempotency_key": "sp-fix-6bcb3935c20a4b3f91b7e1b1",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-6bcb3935c20a4b3f91b7e1b1",
                "X-SaferPage-Body-SHA256": "3ebd453a19ac3354e4a1e6ec2843a0815058f7dade4e58886e215152b2e7aee6",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_vendor_contract_transfer_fix",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Legal/Vendor Owner",
                "sla": "7 Tage",
                "title": "Anbieterakten, AVV/DPA und Transfers priorisiert schließen",
                "evidence": "Vendor-Due-Diligence mit 5 Anbieter(n), 0 hohem Risiko, 5 AVV-/DPA-Prüfung(en) und 3 Transfer-/Jurisdiktionsfrage(n).",
                "action": "Top-Anbieter mit Zweck, Rolle, AVV/DPA, TOMs, Subprozessoren und Transfergrundlage dokumentieren.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_vendor_contract_transfer_fix\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Legal/Vendor Owner\",\"sla\":\"7 Tage\",\"title\":\"Anbieterakten, AVV/DPA und Transfers priorisiert schließen\",\"evidence\":\"Vendor-Due-Diligence mit 5 Anbieter(n), 0 hohem Risiko, 5 AVV-/DPA-Prüfung(en) und 3 Transfer-/Jurisdiktionsfrage(n).\",\"action\":\"Top-Anbieter mit Zweck, Rolle, AVV/DPA, TOMs, Subprozessoren und Transfergrundlage dokumentieren.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "3ebd453a19ac3354e4a1e6ec2843a0815058f7dade4e58886e215152b2e7aee6",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: Anbieterakten, AVV/DPA und Transfers priorisiert schließen",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Anbieterakten, AVV/DPA und Transfers priorisiert schließen*\nTop-Anbieter mit Zweck, Rolle, AVV/DPA, TOMs, Subprozessoren und Transfergrundlage dokumentieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Legal/Vendor Owner · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: Anbieterakten, AVV/DPA und Transfers priorisiert schließen",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Anbieterakten, AVV/DPA und Transfers priorisiert schließen"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Top-Anbieter mit Zweck, Rolle, AVV/DPA, TOMs, Subprozessoren und Transfergrundlage dokumentieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Legal/Vendor Owner"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Anbieterakten, AVV/DPA und Transfers priorisiert schließen",
                    "description": "Top-Anbieter mit Zweck, Rolle, AVV/DPA, TOMs, Subprozessoren und Transfergrundlage dokumentieren.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-04843e278a50579600125271",
            "ticket_id": "remediation_module_browser_evidence",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] Browser-Nachweis",
            "description": "Unnötige Drittanbieter reduzieren und die verbleibenden Kontakte in Datenschutz und Consent abbilden.",
            "idempotency_key": "sp-fix-04843e278a50579600125271",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-04843e278a50579600125271",
                "X-SaferPage-Body-SHA256": "4dea1adcd2fb951b872ae35c441b807cdc5449c4d7e293b031af43f4554f5225",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_module_browser_evidence",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Browser-Nachweis",
                "evidence": "65 Request(s), 5 Drittanbieter-Domain(s), davon 0 datenschutzrelevant, 4 Browser-Cookie(s), Transfer-Prüfbedarf: 2, Referrer-/URL-Leaks: 2, Fingerprinting-/Replay-Hinweise: 1.",
                "action": "Unnötige Drittanbieter reduzieren und die verbleibenden Kontakte in Datenschutz und Consent abbilden.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_module_browser_evidence\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Browser-Nachweis\",\"evidence\":\"65 Request(s), 5 Drittanbieter-Domain(s), davon 0 datenschutzrelevant, 4 Browser-Cookie(s), Transfer-Prüfbedarf: 2, Referrer-/URL-Leaks: 2, Fingerprinting-/Replay-Hinweise: 1.\",\"action\":\"Unnötige Drittanbieter reduzieren und die verbleibenden Kontakte in Datenschutz und Consent abbilden.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "4dea1adcd2fb951b872ae35c441b807cdc5449c4d7e293b031af43f4554f5225",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: Browser-Nachweis",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Browser-Nachweis*\nUnnötige Drittanbieter reduzieren und die verbleibenden Kontakte in Datenschutz und Consent abbilden."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: Browser-Nachweis",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Browser-Nachweis"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Unnötige Drittanbieter reduzieren und die verbleibenden Kontakte in Datenschutz und Consent abbilden."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Browser-Nachweis",
                    "description": "Unnötige Drittanbieter reduzieren und die verbleibenden Kontakte in Datenschutz und Consent abbilden.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-9d89c455a4d6688afff460e2",
            "ticket_id": "remediation_missing_csp",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] Content-Security-Policy fehlt",
            "description": "Header `content-security-policy` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-9d89c455a4d6688afff460e2",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-9d89c455a4d6688afff460e2",
                "X-SaferPage-Body-SHA256": "a1f55652dfaf44f4d9be901c0b8d5e45416c2b14f16185226ee67710900ac380",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_missing_csp",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Content-Security-Policy fehlt",
                "evidence": "",
                "action": "Header `content-security-policy` setzen und nach Deployment erneut prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_missing_csp\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Content-Security-Policy fehlt\",\"evidence\":\"\",\"action\":\"Header `content-security-policy` setzen und nach Deployment erneut prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "a1f55652dfaf44f4d9be901c0b8d5e45416c2b14f16185226ee67710900ac380",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: Content-Security-Policy fehlt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Content-Security-Policy fehlt*\nHeader `content-security-policy` setzen und nach Deployment erneut prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: Content-Security-Policy fehlt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Content-Security-Policy fehlt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Header `content-security-policy` setzen und nach Deployment erneut prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Content-Security-Policy fehlt",
                    "description": "Header `content-security-policy` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-3e46ef9ec6c7ab15a034fd7b",
            "ticket_id": "remediation_module_privacy_consent",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] Datenschutz, Cookies & Consent",
            "description": "Tracking, Werbung und nicht notwendige Cookies vor Zustimmung blockieren und verständlich erklären.",
            "idempotency_key": "sp-fix-3e46ef9ec6c7ab15a034fd7b",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-3e46ef9ec6c7ab15a034fd7b",
                "X-SaferPage-Body-SHA256": "e7dc87cdb7ce2ca2e02c6371f288b86dccbbdf738d1697d7cd4fb5cebb3ee8ad",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_module_privacy_consent",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Datenschutz, Cookies & Consent",
                "evidence": "0 Tracking-Script(s), 4 Cookie(s) vor Einwilligung, 0 Tracking-Cookie(s), Ablehnen-Option: nein, Consent-Audit: 12.",
                "action": "Tracking, Werbung und nicht notwendige Cookies vor Zustimmung blockieren und verständlich erklären.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/tracking-und-consent-reparieren",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_module_privacy_consent\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Datenschutz, Cookies & Consent\",\"evidence\":\"0 Tracking-Script(s), 4 Cookie(s) vor Einwilligung, 0 Tracking-Cookie(s), Ablehnen-Option: nein, Consent-Audit: 12.\",\"action\":\"Tracking, Werbung und nicht notwendige Cookies vor Zustimmung blockieren und verständlich erklären.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/tracking-und-consent-reparieren\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "e7dc87cdb7ce2ca2e02c6371f288b86dccbbdf738d1697d7cd4fb5cebb3ee8ad",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: Datenschutz, Cookies & Consent",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Datenschutz, Cookies & Consent*\nTracking, Werbung und nicht notwendige Cookies vor Zustimmung blockieren und verständlich erklären."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: Datenschutz, Cookies & Consent",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Datenschutz, Cookies & Consent"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Tracking, Werbung und nicht notwendige Cookies vor Zustimmung blockieren und verständlich erklären."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Datenschutz, Cookies & Consent",
                    "description": "Tracking, Werbung und nicht notwendige Cookies vor Zustimmung blockieren und verständlich erklären.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/tracking-und-consent-reparieren\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-95e7e0af7288a09c3c8ac6bc",
            "ticket_id": "remediation_privacy_policy_required_items_missing",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab",
            "description": "Verantwortlicher, Zwecke, Rechtsgrundlagen, Rechte, Speicherfristen, Empfänger, Cookies/Tracking und Widerruf strukturiert ergänzen.",
            "idempotency_key": "sp-fix-95e7e0af7288a09c3c8ac6bc",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-95e7e0af7288a09c3c8ac6bc",
                "X-SaferPage-Body-SHA256": "817cac57c0ff8e9f7b743cd98f9a23f446c4745df13621ebde935bd5698e070a",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_privacy_policy_required_items_missing",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab",
                "evidence": "",
                "action": "Verantwortlicher, Zwecke, Rechtsgrundlagen, Rechte, Speicherfristen, Empfänger, Cookies/Tracking und Widerruf strukturiert ergänzen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/datenschutzerklaerung-verbessern",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_privacy_policy_required_items_missing\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab\",\"evidence\":\"\",\"action\":\"Verantwortlicher, Zwecke, Rechtsgrundlagen, Rechte, Speicherfristen, Empfänger, Cookies/Tracking und Widerruf strukturiert ergänzen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/datenschutzerklaerung-verbessern\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "817cac57c0ff8e9f7b743cd98f9a23f446c4745df13621ebde935bd5698e070a",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab*\nVerantwortlicher, Zwecke, Rechtsgrundlagen, Rechte, Speicherfristen, Empfänger, Cookies/Tracking und Widerruf strukturiert ergänzen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Verantwortlicher, Zwecke, Rechtsgrundlagen, Rechte, Speicherfristen, Empfänger, Cookies/Tracking und Widerruf strukturiert ergänzen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab",
                    "description": "Verantwortlicher, Zwecke, Rechtsgrundlagen, Rechte, Speicherfristen, Empfänger, Cookies/Tracking und Widerruf strukturiert ergänzen.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/datenschutzerklaerung-verbessern\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-cc0f6bdd1cad119be616262c",
            "ticket_id": "remediation_third_country_transfer_review",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] Drittland-/US-Anbieter im Browseraufruf prüfen",
            "description": "Für Anbieter wie Google Fonts, Google Fonts Transfergrundlage, AVV, DPF/SCC/TIA und Datenschutzhinweise prüfen.",
            "idempotency_key": "sp-fix-cc0f6bdd1cad119be616262c",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-cc0f6bdd1cad119be616262c",
                "X-SaferPage-Body-SHA256": "ec4b9aa510490747a248296c84d982a46c8d79c6592ff23167ed3dabe77e1008",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_third_country_transfer_review",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Drittland-/US-Anbieter im Browseraufruf prüfen",
                "evidence": "",
                "action": "Für Anbieter wie Google Fonts, Google Fonts Transfergrundlage, AVV, DPF/SCC/TIA und Datenschutzhinweise prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/drittlandtransfer-und-anbieter-pruefen",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_third_country_transfer_review\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Drittland-/US-Anbieter im Browseraufruf prüfen\",\"evidence\":\"\",\"action\":\"Für Anbieter wie Google Fonts, Google Fonts Transfergrundlage, AVV, DPF/SCC/TIA und Datenschutzhinweise prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/drittlandtransfer-und-anbieter-pruefen\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "ec4b9aa510490747a248296c84d982a46c8d79c6592ff23167ed3dabe77e1008",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: Drittland-/US-Anbieter im Browseraufruf prüfen",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Drittland-/US-Anbieter im Browseraufruf prüfen*\nFür Anbieter wie Google Fonts, Google Fonts Transfergrundlage, AVV, DPF/SCC/TIA und Datenschutzhinweise prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: Drittland-/US-Anbieter im Browseraufruf prüfen",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Drittland-/US-Anbieter im Browseraufruf prüfen"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Für Anbieter wie Google Fonts, Google Fonts Transfergrundlage, AVV, DPF/SCC/TIA und Datenschutzhinweise prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Drittland-/US-Anbieter im Browseraufruf prüfen",
                    "description": "Für Anbieter wie Google Fonts, Google Fonts Transfergrundlage, AVV, DPF/SCC/TIA und Datenschutzhinweise prüfen.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/drittlandtransfer-und-anbieter-pruefen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-a3df434da8f2d1f5c7383540",
            "ticket_id": "remediation_privacy_policy_provider_disclosure_gap",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] Erkannte Anbieter fehlen in der Datenschutzerklärung",
            "description": "Technisch erkannte Dienste in der Datenschutzerklärung konkret mit Anbieter, Zweck, Rechtsgrundlage, Empfänger und Transferhinweis benennen.",
            "idempotency_key": "sp-fix-a3df434da8f2d1f5c7383540",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-a3df434da8f2d1f5c7383540",
                "X-SaferPage-Body-SHA256": "aa066e587ff5e5ddceb9fc45bf0ca9cf070437b13aef123abeb7a919811bd0ff",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_privacy_policy_provider_disclosure_gap",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Erkannte Anbieter fehlen in der Datenschutzerklärung",
                "evidence": "",
                "action": "Technisch erkannte Dienste in der Datenschutzerklärung konkret mit Anbieter, Zweck, Rechtsgrundlage, Empfänger und Transferhinweis benennen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_privacy_policy_provider_disclosure_gap\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Erkannte Anbieter fehlen in der Datenschutzerklärung\",\"evidence\":\"\",\"action\":\"Technisch erkannte Dienste in der Datenschutzerklärung konkret mit Anbieter, Zweck, Rechtsgrundlage, Empfänger und Transferhinweis benennen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "aa066e587ff5e5ddceb9fc45bf0ca9cf070437b13aef123abeb7a919811bd0ff",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: Erkannte Anbieter fehlen in der Datenschutzerklärung",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Erkannte Anbieter fehlen in der Datenschutzerklärung*\nTechnisch erkannte Dienste in der Datenschutzerklärung konkret mit Anbieter, Zweck, Rechtsgrundlage, Empfänger und Transferhinweis benennen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: Erkannte Anbieter fehlen in der Datenschutzerklärung",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Erkannte Anbieter fehlen in der Datenschutzerklärung"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Technisch erkannte Dienste in der Datenschutzerklärung konkret mit Anbieter, Zweck, Rechtsgrundlage, Empfänger und Transferhinweis benennen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Erkannte Anbieter fehlen in der Datenschutzerklärung",
                    "description": "Technisch erkannte Dienste in der Datenschutzerklärung konkret mit Anbieter, Zweck, Rechtsgrundlage, Empfänger und Transferhinweis benennen.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-d58c74fd0f1e489d970cd9c7",
            "ticket_id": "remediation_google_consent_mode_missing",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] Google Consent Mode Default nicht erkannt",
            "description": "Vor dem ersten Google-Tag Consent-Defaults setzen, typischerweise ad_storage, analytics_storage, ad_user_data und ad_personalization auf denied.",
            "idempotency_key": "sp-fix-d58c74fd0f1e489d970cd9c7",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-d58c74fd0f1e489d970cd9c7",
                "X-SaferPage-Body-SHA256": "256071601958b637f1b5ebcdcbefc960b54b9f1b19baa3b658b7304817ba6c00",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_google_consent_mode_missing",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Google Consent Mode Default nicht erkannt",
                "evidence": "",
                "action": "Vor dem ersten Google-Tag Consent-Defaults setzen, typischerweise ad_storage, analytics_storage, ad_user_data und ad_personalization auf denied.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/google-dienste-datenschutzfreundlich-einbinden",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_google_consent_mode_missing\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Google Consent Mode Default nicht erkannt\",\"evidence\":\"\",\"action\":\"Vor dem ersten Google-Tag Consent-Defaults setzen, typischerweise ad_storage, analytics_storage, ad_user_data und ad_personalization auf denied.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/google-dienste-datenschutzfreundlich-einbinden\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "256071601958b637f1b5ebcdcbefc960b54b9f1b19baa3b658b7304817ba6c00",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: Google Consent Mode Default nicht erkannt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Google Consent Mode Default nicht erkannt*\nVor dem ersten Google-Tag Consent-Defaults setzen, typischerweise ad_storage, analytics_storage, ad_user_data und ad_personalization auf denied."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: Google Consent Mode Default nicht erkannt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Google Consent Mode Default nicht erkannt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Vor dem ersten Google-Tag Consent-Defaults setzen, typischerweise ad_storage, analytics_storage, ad_user_data und ad_personalization auf denied."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Google Consent Mode Default nicht erkannt",
                    "description": "Vor dem ersten Google-Tag Consent-Defaults setzen, typischerweise ad_storage, analytics_storage, ad_user_data und ad_personalization auf denied.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/google-dienste-datenschutzfreundlich-einbinden\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-0a66bf4e5e80c0375367f16d",
            "ticket_id": "remediation_google_consent_gap",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Marketing Ops/Webentwicklung",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] Google-Dienste",
            "description": "Befund mit Betreiber-Guide beheben und danach erneut scannen.",
            "idempotency_key": "sp-fix-0a66bf4e5e80c0375367f16d",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-0a66bf4e5e80c0375367f16d",
                "X-SaferPage-Body-SHA256": "43de2fdc4169017df445703f14563518a27de2d4ead06d2d57960c4743f0d972",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_google_consent_gap",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Marketing Ops/Webentwicklung",
                "sla": "7 Tage",
                "title": "Google-Dienste",
                "evidence": "Google-Tags und Consent-Mode-Signale wurden aus HTML, Browserkontakten und Tracking-IDs abgeleitet.",
                "action": "Befund mit Betreiber-Guide beheben und danach erneut scannen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/google-dienste-datenschutzfreundlich-einbinden",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_google_consent_gap\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Marketing Ops/Webentwicklung\",\"sla\":\"7 Tage\",\"title\":\"Google-Dienste\",\"evidence\":\"Google-Tags und Consent-Mode-Signale wurden aus HTML, Browserkontakten und Tracking-IDs abgeleitet.\",\"action\":\"Befund mit Betreiber-Guide beheben und danach erneut scannen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/google-dienste-datenschutzfreundlich-einbinden\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "43de2fdc4169017df445703f14563518a27de2d4ead06d2d57960c4743f0d972",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: Google-Dienste",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Google-Dienste*\nBefund mit Betreiber-Guide beheben und danach erneut scannen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Marketing Ops/Webentwicklung · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: Google-Dienste",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Google-Dienste"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Befund mit Betreiber-Guide beheben und danach erneut scannen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Marketing Ops/Webentwicklung"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Google-Dienste",
                    "description": "Befund mit Betreiber-Guide beheben und danach erneut scannen.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/google-dienste-datenschutzfreundlich-einbinden\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-ae661833cee1a681818db977",
            "ticket_id": "remediation_module_google_third_parties",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] Google-Dienste & Drittanbieter",
            "description": "Google-Dienste einzeln prüfen, Consent Mode sauber setzen und Fonts möglichst lokal ausliefern.",
            "idempotency_key": "sp-fix-ae661833cee1a681818db977",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-ae661833cee1a681818db977",
                "X-SaferPage-Body-SHA256": "67baa4ea2a75e52c13225217ec3b620f335affea13e88482c0aa619f9abfcf2b",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_module_google_third_parties",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Google-Dienste & Drittanbieter",
                "evidence": "Google-Tags: ja, 2 Google-nahe Domain(s), Consent-Default: nein, Analytics: nein, Werbung: nein, Fonts: ja.",
                "action": "Google-Dienste einzeln prüfen, Consent Mode sauber setzen und Fonts möglichst lokal ausliefern.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/google-dienste-datenschutzfreundlich-einbinden",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_module_google_third_parties\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Google-Dienste & Drittanbieter\",\"evidence\":\"Google-Tags: ja, 2 Google-nahe Domain(s), Consent-Default: nein, Analytics: nein, Werbung: nein, Fonts: ja.\",\"action\":\"Google-Dienste einzeln prüfen, Consent Mode sauber setzen und Fonts möglichst lokal ausliefern.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/google-dienste-datenschutzfreundlich-einbinden\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "67baa4ea2a75e52c13225217ec3b620f335affea13e88482c0aa619f9abfcf2b",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: Google-Dienste & Drittanbieter",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Google-Dienste & Drittanbieter*\nGoogle-Dienste einzeln prüfen, Consent Mode sauber setzen und Fonts möglichst lokal ausliefern."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: Google-Dienste & Drittanbieter",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Google-Dienste & Drittanbieter"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Google-Dienste einzeln prüfen, Consent Mode sauber setzen und Fonts möglichst lokal ausliefern."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Google-Dienste & Drittanbieter",
                    "description": "Google-Dienste einzeln prüfen, Consent Mode sauber setzen und Fonts möglichst lokal ausliefern.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/google-dienste-datenschutzfreundlich-einbinden\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-ff10ed6f28db0cf9fb5d9827",
            "ticket_id": "remediation_missing_hsts",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] HSTS fehlt",
            "description": "Header `strict-transport-security` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-ff10ed6f28db0cf9fb5d9827",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-ff10ed6f28db0cf9fb5d9827",
                "X-SaferPage-Body-SHA256": "e60a1155a11bc2f5f1aa9e6147fe1e8a179e23eb519f4aa04d695c7bf3fe2c06",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_missing_hsts",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "HSTS fehlt",
                "evidence": "",
                "action": "Header `strict-transport-security` setzen und nach Deployment erneut prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_missing_hsts\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"HSTS fehlt\",\"evidence\":\"\",\"action\":\"Header `strict-transport-security` setzen und nach Deployment erneut prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "e60a1155a11bc2f5f1aa9e6147fe1e8a179e23eb519f4aa04d695c7bf3fe2c06",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: HSTS fehlt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*HSTS fehlt*\nHeader `strict-transport-security` setzen und nach Deployment erneut prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: HSTS fehlt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "HSTS fehlt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Header `strict-transport-security` setzen und nach Deployment erneut prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] HSTS fehlt",
                    "description": "Header `strict-transport-security` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-8f5a7d7c1e936445cf8fa52b",
            "ticket_id": "remediation_module_operator_transparency",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] Impressum, Kontakt & Datenschutzerklärung",
            "description": "Betreiberangaben, Kontaktweg und Datenschutzhinweise von jeder Seite aus auffindbar machen.",
            "idempotency_key": "sp-fix-8f5a7d7c1e936445cf8fa52b",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-8f5a7d7c1e936445cf8fa52b",
                "X-SaferPage-Body-SHA256": "2256afd60990494d0821f3d8207bc5b7c3c92db89e9887b687e1c2c84bfda066",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_module_operator_transparency",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Impressum, Kontakt & Datenschutzerklärung",
                "evidence": "Impressum: nein, Datenschutz: nein, Kontakt: nein.",
                "action": "Betreiberangaben, Kontaktweg und Datenschutzhinweise von jeder Seite aus auffindbar machen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/impressum-und-kontakt-sichtbar-machen",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_module_operator_transparency\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Impressum, Kontakt & Datenschutzerklärung\",\"evidence\":\"Impressum: nein, Datenschutz: nein, Kontakt: nein.\",\"action\":\"Betreiberangaben, Kontaktweg und Datenschutzhinweise von jeder Seite aus auffindbar machen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/impressum-und-kontakt-sichtbar-machen\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "2256afd60990494d0821f3d8207bc5b7c3c92db89e9887b687e1c2c84bfda066",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: Impressum, Kontakt & Datenschutzerklärung",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Impressum, Kontakt & Datenschutzerklärung*\nBetreiberangaben, Kontaktweg und Datenschutzhinweise von jeder Seite aus auffindbar machen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: Impressum, Kontakt & Datenschutzerklärung",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Impressum, Kontakt & Datenschutzerklärung"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Betreiberangaben, Kontaktweg und Datenschutzhinweise von jeder Seite aus auffindbar machen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Impressum, Kontakt & Datenschutzerklärung",
                    "description": "Betreiberangaben, Kontaktweg und Datenschutzhinweise von jeder Seite aus auffindbar machen.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/impressum-und-kontakt-sichtbar-machen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-44b43317d925da863af771b9",
            "ticket_id": "remediation_imprint_missing",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] Kein Impressum-Link erkannt",
            "description": "Für deutsche Seiten sollte ein gut sichtbares Impressum verlinkt sein.",
            "idempotency_key": "sp-fix-44b43317d925da863af771b9",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-44b43317d925da863af771b9",
                "X-SaferPage-Body-SHA256": "6c610f60cf7268fde5a1a5e631986da16c242d50b7740a1dd34e3b47e98e8940",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_imprint_missing",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Kein Impressum-Link erkannt",
                "evidence": "",
                "action": "Für deutsche Seiten sollte ein gut sichtbares Impressum verlinkt sein.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/impressum-und-kontakt-sichtbar-machen",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_imprint_missing\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Kein Impressum-Link erkannt\",\"evidence\":\"\",\"action\":\"Für deutsche Seiten sollte ein gut sichtbares Impressum verlinkt sein.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/impressum-und-kontakt-sichtbar-machen\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "6c610f60cf7268fde5a1a5e631986da16c242d50b7740a1dd34e3b47e98e8940",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: Kein Impressum-Link erkannt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Kein Impressum-Link erkannt*\nFür deutsche Seiten sollte ein gut sichtbares Impressum verlinkt sein."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: Kein Impressum-Link erkannt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Kein Impressum-Link erkannt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Für deutsche Seiten sollte ein gut sichtbares Impressum verlinkt sein."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Kein Impressum-Link erkannt",
                    "description": "Für deutsche Seiten sollte ein gut sichtbares Impressum verlinkt sein.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/impressum-und-kontakt-sichtbar-machen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-aa6572130c1bae1561d55677",
            "ticket_id": "remediation_operator_contact_missing",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] Keine klare Kontaktmöglichkeit erkannt",
            "description": "E-Mail, Telefonnummer, Kontaktseite oder Impressum sichtbar verlinken.",
            "idempotency_key": "sp-fix-aa6572130c1bae1561d55677",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-aa6572130c1bae1561d55677",
                "X-SaferPage-Body-SHA256": "a60277108863412093841d64681bd23f3fccadd486271f272fad5de0970ff845",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_operator_contact_missing",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Keine klare Kontaktmöglichkeit erkannt",
                "evidence": "",
                "action": "E-Mail, Telefonnummer, Kontaktseite oder Impressum sichtbar verlinken.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/impressum-und-kontakt-sichtbar-machen",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_operator_contact_missing\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Keine klare Kontaktmöglichkeit erkannt\",\"evidence\":\"\",\"action\":\"E-Mail, Telefonnummer, Kontaktseite oder Impressum sichtbar verlinken.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/impressum-und-kontakt-sichtbar-machen\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "a60277108863412093841d64681bd23f3fccadd486271f272fad5de0970ff845",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: Keine klare Kontaktmöglichkeit erkannt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Keine klare Kontaktmöglichkeit erkannt*\nE-Mail, Telefonnummer, Kontaktseite oder Impressum sichtbar verlinken."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: Keine klare Kontaktmöglichkeit erkannt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Keine klare Kontaktmöglichkeit erkannt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "E-Mail, Telefonnummer, Kontaktseite oder Impressum sichtbar verlinken."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Keine klare Kontaktmöglichkeit erkannt",
                    "description": "E-Mail, Telefonnummer, Kontaktseite oder Impressum sichtbar verlinken.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/impressum-und-kontakt-sichtbar-machen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-325aa8eda6da343e0a0165c3",
            "ticket_id": "remediation_pre_consent_nonessential_cookies",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] Möglicherweise nicht notwendige Cookies vor Einwilligung",
            "description": "Prüfen, ob diese Cookies technisch notwendig sind oder erst nach Einwilligung gesetzt werden dürfen.",
            "idempotency_key": "sp-fix-325aa8eda6da343e0a0165c3",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-325aa8eda6da343e0a0165c3",
                "X-SaferPage-Body-SHA256": "c8074ff5895f7fb0ffde1784af468a0702ee9c50c043a72b09888b2f8b52654d",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_pre_consent_nonessential_cookies",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Möglicherweise nicht notwendige Cookies vor Einwilligung",
                "evidence": "",
                "action": "Prüfen, ob diese Cookies technisch notwendig sind oder erst nach Einwilligung gesetzt werden dürfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/tracking-und-consent-reparieren",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_pre_consent_nonessential_cookies\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Möglicherweise nicht notwendige Cookies vor Einwilligung\",\"evidence\":\"\",\"action\":\"Prüfen, ob diese Cookies technisch notwendig sind oder erst nach Einwilligung gesetzt werden dürfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/tracking-und-consent-reparieren\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "c8074ff5895f7fb0ffde1784af468a0702ee9c50c043a72b09888b2f8b52654d",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: Möglicherweise nicht notwendige Cookies vor Einwilligung",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Möglicherweise nicht notwendige Cookies vor Einwilligung*\nPrüfen, ob diese Cookies technisch notwendig sind oder erst nach Einwilligung gesetzt werden dürfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: Möglicherweise nicht notwendige Cookies vor Einwilligung",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Möglicherweise nicht notwendige Cookies vor Einwilligung"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Prüfen, ob diese Cookies technisch notwendig sind oder erst nach Einwilligung gesetzt werden dürfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Möglicherweise nicht notwendige Cookies vor Einwilligung",
                    "description": "Prüfen, ob diese Cookies technisch notwendig sind oder erst nach Einwilligung gesetzt werden dürfen.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/tracking-und-consent-reparieren\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-0232cf7cf0889b84067e5296",
            "ticket_id": "remediation_security_header_gap",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "IT/Security",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] Security-Header, Referrer-Policy und Browser-Schutz setzen",
            "description": "Befund mit Betreiber-Guide beheben und danach erneut scannen.",
            "idempotency_key": "sp-fix-0232cf7cf0889b84067e5296",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-0232cf7cf0889b84067e5296",
                "X-SaferPage-Body-SHA256": "3ae8a7b8f34b7c15cb3610dd52c1d40084ad2c9c28bc602908cbbe53c49d482c",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_security_header_gap",
                "priority": "hoch",
                "severity": "critical",
                "owner": "IT/Security",
                "sla": "7 Tage",
                "title": "Security-Header, Referrer-Policy und Browser-Schutz setzen",
                "evidence": "1 von 9 wichtigen Security-Headern vorhanden, 1 korrekt bewertet. Keine Content-Security-Policy gefunden.",
                "action": "Befund mit Betreiber-Guide beheben und danach erneut scannen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_security_header_gap\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"IT/Security\",\"sla\":\"7 Tage\",\"title\":\"Security-Header, Referrer-Policy und Browser-Schutz setzen\",\"evidence\":\"1 von 9 wichtigen Security-Headern vorhanden, 1 korrekt bewertet. Keine Content-Security-Policy gefunden.\",\"action\":\"Befund mit Betreiber-Guide beheben und danach erneut scannen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "3ae8a7b8f34b7c15cb3610dd52c1d40084ad2c9c28bc602908cbbe53c49d482c",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: Security-Header, Referrer-Policy und Browser-Schutz setzen",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Security-Header, Referrer-Policy und Browser-Schutz setzen*\nBefund mit Betreiber-Guide beheben und danach erneut scannen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: IT/Security · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: Security-Header, Referrer-Policy und Browser-Schutz setzen",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Security-Header, Referrer-Policy und Browser-Schutz setzen"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Befund mit Betreiber-Guide beheben und danach erneut scannen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "IT/Security"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Security-Header, Referrer-Policy und Browser-Schutz setzen",
                    "description": "Befund mit Betreiber-Guide beheben und danach erneut scannen.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-129a69752aa5325584d31aed",
            "ticket_id": "remediation_third_party_page_url_parameter",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] Seiten-URL wird in Drittanbieter-Requests übertragen",
            "description": "Tracking-/Tag-Parameter für Anbieter wie responder.wt.heise.de, prophet.heise-academy.de so konfigurieren, dass keine unnötigen Pfade, Suchparameter oder Formularumfelder gesendet werden.",
            "idempotency_key": "sp-fix-129a69752aa5325584d31aed",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-129a69752aa5325584d31aed",
                "X-SaferPage-Body-SHA256": "6e50e880a40c06cf12d9623f3d555e4d72612b208eeecdbddc1821cd7177b3e3",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_third_party_page_url_parameter",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Seiten-URL wird in Drittanbieter-Requests übertragen",
                "evidence": "",
                "action": "Tracking-/Tag-Parameter für Anbieter wie responder.wt.heise.de, prophet.heise-academy.de so konfigurieren, dass keine unnötigen Pfade, Suchparameter oder Formularumfelder gesendet werden.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/referrer-und-url-leaks-vermeiden",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_third_party_page_url_parameter\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Seiten-URL wird in Drittanbieter-Requests übertragen\",\"evidence\":\"\",\"action\":\"Tracking-/Tag-Parameter für Anbieter wie responder.wt.heise.de, prophet.heise-academy.de so konfigurieren, dass keine unnötigen Pfade, Suchparameter oder Formularumfelder gesendet werden.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/referrer-und-url-leaks-vermeiden\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "6e50e880a40c06cf12d9623f3d555e4d72612b208eeecdbddc1821cd7177b3e3",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: Seiten-URL wird in Drittanbieter-Requests übertragen",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Seiten-URL wird in Drittanbieter-Requests übertragen*\nTracking-/Tag-Parameter für Anbieter wie responder.wt.heise.de, prophet.heise-academy.de so konfigurieren, dass keine unnötigen Pfade, Suchparameter oder Formularumfelder gesendet werden."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: Seiten-URL wird in Drittanbieter-Requests übertragen",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Seiten-URL wird in Drittanbieter-Requests übertragen"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Tracking-/Tag-Parameter für Anbieter wie responder.wt.heise.de, prophet.heise-academy.de so konfigurieren, dass keine unnötigen Pfade, Suchparameter oder Formularumfelder gesendet werden."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Seiten-URL wird in Drittanbieter-Requests übertragen",
                    "description": "Tracking-/Tag-Parameter für Anbieter wie responder.wt.heise.de, prophet.heise-academy.de so konfigurieren, dass keine unnötigen Pfade, Suchparameter oder Formularumfelder gesendet werden.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/referrer-und-url-leaks-vermeiden\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-83c53df3a2c170e3a4535219",
            "ticket_id": "remediation_module_security_tls",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] Sicherheit, TLS & Header",
            "description": "HTTPS, Zertifikat, HSTS, CSP, zentrale Security-Header und externe Skriptquellen sauber konfigurieren.",
            "idempotency_key": "sp-fix-83c53df3a2c170e3a4535219",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-83c53df3a2c170e3a4535219",
                "X-SaferPage-Body-SHA256": "2d641504b3c52df1d6d08ef88c070cefbbb345aad61334bf817550f4f42f8a72",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_module_security_tls",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Sicherheit, TLS & Header",
                "evidence": "1 Infrastruktur-Hinweis(e), Security-Header: 1/9 vorhanden, 8 fehlen, externe Skript-Hosts: 1.",
                "action": "HTTPS, Zertifikat, HSTS, CSP, zentrale Security-Header und externe Skriptquellen sauber konfigurieren.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_module_security_tls\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Sicherheit, TLS & Header\",\"evidence\":\"1 Infrastruktur-Hinweis(e), Security-Header: 1/9 vorhanden, 8 fehlen, externe Skript-Hosts: 1.\",\"action\":\"HTTPS, Zertifikat, HSTS, CSP, zentrale Security-Header und externe Skriptquellen sauber konfigurieren.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "2d641504b3c52df1d6d08ef88c070cefbbb345aad61334bf817550f4f42f8a72",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: Sicherheit, TLS & Header",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Sicherheit, TLS & Header*\nHTTPS, Zertifikat, HSTS, CSP, zentrale Security-Header und externe Skriptquellen sauber konfigurieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: Sicherheit, TLS & Header",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Sicherheit, TLS & Header"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "HTTPS, Zertifikat, HSTS, CSP, zentrale Security-Header und externe Skriptquellen sauber konfigurieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Sicherheit, TLS & Header",
                    "description": "HTTPS, Zertifikat, HSTS, CSP, zentrale Security-Header und externe Skriptquellen sauber konfigurieren.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-7e5dab16e44ad4c350058ec0",
            "ticket_id": "remediation_consent_preconsent_gap",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Marketing/IT",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] Tracking, Cookies oder Drittanbieter vor Einwilligung reparieren",
            "description": "Befund mit Betreiber-Guide beheben und danach erneut scannen.",
            "idempotency_key": "sp-fix-7e5dab16e44ad4c350058ec0",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-7e5dab16e44ad4c350058ec0",
                "X-SaferPage-Body-SHA256": "83cecd6a28ca0ac6b91f874f69a32744e27bb0237b32ae5f79b0d3d0e32b389c",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_consent_preconsent_gap",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Marketing/IT",
                "sla": "7 Tage",
                "title": "Tracking, Cookies oder Drittanbieter vor Einwilligung reparieren",
                "evidence": "Consent, Tracking oder Drittanbieter wirken im Erstaufruf deutlich nachbesserungsbeduerftig.",
                "action": "Befund mit Betreiber-Guide beheben und danach erneut scannen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/tracking-und-consent-reparieren",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_consent_preconsent_gap\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Marketing/IT\",\"sla\":\"7 Tage\",\"title\":\"Tracking, Cookies oder Drittanbieter vor Einwilligung reparieren\",\"evidence\":\"Consent, Tracking oder Drittanbieter wirken im Erstaufruf deutlich nachbesserungsbeduerftig.\",\"action\":\"Befund mit Betreiber-Guide beheben und danach erneut scannen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/tracking-und-consent-reparieren\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "83cecd6a28ca0ac6b91f874f69a32744e27bb0237b32ae5f79b0d3d0e32b389c",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: Tracking, Cookies oder Drittanbieter vor Einwilligung reparieren",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Tracking, Cookies oder Drittanbieter vor Einwilligung reparieren*\nBefund mit Betreiber-Guide beheben und danach erneut scannen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Marketing/IT · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: Tracking, Cookies oder Drittanbieter vor Einwilligung reparieren",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Tracking, Cookies oder Drittanbieter vor Einwilligung reparieren"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Befund mit Betreiber-Guide beheben und danach erneut scannen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Marketing/IT"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Tracking, Cookies oder Drittanbieter vor Einwilligung reparieren",
                    "description": "Befund mit Betreiber-Guide beheben und danach erneut scannen.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/tracking-und-consent-reparieren\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-e7d75e80c9276f8235df325d",
            "ticket_id": "remediation_missing_x_content_type_options",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] X-Content-Type-Options fehlt",
            "description": "Header `x-content-type-options` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-e7d75e80c9276f8235df325d",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-e7d75e80c9276f8235df325d",
                "X-SaferPage-Body-SHA256": "7778aa5f0178e45417cd2ae62ae59a74a0018e27459d2ac215c4fb39c3d83eba",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_missing_x_content_type_options",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "X-Content-Type-Options fehlt",
                "evidence": "",
                "action": "Header `x-content-type-options` setzen und nach Deployment erneut prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_missing_x_content_type_options\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"X-Content-Type-Options fehlt\",\"evidence\":\"\",\"action\":\"Header `x-content-type-options` setzen und nach Deployment erneut prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "7778aa5f0178e45417cd2ae62ae59a74a0018e27459d2ac215c4fb39c3d83eba",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: X-Content-Type-Options fehlt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*X-Content-Type-Options fehlt*\nHeader `x-content-type-options` setzen und nach Deployment erneut prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: X-Content-Type-Options fehlt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "X-Content-Type-Options fehlt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Header `x-content-type-options` setzen und nach Deployment erneut prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] X-Content-Type-Options fehlt",
                    "description": "Header `x-content-type-options` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-b1c967283f37bd7a82c6f5e4",
            "ticket_id": "remediation_missing_x_frame_options",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[blog.heise-academy.de] X-Frame-Options fehlt",
            "description": "Header `x-frame-options` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-b1c967283f37bd7a82c6f5e4",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-b1c967283f37bd7a82c6f5e4",
                "X-SaferPage-Body-SHA256": "4e45b80473dc7f235502f3984640feee301fa44c6c1b29e863f4bb727d99a7ab",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_missing_x_frame_options",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "X-Frame-Options fehlt",
                "evidence": "",
                "action": "Header `x-frame-options` setzen und nach Deployment erneut prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_missing_x_frame_options\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"X-Frame-Options fehlt\",\"evidence\":\"\",\"action\":\"Header `x-frame-options` setzen und nach Deployment erneut prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "4e45b80473dc7f235502f3984640feee301fa44c6c1b29e863f4bb727d99a7ab",
            "slack_payload": {
                "text": "[HOCH] blog.heise-academy.de: X-Frame-Options fehlt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*X-Frame-Options fehlt*\nHeader `x-frame-options` setzen und nach Deployment erneut prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] blog.heise-academy.de: X-Frame-Options fehlt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "X-Frame-Options fehlt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Header `x-frame-options` setzen und nach Deployment erneut prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] X-Frame-Options fehlt",
                    "description": "Header `x-frame-options` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-4f13d010385083510d89a931",
            "ticket_id": "remediation_third_party_mapping_fix",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Datenschutz/Marketing/IT",
            "sla": "30 Tage",
            "summary": "[blog.heise-academy.de] Drittanbieter aus Browserkontakten einem Dienst zuordnen",
            "description": "Servicekarte je Anbieter anlegen und Datenschutzhinweis, CMP und Anbieterregister synchronisieren.",
            "idempotency_key": "sp-fix-4f13d010385083510d89a931",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-4f13d010385083510d89a931",
                "X-SaferPage-Body-SHA256": "4dc3487b5c6f75a3ecba07d34bdde68cdb0e618879fc11ba8923703130b705f6",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_third_party_mapping_fix",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Datenschutz/Marketing/IT",
                "sla": "30 Tage",
                "title": "Drittanbieter aus Browserkontakten einem Dienst zuordnen",
                "evidence": "5 Drittanbieter-Domain(s) im Browserlauf.",
                "action": "Servicekarte je Anbieter anlegen und Datenschutzhinweis, CMP und Anbieterregister synchronisieren.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_third_party_mapping_fix\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Datenschutz/Marketing/IT\",\"sla\":\"30 Tage\",\"title\":\"Drittanbieter aus Browserkontakten einem Dienst zuordnen\",\"evidence\":\"5 Drittanbieter-Domain(s) im Browserlauf.\",\"action\":\"Servicekarte je Anbieter anlegen und Datenschutzhinweis, CMP und Anbieterregister synchronisieren.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "4dc3487b5c6f75a3ecba07d34bdde68cdb0e618879fc11ba8923703130b705f6",
            "slack_payload": {
                "text": "[MITTEL] blog.heise-academy.de: Drittanbieter aus Browserkontakten einem Dienst zuordnen",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Drittanbieter aus Browserkontakten einem Dienst zuordnen*\nServicekarte je Anbieter anlegen und Datenschutzhinweis, CMP und Anbieterregister synchronisieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Datenschutz/Marketing/IT · SLA: 30 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] blog.heise-academy.de: Drittanbieter aus Browserkontakten einem Dienst zuordnen",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Drittanbieter aus Browserkontakten einem Dienst zuordnen"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Servicekarte je Anbieter anlegen und Datenschutzhinweis, CMP und Anbieterregister synchronisieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Datenschutz/Marketing/IT"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Drittanbieter aus Browserkontakten einem Dienst zuordnen",
                    "description": "Servicekarte je Anbieter anlegen und Datenschutzhinweis, CMP und Anbieterregister synchronisieren.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-829a790a69b04781ab1485f9",
            "ticket_id": "remediation_module_referrer_url_leaks",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "30 Tage",
            "summary": "[blog.heise-academy.de] Referrer & URL-Leaks",
            "description": "Referrer-Policy härten, sensible Query-Parameter entfernen und Tracking-Parameter ohne volle Seiten-URL konfigurieren.",
            "idempotency_key": "sp-fix-829a790a69b04781ab1485f9",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-829a790a69b04781ab1485f9",
                "X-SaferPage-Body-SHA256": "41b0c641c9e4135e6e6cd7d1d398b0be5e2162dea2b34a7769a11fccc7460775",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_module_referrer_url_leaks",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "30 Tage",
                "title": "Referrer & URL-Leaks",
                "evidence": "2 Drittanbieter-Domain(s) mit Referrer-/URL-Leak-Prüfbedarf, 0 sensible Query-Kontexte.",
                "action": "Referrer-Policy härten, sensible Query-Parameter entfernen und Tracking-Parameter ohne volle Seiten-URL konfigurieren.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/referrer-und-url-leaks-vermeiden",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_module_referrer_url_leaks\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"Referrer & URL-Leaks\",\"evidence\":\"2 Drittanbieter-Domain(s) mit Referrer-/URL-Leak-Prüfbedarf, 0 sensible Query-Kontexte.\",\"action\":\"Referrer-Policy härten, sensible Query-Parameter entfernen und Tracking-Parameter ohne volle Seiten-URL konfigurieren.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/referrer-und-url-leaks-vermeiden\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "41b0c641c9e4135e6e6cd7d1d398b0be5e2162dea2b34a7769a11fccc7460775",
            "slack_payload": {
                "text": "[MITTEL] blog.heise-academy.de: Referrer & URL-Leaks",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Referrer & URL-Leaks*\nReferrer-Policy härten, sensible Query-Parameter entfernen und Tracking-Parameter ohne volle Seiten-URL konfigurieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 30 Tage · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] blog.heise-academy.de: Referrer & URL-Leaks",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Referrer & URL-Leaks"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Referrer-Policy härten, sensible Query-Parameter entfernen und Tracking-Parameter ohne volle Seiten-URL konfigurieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Referrer & URL-Leaks",
                    "description": "Referrer-Policy härten, sensible Query-Parameter entfernen und Tracking-Parameter ohne volle Seiten-URL konfigurieren.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/referrer-und-url-leaks-vermeiden\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-20b64e79023b846231607574",
            "ticket_id": "mapping_vendor_fonts.googleapis.com",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[blog.heise-academy.de] fonts.googleapis.com",
            "description": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.",
            "idempotency_key": "sp-fix-20b64e79023b846231607574",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-20b64e79023b846231607574",
                "X-SaferPage-Body-SHA256": "04c4d7094f5fbf9371b4f2f669e8fa9fbc3a0385e8351f0fddce46667c6071cb",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "mapping_vendor_fonts.googleapis.com",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "fonts.googleapis.com",
                "evidence": "Schriften",
                "action": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren",
                    "evidence": "https://saferpage.de/anbieter/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"mapping_vendor_fonts.googleapis.com\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"fonts.googleapis.com\",\"evidence\":\"Schriften\",\"action\":\"Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\",\"evidence\":\"https://saferpage.de/anbieter/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "04c4d7094f5fbf9371b4f2f669e8fa9fbc3a0385e8351f0fddce46667c6071cb",
            "slack_payload": {
                "text": "[MITTEL] blog.heise-academy.de: fonts.googleapis.com",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*fonts.googleapis.com*\nZweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Marketing/IT/Datenschutz · SLA: 30 Tage · https://saferpage.de/anbieter/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] blog.heise-academy.de: fonts.googleapis.com",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "fonts.googleapis.com"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] fonts.googleapis.com",
                    "description": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.\n\nNachweis: https://saferpage.de/anbieter/blog.heise-academy.de\nGuide: https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-90e31f6f07864dcc7395b6e9",
            "ticket_id": "mapping_request_fonts.googleapis.com",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[blog.heise-academy.de] fonts.googleapis.com",
            "description": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.",
            "idempotency_key": "sp-fix-90e31f6f07864dcc7395b6e9",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-90e31f6f07864dcc7395b6e9",
                "X-SaferPage-Body-SHA256": "7b6096be752ed077396de93e8fff81f652d7710903ffb91ca18686dafc84d010",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "mapping_request_fonts.googleapis.com",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "fonts.googleapis.com",
                "evidence": "fonts",
                "action": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen",
                    "evidence": "https://saferpage.de/anbieter/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"mapping_request_fonts.googleapis.com\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"fonts.googleapis.com\",\"evidence\":\"fonts\",\"action\":\"Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen\",\"evidence\":\"https://saferpage.de/anbieter/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "7b6096be752ed077396de93e8fff81f652d7710903ffb91ca18686dafc84d010",
            "slack_payload": {
                "text": "[MITTEL] blog.heise-academy.de: fonts.googleapis.com",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*fonts.googleapis.com*\nRequest einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Marketing/IT/Datenschutz · SLA: 30 Tage · https://saferpage.de/anbieter/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] blog.heise-academy.de: fonts.googleapis.com",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "fonts.googleapis.com"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] fonts.googleapis.com",
                    "description": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.\n\nNachweis: https://saferpage.de/anbieter/blog.heise-academy.de\nGuide: https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-1dac1c7ac62a568c92d473d8",
            "ticket_id": "mapping_vendor_fonts.gstatic.com",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[blog.heise-academy.de] fonts.gstatic.com",
            "description": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.",
            "idempotency_key": "sp-fix-1dac1c7ac62a568c92d473d8",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-1dac1c7ac62a568c92d473d8",
                "X-SaferPage-Body-SHA256": "b09f4f6d7da87ca0576d2f61e3c19534883256629ee38e2e452de5fff75d680d",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "mapping_vendor_fonts.gstatic.com",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "fonts.gstatic.com",
                "evidence": "Schriften",
                "action": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren",
                    "evidence": "https://saferpage.de/anbieter/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"mapping_vendor_fonts.gstatic.com\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"fonts.gstatic.com\",\"evidence\":\"Schriften\",\"action\":\"Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\",\"evidence\":\"https://saferpage.de/anbieter/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "b09f4f6d7da87ca0576d2f61e3c19534883256629ee38e2e452de5fff75d680d",
            "slack_payload": {
                "text": "[MITTEL] blog.heise-academy.de: fonts.gstatic.com",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*fonts.gstatic.com*\nZweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Marketing/IT/Datenschutz · SLA: 30 Tage · https://saferpage.de/anbieter/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] blog.heise-academy.de: fonts.gstatic.com",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "fonts.gstatic.com"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] fonts.gstatic.com",
                    "description": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.\n\nNachweis: https://saferpage.de/anbieter/blog.heise-academy.de\nGuide: https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-fc376a137758209423959d3a",
            "ticket_id": "mapping_request_fonts.gstatic.com",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[blog.heise-academy.de] fonts.gstatic.com",
            "description": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.",
            "idempotency_key": "sp-fix-fc376a137758209423959d3a",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-fc376a137758209423959d3a",
                "X-SaferPage-Body-SHA256": "169f79a979639bcfcbe345671455845e1878bad702a3aad81f2f949ee3c19982",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "mapping_request_fonts.gstatic.com",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "fonts.gstatic.com",
                "evidence": "fonts",
                "action": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen",
                    "evidence": "https://saferpage.de/anbieter/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"mapping_request_fonts.gstatic.com\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"fonts.gstatic.com\",\"evidence\":\"fonts\",\"action\":\"Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen\",\"evidence\":\"https://saferpage.de/anbieter/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "169f79a979639bcfcbe345671455845e1878bad702a3aad81f2f949ee3c19982",
            "slack_payload": {
                "text": "[MITTEL] blog.heise-academy.de: fonts.gstatic.com",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*fonts.gstatic.com*\nRequest einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Marketing/IT/Datenschutz · SLA: 30 Tage · https://saferpage.de/anbieter/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] blog.heise-academy.de: fonts.gstatic.com",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "fonts.gstatic.com"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] fonts.gstatic.com",
                    "description": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.\n\nNachweis: https://saferpage.de/anbieter/blog.heise-academy.de\nGuide: https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-6a749c2384229a433bfaf62b",
            "ticket_id": "mapping_vendor_prophet.heise-academy.de",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[blog.heise-academy.de] prophet.heise-academy.de",
            "description": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.",
            "idempotency_key": "sp-fix-6a749c2384229a433bfaf62b",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-6a749c2384229a433bfaf62b",
                "X-SaferPage-Body-SHA256": "95d891e26affc4d359312d67cd4bf1cd0982a5c4c3101d46933bbbca71b0a15d",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "mapping_vendor_prophet.heise-academy.de",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "prophet.heise-academy.de",
                "evidence": "Sonstige",
                "action": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren",
                    "evidence": "https://saferpage.de/anbieter/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"mapping_vendor_prophet.heise-academy.de\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"prophet.heise-academy.de\",\"evidence\":\"Sonstige\",\"action\":\"Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\",\"evidence\":\"https://saferpage.de/anbieter/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "95d891e26affc4d359312d67cd4bf1cd0982a5c4c3101d46933bbbca71b0a15d",
            "slack_payload": {
                "text": "[MITTEL] blog.heise-academy.de: prophet.heise-academy.de",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*prophet.heise-academy.de*\nZweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Marketing/IT/Datenschutz · SLA: 30 Tage · https://saferpage.de/anbieter/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] blog.heise-academy.de: prophet.heise-academy.de",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "prophet.heise-academy.de"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] prophet.heise-academy.de",
                    "description": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.\n\nNachweis: https://saferpage.de/anbieter/blog.heise-academy.de\nGuide: https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-baeb76cd4d64ddf59f18d7cb",
            "ticket_id": "mapping_request_prophet.heise-academy.de",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[blog.heise-academy.de] prophet.heise-academy.de",
            "description": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.",
            "idempotency_key": "sp-fix-baeb76cd4d64ddf59f18d7cb",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-baeb76cd4d64ddf59f18d7cb",
                "X-SaferPage-Body-SHA256": "a4b34ba8b1b44083160d1a89e782bbd224a14f29d6fe842ad2cfd4990540ccf8",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "mapping_request_prophet.heise-academy.de",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "prophet.heise-academy.de",
                "evidence": "other",
                "action": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen",
                    "evidence": "https://saferpage.de/anbieter/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"mapping_request_prophet.heise-academy.de\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"prophet.heise-academy.de\",\"evidence\":\"other\",\"action\":\"Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen\",\"evidence\":\"https://saferpage.de/anbieter/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "a4b34ba8b1b44083160d1a89e782bbd224a14f29d6fe842ad2cfd4990540ccf8",
            "slack_payload": {
                "text": "[MITTEL] blog.heise-academy.de: prophet.heise-academy.de",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*prophet.heise-academy.de*\nRequest einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Marketing/IT/Datenschutz · SLA: 30 Tage · https://saferpage.de/anbieter/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] blog.heise-academy.de: prophet.heise-academy.de",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "prophet.heise-academy.de"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] prophet.heise-academy.de",
                    "description": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.\n\nNachweis: https://saferpage.de/anbieter/blog.heise-academy.de\nGuide: https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-8f15d2fc284a7f3c8762cbed",
            "ticket_id": "mapping_vendor_responder.wt.heise.de",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[blog.heise-academy.de] responder.wt.heise.de",
            "description": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.",
            "idempotency_key": "sp-fix-8f15d2fc284a7f3c8762cbed",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-8f15d2fc284a7f3c8762cbed",
                "X-SaferPage-Body-SHA256": "e4dea37cc50fac72029a8df1d078f838bbeec815d90ddde28ef79dafff119be4",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "mapping_vendor_responder.wt.heise.de",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "responder.wt.heise.de",
                "evidence": "Sonstige",
                "action": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren",
                    "evidence": "https://saferpage.de/anbieter/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"mapping_vendor_responder.wt.heise.de\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"responder.wt.heise.de\",\"evidence\":\"Sonstige\",\"action\":\"Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\",\"evidence\":\"https://saferpage.de/anbieter/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "e4dea37cc50fac72029a8df1d078f838bbeec815d90ddde28ef79dafff119be4",
            "slack_payload": {
                "text": "[MITTEL] blog.heise-academy.de: responder.wt.heise.de",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*responder.wt.heise.de*\nZweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Marketing/IT/Datenschutz · SLA: 30 Tage · https://saferpage.de/anbieter/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] blog.heise-academy.de: responder.wt.heise.de",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "responder.wt.heise.de"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] responder.wt.heise.de",
                    "description": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.\n\nNachweis: https://saferpage.de/anbieter/blog.heise-academy.de\nGuide: https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-99a116e6e4b62ae6eb5d66c9",
            "ticket_id": "mapping_request_responder.wt.heise.de",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[blog.heise-academy.de] responder.wt.heise.de",
            "description": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.",
            "idempotency_key": "sp-fix-99a116e6e4b62ae6eb5d66c9",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-99a116e6e4b62ae6eb5d66c9",
                "X-SaferPage-Body-SHA256": "72ed47bd74dd199419c92c6042b01918d76a2b60653fdaad6ad52daca88a8302",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "mapping_request_responder.wt.heise.de",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "responder.wt.heise.de",
                "evidence": "other",
                "action": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen",
                    "evidence": "https://saferpage.de/anbieter/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"mapping_request_responder.wt.heise.de\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"responder.wt.heise.de\",\"evidence\":\"other\",\"action\":\"Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen\",\"evidence\":\"https://saferpage.de/anbieter/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "72ed47bd74dd199419c92c6042b01918d76a2b60653fdaad6ad52daca88a8302",
            "slack_payload": {
                "text": "[MITTEL] blog.heise-academy.de: responder.wt.heise.de",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*responder.wt.heise.de*\nRequest einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Marketing/IT/Datenschutz · SLA: 30 Tage · https://saferpage.de/anbieter/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] blog.heise-academy.de: responder.wt.heise.de",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "responder.wt.heise.de"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] responder.wt.heise.de",
                    "description": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.\n\nNachweis: https://saferpage.de/anbieter/blog.heise-academy.de\nGuide: https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-c51a7d30087577d6def295f9",
            "ticket_id": "mapping_vendor_static.addtoany.com",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[blog.heise-academy.de] static.addtoany.com",
            "description": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.",
            "idempotency_key": "sp-fix-c51a7d30087577d6def295f9",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-c51a7d30087577d6def295f9",
                "X-SaferPage-Body-SHA256": "84e5a5fe1870ec95fb4c09847693d075d75324db177f29a912705784a6b8ee51",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "mapping_vendor_static.addtoany.com",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "static.addtoany.com",
                "evidence": "Sonstige",
                "action": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren",
                    "evidence": "https://saferpage.de/anbieter/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"mapping_vendor_static.addtoany.com\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"static.addtoany.com\",\"evidence\":\"Sonstige\",\"action\":\"Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\",\"evidence\":\"https://saferpage.de/anbieter/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "84e5a5fe1870ec95fb4c09847693d075d75324db177f29a912705784a6b8ee51",
            "slack_payload": {
                "text": "[MITTEL] blog.heise-academy.de: static.addtoany.com",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*static.addtoany.com*\nZweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Marketing/IT/Datenschutz · SLA: 30 Tage · https://saferpage.de/anbieter/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] blog.heise-academy.de: static.addtoany.com",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "static.addtoany.com"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] static.addtoany.com",
                    "description": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.\n\nNachweis: https://saferpage.de/anbieter/blog.heise-academy.de\nGuide: https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-a5ce59fcb3d4ca108c268f1b",
            "ticket_id": "mapping_request_static.addtoany.com",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[blog.heise-academy.de] static.addtoany.com",
            "description": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.",
            "idempotency_key": "sp-fix-a5ce59fcb3d4ca108c268f1b",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-a5ce59fcb3d4ca108c268f1b",
                "X-SaferPage-Body-SHA256": "0acb267021cce9701ee8ec6c06cf4194bdeb0b4514b13e5878fa863b30bebc57",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "mapping_request_static.addtoany.com",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "static.addtoany.com",
                "evidence": "other",
                "action": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen",
                    "evidence": "https://saferpage.de/anbieter/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"mapping_request_static.addtoany.com\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"static.addtoany.com\",\"evidence\":\"other\",\"action\":\"Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen\",\"evidence\":\"https://saferpage.de/anbieter/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "0acb267021cce9701ee8ec6c06cf4194bdeb0b4514b13e5878fa863b30bebc57",
            "slack_payload": {
                "text": "[MITTEL] blog.heise-academy.de: static.addtoany.com",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*static.addtoany.com*\nRequest einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Marketing/IT/Datenschutz · SLA: 30 Tage · https://saferpage.de/anbieter/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] blog.heise-academy.de: static.addtoany.com",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "static.addtoany.com"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] static.addtoany.com",
                    "description": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.\n\nNachweis: https://saferpage.de/anbieter/blog.heise-academy.de\nGuide: https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-32ec10cbec3350595225e45b",
            "ticket_id": "mapping_cookie_wp-dark-mode-device",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[blog.heise-academy.de] wp-dark-mode-device",
            "description": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.",
            "idempotency_key": "sp-fix-32ec10cbec3350595225e45b",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-32ec10cbec3350595225e45b",
                "X-SaferPage-Body-SHA256": "346396d5efa861a3e80a1c3be7c9194b92beb484a24498eb7fd0a3bb4e82b5e9",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "mapping_cookie_wp-dark-mode-device",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "wp-dark-mode-device",
                "evidence": "blog.heise-academy.de",
                "action": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen",
                    "evidence": "https://saferpage.de/cookies/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"mapping_cookie_wp-dark-mode-device\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"wp-dark-mode-device\",\"evidence\":\"blog.heise-academy.de\",\"action\":\"Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen\",\"evidence\":\"https://saferpage.de/cookies/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "346396d5efa861a3e80a1c3be7c9194b92beb484a24498eb7fd0a3bb4e82b5e9",
            "slack_payload": {
                "text": "[MITTEL] blog.heise-academy.de: wp-dark-mode-device",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*wp-dark-mode-device*\nZweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Marketing/IT/Datenschutz · SLA: 30 Tage · https://saferpage.de/cookies/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] blog.heise-academy.de: wp-dark-mode-device",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "wp-dark-mode-device"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] wp-dark-mode-device",
                    "description": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.\n\nNachweis: https://saferpage.de/cookies/blog.heise-academy.de\nGuide: https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-d1d070349db85c1845ee2628",
            "ticket_id": "mapping_cookie_wt_rla",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[blog.heise-academy.de] wt_rla",
            "description": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.",
            "idempotency_key": "sp-fix-d1d070349db85c1845ee2628",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-d1d070349db85c1845ee2628",
                "X-SaferPage-Body-SHA256": "0f319e0cc5e00ccbe89e5db23d423781f7ea615c7dbe125a977782c0a82aaa63",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "mapping_cookie_wt_rla",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "wt_rla",
                "evidence": "heise-academy.de",
                "action": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen",
                    "evidence": "https://saferpage.de/cookies/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"mapping_cookie_wt_rla\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"wt_rla\",\"evidence\":\"heise-academy.de\",\"action\":\"Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen\",\"evidence\":\"https://saferpage.de/cookies/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "0f319e0cc5e00ccbe89e5db23d423781f7ea615c7dbe125a977782c0a82aaa63",
            "slack_payload": {
                "text": "[MITTEL] blog.heise-academy.de: wt_rla",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*wt_rla*\nZweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Marketing/IT/Datenschutz · SLA: 30 Tage · https://saferpage.de/cookies/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] blog.heise-academy.de: wt_rla",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "wt_rla"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] wt_rla",
                    "description": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.\n\nNachweis: https://saferpage.de/cookies/blog.heise-academy.de\nGuide: https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-4fbbe633ef6b43a2235f3198",
            "ticket_id": "mapping_cookie_wteid_792100555808051",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[blog.heise-academy.de] wteid_792100555808051",
            "description": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.",
            "idempotency_key": "sp-fix-4fbbe633ef6b43a2235f3198",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-4fbbe633ef6b43a2235f3198",
                "X-SaferPage-Body-SHA256": "51b9eec29e06960de667841a0abe167fc088be7f29db006ba6f1ce7c8557b76a",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "mapping_cookie_wteid_792100555808051",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "wteid_792100555808051",
                "evidence": "heise-academy.de",
                "action": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen",
                    "evidence": "https://saferpage.de/cookies/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"mapping_cookie_wteid_792100555808051\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"wteid_792100555808051\",\"evidence\":\"heise-academy.de\",\"action\":\"Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen\",\"evidence\":\"https://saferpage.de/cookies/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "51b9eec29e06960de667841a0abe167fc088be7f29db006ba6f1ce7c8557b76a",
            "slack_payload": {
                "text": "[MITTEL] blog.heise-academy.de: wteid_792100555808051",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*wteid_792100555808051*\nZweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Marketing/IT/Datenschutz · SLA: 30 Tage · https://saferpage.de/cookies/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] blog.heise-academy.de: wteid_792100555808051",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "wteid_792100555808051"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] wteid_792100555808051",
                    "description": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.\n\nNachweis: https://saferpage.de/cookies/blog.heise-academy.de\nGuide: https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-70c2d1e5caaf9800f4761350",
            "ticket_id": "mapping_cookie_wtsid_792100555808051",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[blog.heise-academy.de] wtsid_792100555808051",
            "description": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.",
            "idempotency_key": "sp-fix-70c2d1e5caaf9800f4761350",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-70c2d1e5caaf9800f4761350",
                "X-SaferPage-Body-SHA256": "0480d2cf0023a863112f7e99170e45f271d939cf500d3a92e1d588018e2c39b6",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "mapping_cookie_wtsid_792100555808051",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "wtsid_792100555808051",
                "evidence": "heise-academy.de",
                "action": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen",
                    "evidence": "https://saferpage.de/cookies/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"mapping_cookie_wtsid_792100555808051\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"wtsid_792100555808051\",\"evidence\":\"heise-academy.de\",\"action\":\"Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen\",\"evidence\":\"https://saferpage.de/cookies/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "0480d2cf0023a863112f7e99170e45f271d939cf500d3a92e1d588018e2c39b6",
            "slack_payload": {
                "text": "[MITTEL] blog.heise-academy.de: wtsid_792100555808051",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*wtsid_792100555808051*\nZweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Marketing/IT/Datenschutz · SLA: 30 Tage · https://saferpage.de/cookies/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] blog.heise-academy.de: wtsid_792100555808051",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "wtsid_792100555808051"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] wtsid_792100555808051",
                    "description": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.\n\nNachweis: https://saferpage.de/cookies/blog.heise-academy.de\nGuide: https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-651f14179e6bf7289b83c2ee",
            "ticket_id": "remediation_unknown_vendor_jurisdiction",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[blog.heise-academy.de] Anbieter-Jurisdiktion nicht klar ableitbar",
            "description": "Unklare Drittanbieter in Anbieterinventar, AVV-Prozess und Datenschutzerklärung nachrecherchieren.",
            "idempotency_key": "sp-fix-651f14179e6bf7289b83c2ee",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-651f14179e6bf7289b83c2ee",
                "X-SaferPage-Body-SHA256": "433443acb58ad87790a4d4e54f5b11d20748785879a1a7a0754c53f915de30c2",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_unknown_vendor_jurisdiction",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Anbieter-Jurisdiktion nicht klar ableitbar",
                "evidence": "",
                "action": "Unklare Drittanbieter in Anbieterinventar, AVV-Prozess und Datenschutzerklärung nachrecherchieren.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/drittlandtransfer-und-anbieter-pruefen",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_unknown_vendor_jurisdiction\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Anbieter-Jurisdiktion nicht klar ableitbar\",\"evidence\":\"\",\"action\":\"Unklare Drittanbieter in Anbieterinventar, AVV-Prozess und Datenschutzerklärung nachrecherchieren.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/drittlandtransfer-und-anbieter-pruefen\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "433443acb58ad87790a4d4e54f5b11d20748785879a1a7a0754c53f915de30c2",
            "slack_payload": {
                "text": "[NIEDRIG] blog.heise-academy.de: Anbieter-Jurisdiktion nicht klar ableitbar",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Anbieter-Jurisdiktion nicht klar ableitbar*\nUnklare Drittanbieter in Anbieterinventar, AVV-Prozess und Datenschutzerklärung nachrecherchieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] blog.heise-academy.de: Anbieter-Jurisdiktion nicht klar ableitbar",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Anbieter-Jurisdiktion nicht klar ableitbar"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Unklare Drittanbieter in Anbieterinventar, AVV-Prozess und Datenschutzerklärung nachrecherchieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Anbieter-Jurisdiktion nicht klar ableitbar",
                    "description": "Unklare Drittanbieter in Anbieterinventar, AVV-Prozess und Datenschutzerklärung nachrecherchieren.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/drittlandtransfer-und-anbieter-pruefen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-42f4107e3a251e1a0515ac02",
            "ticket_id": "remediation_missing_cross_origin_embedder_policy",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[blog.heise-academy.de] Cross-Origin-Embedder-Policy fehlt",
            "description": "Header `cross-origin-embedder-policy` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-42f4107e3a251e1a0515ac02",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-42f4107e3a251e1a0515ac02",
                "X-SaferPage-Body-SHA256": "c182016493e01e496fd576d936de7d3b6cef7bd281c8781608e3e4f57c3d4315",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_missing_cross_origin_embedder_policy",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Cross-Origin-Embedder-Policy fehlt",
                "evidence": "",
                "action": "Header `cross-origin-embedder-policy` setzen und nach Deployment erneut prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_missing_cross_origin_embedder_policy\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Cross-Origin-Embedder-Policy fehlt\",\"evidence\":\"\",\"action\":\"Header `cross-origin-embedder-policy` setzen und nach Deployment erneut prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "c182016493e01e496fd576d936de7d3b6cef7bd281c8781608e3e4f57c3d4315",
            "slack_payload": {
                "text": "[NIEDRIG] blog.heise-academy.de: Cross-Origin-Embedder-Policy fehlt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Cross-Origin-Embedder-Policy fehlt*\nHeader `cross-origin-embedder-policy` setzen und nach Deployment erneut prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] blog.heise-academy.de: Cross-Origin-Embedder-Policy fehlt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Cross-Origin-Embedder-Policy fehlt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Header `cross-origin-embedder-policy` setzen und nach Deployment erneut prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Cross-Origin-Embedder-Policy fehlt",
                    "description": "Header `cross-origin-embedder-policy` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-fbf0751c312ae591876fb455",
            "ticket_id": "remediation_missing_cross_origin_opener_policy",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[blog.heise-academy.de] Cross-Origin-Opener-Policy fehlt",
            "description": "Header `cross-origin-opener-policy` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-fbf0751c312ae591876fb455",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-fbf0751c312ae591876fb455",
                "X-SaferPage-Body-SHA256": "685f6ba512d1d32dc850569bf9cc60251fce17b3c2120f5b81743b62fd1b2f8f",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_missing_cross_origin_opener_policy",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Cross-Origin-Opener-Policy fehlt",
                "evidence": "",
                "action": "Header `cross-origin-opener-policy` setzen und nach Deployment erneut prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_missing_cross_origin_opener_policy\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Cross-Origin-Opener-Policy fehlt\",\"evidence\":\"\",\"action\":\"Header `cross-origin-opener-policy` setzen und nach Deployment erneut prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "685f6ba512d1d32dc850569bf9cc60251fce17b3c2120f5b81743b62fd1b2f8f",
            "slack_payload": {
                "text": "[NIEDRIG] blog.heise-academy.de: Cross-Origin-Opener-Policy fehlt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Cross-Origin-Opener-Policy fehlt*\nHeader `cross-origin-opener-policy` setzen und nach Deployment erneut prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] blog.heise-academy.de: Cross-Origin-Opener-Policy fehlt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Cross-Origin-Opener-Policy fehlt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Header `cross-origin-opener-policy` setzen und nach Deployment erneut prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Cross-Origin-Opener-Policy fehlt",
                    "description": "Header `cross-origin-opener-policy` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-9f2ec3e38c8503fba50e2c21",
            "ticket_id": "remediation_missing_cross_origin_resource_policy",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[blog.heise-academy.de] Cross-Origin-Resource-Policy fehlt",
            "description": "Header `cross-origin-resource-policy` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-9f2ec3e38c8503fba50e2c21",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-9f2ec3e38c8503fba50e2c21",
                "X-SaferPage-Body-SHA256": "2d05a3e89173b367ff559b14c141a09726cc08f51d7784c586fb8296a8512992",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_missing_cross_origin_resource_policy",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Cross-Origin-Resource-Policy fehlt",
                "evidence": "",
                "action": "Header `cross-origin-resource-policy` setzen und nach Deployment erneut prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_missing_cross_origin_resource_policy\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Cross-Origin-Resource-Policy fehlt\",\"evidence\":\"\",\"action\":\"Header `cross-origin-resource-policy` setzen und nach Deployment erneut prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "2d05a3e89173b367ff559b14c141a09726cc08f51d7784c586fb8296a8512992",
            "slack_payload": {
                "text": "[NIEDRIG] blog.heise-academy.de: Cross-Origin-Resource-Policy fehlt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Cross-Origin-Resource-Policy fehlt*\nHeader `cross-origin-resource-policy` setzen und nach Deployment erneut prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] blog.heise-academy.de: Cross-Origin-Resource-Policy fehlt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Cross-Origin-Resource-Policy fehlt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Header `cross-origin-resource-policy` setzen und nach Deployment erneut prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Cross-Origin-Resource-Policy fehlt",
                    "description": "Header `cross-origin-resource-policy` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-1e0590f59009e0ad7b690cdb",
            "ticket_id": "remediation_external_script_without_sri",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[blog.heise-academy.de] Externe Skripte ohne Subresource Integrity",
            "description": "Für statische CDN-Skripte `integrity` und passend `crossorigin` setzen oder Skripte kontrolliert lokal ausliefern.",
            "idempotency_key": "sp-fix-1e0590f59009e0ad7b690cdb",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-1e0590f59009e0ad7b690cdb",
                "X-SaferPage-Body-SHA256": "f4ae14ec017e805a6b4a43f4c57f38cd4363e51fa52cef92de1d7040c9eba092",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_external_script_without_sri",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Externe Skripte ohne Subresource Integrity",
                "evidence": "",
                "action": "Für statische CDN-Skripte `integrity` und passend `crossorigin` setzen oder Skripte kontrolliert lokal ausliefern.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/externe-skripte-und-sri-absichern",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_external_script_without_sri\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Externe Skripte ohne Subresource Integrity\",\"evidence\":\"\",\"action\":\"Für statische CDN-Skripte `integrity` und passend `crossorigin` setzen oder Skripte kontrolliert lokal ausliefern.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/externe-skripte-und-sri-absichern\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "f4ae14ec017e805a6b4a43f4c57f38cd4363e51fa52cef92de1d7040c9eba092",
            "slack_payload": {
                "text": "[NIEDRIG] blog.heise-academy.de: Externe Skripte ohne Subresource Integrity",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Externe Skripte ohne Subresource Integrity*\nFür statische CDN-Skripte `integrity` und passend `crossorigin` setzen oder Skripte kontrolliert lokal ausliefern."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] blog.heise-academy.de: Externe Skripte ohne Subresource Integrity",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Externe Skripte ohne Subresource Integrity"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Für statische CDN-Skripte `integrity` und passend `crossorigin` setzen oder Skripte kontrolliert lokal ausliefern."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Externe Skripte ohne Subresource Integrity",
                    "description": "Für statische CDN-Skripte `integrity` und passend `crossorigin` setzen oder Skripte kontrolliert lokal ausliefern.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/externe-skripte-und-sri-absichern\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-95f9f213f44e876adf6cb2ee",
            "ticket_id": "remediation_long_lived_cookie",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[blog.heise-academy.de] Langlebige Cookies erkannt",
            "description": "Cookies wie wp-dark-mode-device auf Zweck, Erforderlichkeit und Speicherdauer prüfen und transparent erklären.",
            "idempotency_key": "sp-fix-95f9f213f44e876adf6cb2ee",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-95f9f213f44e876adf6cb2ee",
                "X-SaferPage-Body-SHA256": "11b7441159c4ba5ec1a74eb672ed5d13a1166efba6753bb6fc4c5eaaa45a661f",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_long_lived_cookie",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Langlebige Cookies erkannt",
                "evidence": "",
                "action": "Cookies wie wp-dark-mode-device auf Zweck, Erforderlichkeit und Speicherdauer prüfen und transparent erklären.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_long_lived_cookie\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Langlebige Cookies erkannt\",\"evidence\":\"\",\"action\":\"Cookies wie wp-dark-mode-device auf Zweck, Erforderlichkeit und Speicherdauer prüfen und transparent erklären.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "11b7441159c4ba5ec1a74eb672ed5d13a1166efba6753bb6fc4c5eaaa45a661f",
            "slack_payload": {
                "text": "[NIEDRIG] blog.heise-academy.de: Langlebige Cookies erkannt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Langlebige Cookies erkannt*\nCookies wie wp-dark-mode-device auf Zweck, Erforderlichkeit und Speicherdauer prüfen und transparent erklären."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] blog.heise-academy.de: Langlebige Cookies erkannt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Langlebige Cookies erkannt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Cookies wie wp-dark-mode-device auf Zweck, Erforderlichkeit und Speicherdauer prüfen und transparent erklären."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Langlebige Cookies erkannt",
                    "description": "Cookies wie wp-dark-mode-device auf Zweck, Erforderlichkeit und Speicherdauer prüfen und transparent erklären.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-03832380016bcb0aa9a4d0b9",
            "ticket_id": "remediation_missing_referrer_policy",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[blog.heise-academy.de] Referrer-Policy fehlt",
            "description": "Header `referrer-policy` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-03832380016bcb0aa9a4d0b9",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-03832380016bcb0aa9a4d0b9",
                "X-SaferPage-Body-SHA256": "339dae560b9b0108311351a414604e92d298d6043102880450ee966764dd3738",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_missing_referrer_policy",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Referrer-Policy fehlt",
                "evidence": "",
                "action": "Header `referrer-policy` setzen und nach Deployment erneut prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_missing_referrer_policy\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Referrer-Policy fehlt\",\"evidence\":\"\",\"action\":\"Header `referrer-policy` setzen und nach Deployment erneut prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "339dae560b9b0108311351a414604e92d298d6043102880450ee966764dd3738",
            "slack_payload": {
                "text": "[NIEDRIG] blog.heise-academy.de: Referrer-Policy fehlt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Referrer-Policy fehlt*\nHeader `referrer-policy` setzen und nach Deployment erneut prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] blog.heise-academy.de: Referrer-Policy fehlt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Referrer-Policy fehlt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Header `referrer-policy` setzen und nach Deployment erneut prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Referrer-Policy fehlt",
                    "description": "Header `referrer-policy` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-89fa41caba65e8ed63539633",
            "ticket_id": "remediation_remote_google_fonts_detected",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[blog.heise-academy.de] Remote-Schriften von Google erkannt",
            "description": "Prüfen, ob Google Fonts lokal gehostet oder in der Datenschutzerklärung und Consent-Logik sauber erklärt werden.",
            "idempotency_key": "sp-fix-89fa41caba65e8ed63539633",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-89fa41caba65e8ed63539633",
                "X-SaferPage-Body-SHA256": "721a036222b09d5c9f514c4c172a399ca44febd15f5e5cf049675df8ec879207",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_remote_google_fonts_detected",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Remote-Schriften von Google erkannt",
                "evidence": "",
                "action": "Prüfen, ob Google Fonts lokal gehostet oder in der Datenschutzerklärung und Consent-Logik sauber erklärt werden.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/google-dienste-datenschutzfreundlich-einbinden",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_remote_google_fonts_detected\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Remote-Schriften von Google erkannt\",\"evidence\":\"\",\"action\":\"Prüfen, ob Google Fonts lokal gehostet oder in der Datenschutzerklärung und Consent-Logik sauber erklärt werden.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/google-dienste-datenschutzfreundlich-einbinden\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "721a036222b09d5c9f514c4c172a399ca44febd15f5e5cf049675df8ec879207",
            "slack_payload": {
                "text": "[NIEDRIG] blog.heise-academy.de: Remote-Schriften von Google erkannt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Remote-Schriften von Google erkannt*\nPrüfen, ob Google Fonts lokal gehostet oder in der Datenschutzerklärung und Consent-Logik sauber erklärt werden."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] blog.heise-academy.de: Remote-Schriften von Google erkannt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Remote-Schriften von Google erkannt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Prüfen, ob Google Fonts lokal gehostet oder in der Datenschutzerklärung und Consent-Logik sauber erklärt werden."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Remote-Schriften von Google erkannt",
                    "description": "Prüfen, ob Google Fonts lokal gehostet oder in der Datenschutzerklärung und Consent-Logik sauber erklärt werden.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/google-dienste-datenschutzfreundlich-einbinden\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-16e81ebb7e46c14d169422a3",
            "ticket_id": "remediation_privacy_policy_update_date_missing",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[blog.heise-academy.de] Stand der Datenschutzerklärung nicht klar erkennbar",
            "description": "Ergänzen Sie ein gut sichtbares Stand- oder Aktualisierungsdatum und prüfen Sie die Erklärung nach technischen Änderungen.",
            "idempotency_key": "sp-fix-16e81ebb7e46c14d169422a3",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-16e81ebb7e46c14d169422a3",
                "X-SaferPage-Body-SHA256": "4d7bf0bec00600762a12308d03bd023e43e32f821ccf2d647cb8c6809960db65",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_privacy_policy_update_date_missing",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Stand der Datenschutzerklärung nicht klar erkennbar",
                "evidence": "",
                "action": "Ergänzen Sie ein gut sichtbares Stand- oder Aktualisierungsdatum und prüfen Sie die Erklärung nach technischen Änderungen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/datenschutzerklaerung-verbessern",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_privacy_policy_update_date_missing\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Stand der Datenschutzerklärung nicht klar erkennbar\",\"evidence\":\"\",\"action\":\"Ergänzen Sie ein gut sichtbares Stand- oder Aktualisierungsdatum und prüfen Sie die Erklärung nach technischen Änderungen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/datenschutzerklaerung-verbessern\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "4d7bf0bec00600762a12308d03bd023e43e32f821ccf2d647cb8c6809960db65",
            "slack_payload": {
                "text": "[NIEDRIG] blog.heise-academy.de: Stand der Datenschutzerklärung nicht klar erkennbar",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Stand der Datenschutzerklärung nicht klar erkennbar*\nErgänzen Sie ein gut sichtbares Stand- oder Aktualisierungsdatum und prüfen Sie die Erklärung nach technischen Änderungen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] blog.heise-academy.de: Stand der Datenschutzerklärung nicht klar erkennbar",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Stand der Datenschutzerklärung nicht klar erkennbar"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Ergänzen Sie ein gut sichtbares Stand- oder Aktualisierungsdatum und prüfen Sie die Erklärung nach technischen Änderungen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Stand der Datenschutzerklärung nicht klar erkennbar",
                    "description": "Ergänzen Sie ein gut sichtbares Stand- oder Aktualisierungsdatum und prüfen Sie die Erklärung nach technischen Änderungen.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/datenschutzerklaerung-verbessern\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-67a4e260bb4e9aaaa08519da",
            "ticket_id": "remediation_tracking_pixel_detected",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[blog.heise-academy.de] Tracking-Pixel oder pixelnahe Requests erkannt",
            "description": "Pixel von prophet.heise-academy.de erst nach Einwilligung laden, Zweck erklären und unnötige Bild-Tracker entfernen.",
            "idempotency_key": "sp-fix-67a4e260bb4e9aaaa08519da",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-67a4e260bb4e9aaaa08519da",
                "X-SaferPage-Body-SHA256": "ca2f79939ee8268b49545bddb8303cd36ec2da4f408232d50e4eb1619dac9fca",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_tracking_pixel_detected",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Tracking-Pixel oder pixelnahe Requests erkannt",
                "evidence": "",
                "action": "Pixel von prophet.heise-academy.de erst nach Einwilligung laden, Zweck erklären und unnötige Bild-Tracker entfernen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/tracking-pixel-und-beacons-begrenzen",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_tracking_pixel_detected\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Tracking-Pixel oder pixelnahe Requests erkannt\",\"evidence\":\"\",\"action\":\"Pixel von prophet.heise-academy.de erst nach Einwilligung laden, Zweck erklären und unnötige Bild-Tracker entfernen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/tracking-pixel-und-beacons-begrenzen\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "ca2f79939ee8268b49545bddb8303cd36ec2da4f408232d50e4eb1619dac9fca",
            "slack_payload": {
                "text": "[NIEDRIG] blog.heise-academy.de: Tracking-Pixel oder pixelnahe Requests erkannt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Tracking-Pixel oder pixelnahe Requests erkannt*\nPixel von prophet.heise-academy.de erst nach Einwilligung laden, Zweck erklären und unnötige Bild-Tracker entfernen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] blog.heise-academy.de: Tracking-Pixel oder pixelnahe Requests erkannt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Tracking-Pixel oder pixelnahe Requests erkannt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Pixel von prophet.heise-academy.de erst nach Einwilligung laden, Zweck erklären und unnötige Bild-Tracker entfernen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Tracking-Pixel oder pixelnahe Requests erkannt",
                    "description": "Pixel von prophet.heise-academy.de erst nach Einwilligung laden, Zweck erklären und unnötige Bild-Tracker entfernen.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/tracking-pixel-und-beacons-begrenzen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-e79ca365c1bbe8e8463817b0",
            "ticket_id": "remediation_browser_keystroke_listener_signals",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[blog.heise-academy.de] Viele Tastatur-/Eingabe-Listener im Browser erkannt",
            "description": "Prüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen.",
            "idempotency_key": "sp-fix-e79ca365c1bbe8e8463817b0",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-e79ca365c1bbe8e8463817b0",
                "X-SaferPage-Body-SHA256": "251bcd441fdaf275d21de122b6b40ff5555719c48e1b9c1b2fe50037f5c4ff91",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_browser_keystroke_listener_signals",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Viele Tastatur-/Eingabe-Listener im Browser erkannt",
                "evidence": "",
                "action": "Prüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/session-replay-und-fingerprinting-pruefen",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_browser_keystroke_listener_signals\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Viele Tastatur-/Eingabe-Listener im Browser erkannt\",\"evidence\":\"\",\"action\":\"Prüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/session-replay-und-fingerprinting-pruefen\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "251bcd441fdaf275d21de122b6b40ff5555719c48e1b9c1b2fe50037f5c4ff91",
            "slack_payload": {
                "text": "[NIEDRIG] blog.heise-academy.de: Viele Tastatur-/Eingabe-Listener im Browser erkannt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Viele Tastatur-/Eingabe-Listener im Browser erkannt*\nPrüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] blog.heise-academy.de: Viele Tastatur-/Eingabe-Listener im Browser erkannt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Viele Tastatur-/Eingabe-Listener im Browser erkannt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Prüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Viele Tastatur-/Eingabe-Listener im Browser erkannt",
                    "description": "Prüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/session-replay-und-fingerprinting-pruefen\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-55de5f22d89f531bdb1defc1",
            "ticket_id": "remediation_too_many_render_blocking_assets",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[blog.heise-academy.de] Viele potenziell blockierende Assets",
            "description": "Skripte/CSS bündeln, defer/async nutzen und kritisches CSS priorisieren.",
            "idempotency_key": "sp-fix-55de5f22d89f531bdb1defc1",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-55de5f22d89f531bdb1defc1",
                "X-SaferPage-Body-SHA256": "c36b4e162df935d02fee3dc1dc811eeedda41669137b5b1d315f3338ed9d42a9",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "blog.heise-academy.de",
                "scan_id": "a2285902-1d3e-4bc9-8026-bf96e0684e27",
                "ticket_id": "remediation_too_many_render_blocking_assets",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Viele potenziell blockierende Assets",
                "evidence": "",
                "action": "Skripte/CSS bündeln, defer/async nutzen und kritisches CSS priorisieren.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/performance-und-mobile-usability-verbessern",
                    "evidence": "https://saferpage.de/befunde/blog.heise-academy.de",
                    "rescan": "https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "report": "https://saferpage.de/blog.heise-academy.de",
                    "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"blog.heise-academy.de\",\"scan_id\":\"a2285902-1d3e-4bc9-8026-bf96e0684e27\",\"ticket_id\":\"remediation_too_many_render_blocking_assets\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Viele potenziell blockierende Assets\",\"evidence\":\"\",\"action\":\"Skripte/CSS bündeln, defer/async nutzen und kritisches CSS priorisieren.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/performance-und-mobile-usability-verbessern\",\"evidence\":\"https://saferpage.de/befunde/blog.heise-academy.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/blog.heise-academy.de\",\"report\":\"https://saferpage.de/blog.heise-academy.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/blog.heise-academy.de\"}}",
            "canonical_body_sha256": "c36b4e162df935d02fee3dc1dc811eeedda41669137b5b1d315f3338ed9d42a9",
            "slack_payload": {
                "text": "[NIEDRIG] blog.heise-academy.de: Viele potenziell blockierende Assets",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Viele potenziell blockierende Assets*\nSkripte/CSS bündeln, defer/async nutzen und kritisches CSS priorisieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/blog.heise-academy.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] blog.heise-academy.de: Viele potenziell blockierende Assets",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Viele potenziell blockierende Assets"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Skripte/CSS bündeln, defer/async nutzen und kritisches CSS priorisieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "blog.heise-academy.de"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[blog.heise-academy.de] Viele potenziell blockierende Assets",
                    "description": "Skripte/CSS bündeln, defer/async nutzen und kritisches CSS priorisieren.\n\nNachweis: https://saferpage.de/befunde/blog.heise-academy.de\nGuide: https://saferpage.de/guides/performance-und-mobile-usability-verbessern\nRe-Scan: https://saferpage.de/scanbetrieb/blog.heise-academy.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        }
    ],
    "links": {
        "fix_guides": "https://saferpage.de/fix-guides/blog.heise-academy.de",
        "tickets_json": "https://saferpage.de/fix-guides/blog.heise-academy.de/tickets-json",
        "json": "https://saferpage.de/fix-guides/blog.heise-academy.de/tickets-delivery-json",
        "csv": "https://saferpage.de/fix-guides/blog.heise-academy.de/tickets-delivery-csv"
    },
    "disclaimer": "Payload-Vorlagen ohne aktive Zustellung und ohne echte Secrets. Betreiber muessen Zielsysteme, Authentifizierung, HMAC-Secret, Projekte, Empfaenger und Freigaben selbst konfigurieren."
}
