<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"><url><loc>https://secembed.uk/</loc></url><url><loc>https://secembed.uk/archive/</loc></url><url><loc>https://secembed.uk/blog/api-authorization-every-object/</loc></url><url><loc>https://secembed.uk/blog/secrets-before-git/</loc></url><url><loc>https://secembed.uk/blog/oauth-security-baseline/</loc></url><url><loc>https://secembed.uk/blog/presigned-urls-are-bearer-access/</loc></url><url><loc>https://secembed.uk/blog/kubernetes-restricted-by-default/</loc></url><url><loc>https://secembed.uk/blog/strict-csp-without-guesswork/</loc></url><url><loc>https://secembed.uk/blog/graphql-cost-and-authorization/</loc></url><url><loc>https://secembed.uk/blog/webhooks-signature-replay-idempotency/</loc></url><url><loc>https://secembed.uk/blog/passkeys-phishing-resistant-login/</loc></url><url><loc>https://secembed.uk/blog/sbom-as-operational-map/</loc></url><url><loc>https://secembed.uk/blog/business-logic-needs-adversarial-stories/</loc></url><url><loc>https://secembed.uk/blog/ssrf-is-an-egress-problem/</loc></url><url><loc>https://secembed.uk/blog/jwt-validation-is-a-contract/</loc></url><url><loc>https://secembed.uk/blog/api-inventory-that-can-retire-things/</loc></url><url><loc>https://secembed.uk/blog/resource-budgets-are-security-controls/</loc></url><url><loc>https://secembed.uk/blog/threat-modeling-before-the-backlog/</loc></url><url><loc>https://secembed.uk/blog/vulnerability-disclosure-is-a-product-interface/</loc></url><url><loc>https://secembed.uk/blog/security-headers-as-a-browser-contract/</loc></url><url><loc>https://secembed.uk/blog/review-dependencies-at-the-diff/</loc></url><url><loc>https://secembed.uk/blog/zero-trust-is-not-a-network-zone/</loc></url></urlset>