[{"data":1,"prerenderedAt":1347},["ShallowReactive",2],{"blog-category-en-security":3},[4,80,151,209,252,357,439,523,597,658,705,765,819,873,929,976,1026,1078,1172,1207,1271],{"slug":5,"published":6,"minutes":7,"category":8,"tags":9,"tagPages":15,"keywords":18,"about":31,"sources":39,"cover":70,"og":71,"expertise":72,"locales":73,"lang":74,"title":77,"description":78,"coverAlt":79},"llm-output-guardrails-moderation","2026-10-17",13,"security",[10,11,12,13,14],"LLM security","Guardrails","Content moderation","OWASP","Output validation",[16,17],"llm-security","guardrails",[19,20,21,22,23,24,25,26,27,28,29,30],"llm output guardrails","improper output handling llm","owasp llm05","openai moderation api","omni-moderation-latest","llama guard 4","nemo guardrails streaming","markdown image exfiltration","sanitize llm output html","groundedness detection","llm content moderation production","output rails",[32,34,37],{"name":12,"url":33},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FContent_moderation",{"name":35,"url":36},"Cross-site scripting","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FCross-site_scripting",{"name":13,"url":38},"https:\u002F\u002Fowasp.org\u002F",[40,43,46,49,52,55,58,61,64,67],{"title":41,"url":42},"OWASP GenAI Security Project: LLM05:2025 Improper Output Handling","https:\u002F\u002Fgenai.owasp.org\u002Fllmrisk\u002Fllm052025-improper-output-handling\u002F",{"title":44,"url":45},"OpenAI API Docs: Moderation","https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fguides\u002Fmoderation",{"title":47,"url":48},"Meta: Llama Guard 4 model card and prompt formats","https:\u002F\u002Fwww.llama.com\u002Fdocs\u002Fmodel-cards-and-prompt-formats\u002Fllama-guard-4\u002F",{"title":50,"url":51},"NVIDIA NeMo Guardrails: Output rail streaming configuration","https:\u002F\u002Fdocs.nvidia.com\u002Fnemo\u002Fguardrails\u002Fconfigure-guardrails\u002Fyaml-schema\u002Fstreaming\u002Foutput-rail-streaming.md",{"title":53,"url":54},"Microsoft Learn: Prompt Shields in Azure AI Content Safety","https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fazure\u002Fai-services\u002Fcontent-safety\u002Fconcepts\u002Fjailbreak-detection",{"title":56,"url":57},"Microsoft Learn: Groundedness detection in Azure AI Content Safety","https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fazure\u002Fai-services\u002Fcontent-safety\u002Fconcepts\u002Fgroundedness",{"title":59,"url":60},"Microsoft Learn: Protected material detection in Azure AI Content Safety","https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fazure\u002Fai-services\u002Fcontent-safety\u002Fconcepts\u002Fprotected-material",{"title":62,"url":63},"Guardrails AI documentation","https:\u002F\u002Fwww.guardrailsai.com\u002Fdocs",{"title":65,"url":66},"Vue.js docs: Security best practices","https:\u002F\u002Fvuejs.org\u002Fguide\u002Fbest-practices\u002Fsecurity.html",{"title":68,"url":69},"Simon Willison: Remote prompt injection in GitLab Duo leads to source code theft","https:\u002F\u002Fsimonwillison.net\u002F2025\u002FMay\u002F23\u002Fremote-prompt-injection-in-gitlab-duo\u002F","\u002Fimages\u002Fblog\u002Fllm-output-guardrails-moderation\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fllm-output-guardrails-moderation\u002Fog.jpg","ai-engineer",[74,75,76],"en","de","hu","LLM output guardrails: moderation, safe rendering and validation before anything acts","What to check after the model answers: safe Markdown rendering, schema checks before actions, moderation classifiers, streaming rails and groundedness.","LLM output guardrails: water from a tap runs through a filter jug into a clean glass, pebbles caught at the top.",{"slug":81,"published":6,"minutes":82,"category":8,"tags":83,"tagPages":87,"keywords":88,"about":100,"sources":108,"cover":145,"og":146,"expertise":72,"locales":147,"lang":74,"title":148,"description":149,"coverAlt":150},"ai-red-teaming-checklist-llm-apps",12,[84,10,13,85,86],"AI red teaming","promptfoo","Penetration testing",[16],[89,90,91,92,93,94,95,96,97,98,99],"ai red teaming checklist","llm red teaming","red teaming llm applications","owasp genai red teaming guide","promptfoo red team","garak llm scanner","pyrit red teaming","llm penetration testing","owasp top 10 llm 2025 testing","jailbreak testing llm app","red team rag chatbot",[101,104,107],{"name":102,"url":103},"Red team","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FRed_team",{"name":105,"url":106},"Prompt injection","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPrompt_injection",{"name":13,"url":38},[109,112,115,118,121,124,127,130,133,136,139,142],{"title":110,"url":111},"OWASP GenAI Security Project: GenAI Red Teaming Guide (January 2025)","https:\u002F\u002Fgenai.owasp.org\u002Fresource\u002Fgenai-red-teaming-guide\u002F",{"title":113,"url":114},"OWASP GenAI Security Project: Top 10 for LLM Applications 2025","https:\u002F\u002Fgenai.owasp.org\u002Fllm-top-10\u002F",{"title":116,"url":117},"Bullwinkel et al. (Microsoft): Lessons From Red Teaming 100 Generative AI Products (2025)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2501.07238",{"title":119,"url":120},"NIST AI 600-1: Generative Artificial Intelligence Profile (July 2024)","https:\u002F\u002Fnvlpubs.nist.gov\u002Fnistpubs\u002Fai\u002FNIST.AI.600-1.pdf",{"title":122,"url":123},"Promptfoo Docs: Red team quickstart","https:\u002F\u002Fwww.promptfoo.dev\u002Fdocs\u002Fred-team\u002Fquickstart\u002F",{"title":125,"url":126},"Promptfoo Docs: Red team configuration","https:\u002F\u002Fwww.promptfoo.dev\u002Fdocs\u002Fred-team\u002Fconfiguration\u002F",{"title":128,"url":129},"Promptfoo Docs: Red team plugins","https:\u002F\u002Fwww.promptfoo.dev\u002Fdocs\u002Fred-team\u002Fplugins\u002F",{"title":131,"url":132},"Promptfoo Docs: Red team strategies","https:\u002F\u002Fwww.promptfoo.dev\u002Fdocs\u002Fred-team\u002Fstrategies\u002F",{"title":134,"url":135},"NVIDIA garak: LLM vulnerability scanner (GitHub)","https:\u002F\u002Fgithub.com\u002FNVIDIA\u002Fgarak",{"title":137,"url":138},"Microsoft PyRIT documentation","https:\u002F\u002Fmicrosoft.github.io\u002FPyRIT\u002F",{"title":140,"url":141},"EU AI Act, Article 55: Obligations for providers of GPAI models with systemic risk","https:\u002F\u002Fartificialintelligenceact.eu\u002Farticle\u002F55\u002F",{"title":143,"url":144},"OWASP GenAI LLM Top 10 2026: final entries (GitHub)","https:\u002F\u002Fgithub.com\u002FGenAI-Security-Project\u002FGenAI-LLM-Top10\u002Ftree\u002Fmain\u002F2026\u002Ffinal","\u002Fimages\u002Fblog\u002Fai-red-teaming-checklist-llm-apps\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fai-red-teaming-checklist-llm-apps\u002Fog.jpg",[74,75,76],"AI red teaming checklist for LLM apps: what to attack before your users do","A practical red teaming checklist for LLM features: scope, OWASP 2025 test cases, promptfoo, garak and PyRIT, human testers and regression tests.","LLM app red teaming: a person in a helmet with a checklist stands before a castle gate, a battering ram nearby.",{"slug":152,"published":153,"minutes":154,"category":8,"tags":155,"tagPages":161,"keywords":163,"about":174,"sources":184,"cover":203,"og":204,"expertise":72,"locales":205,"lang":74,"title":206,"description":207,"coverAlt":208},"slopsquatting-ai-package-hallucinations","2026-10-16",6,[156,157,158,159,160],"Supply chain security","Coding agents","npm","PyPI","Package hallucination",[162],"coding-agents",[164,165,166,167,168,169,170,171,172,173],"slopsquatting","package hallucination","ai hallucinated packages","llm package confusion attack","coding agent supply chain security","npm min-release-age","pnpm minimumReleaseAge","uv exclude-newer","npm ignore-scripts","huggingface-cli hallucinated package",[175,178,181],{"name":176,"url":177},"Typosquatting","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FTyposquatting",{"name":179,"url":180},"Supply chain attack","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FSupply_chain_attack",{"name":182,"url":183},"Hallucination (artificial intelligence)","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FHallucination_(artificial_intelligence)",[185,188,191,194,197,200],{"title":186,"url":187},"Spracklen et al.: We Have a Package for You! A Comprehensive Analysis of Package Hallucinations by Code Generating LLMs (2024)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2406.10279",{"title":189,"url":190},"Lasso Security, Bar Lanyado: Diving Deeper into AI Package Hallucinations (Mar 2024)","https:\u002F\u002Fwww.lasso.security\u002Fblog\u002Fai-package-hallucinations",{"title":192,"url":193},"npm Docs: config (min-release-age, before, ignore-scripts, allow-scripts)","https:\u002F\u002Fdocs.npmjs.com\u002Fcli\u002Fv11\u002Fusing-npm\u002Fconfig",{"title":195,"url":196},"pnpm: Dependency resolution settings (minimumReleaseAge)","https:\u002F\u002Fpnpm.io\u002Fsettings\u002Fdependency-resolution",{"title":198,"url":199},"uv: Settings reference (exclude-newer, require-hashes)","https:\u002F\u002Fdocs.astral.sh\u002Fuv\u002Freference\u002Fsettings\u002F",{"title":201,"url":202},"pip documentation: Secure installs and hash-checking mode","https:\u002F\u002Fpip.pypa.io\u002Fen\u002Fstable\u002Ftopics\u002Fsecure-installs\u002F","\u002Fimages\u002Fblog\u002Fslopsquatting-ai-package-hallucinations\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fslopsquatting-ai-package-hallucinations\u002Fog.jpg",[74,75,76],"Slopsquatting: when coding agents install packages that do not exist","How LLMs hallucinate package names, how attackers register them, and the registry, lockfile and agent-harness controls that stop the install.","Slopsquatting: a robot reaches for a hollow parcel with a hook, a real parcel on the shelf behind.",{"slug":210,"published":153,"minutes":154,"category":8,"tags":211,"tagPages":215,"keywords":216,"about":227,"sources":233,"cover":246,"og":247,"expertise":72,"locales":248,"lang":74,"title":249,"description":250,"coverAlt":251},"rag-poisoning-knowledge-base-attacks",[212,213,105,13,214],"RAG security","Data poisoning","Vector database",[],[217,218,219,220,221,222,223,224,225,226],"rag poisoning","knowledge base poisoning","poisonedrag","rag security","indirect prompt injection rag","owasp llm08 vector and embedding weaknesses","vector database security","rag data poisoning defense","hidden text prompt injection","secure rag ingestion",[228,231,232],{"name":229,"url":230},"Retrieval-augmented generation","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FRetrieval-augmented_generation",{"name":105,"url":106},{"name":13,"url":38},[234,237,240,243],{"title":235,"url":236},"Zou et al.: PoisonedRAG: Knowledge Corruption Attacks to Retrieval-Augmented Generation of Large Language Models (2024)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2402.07867",{"title":238,"url":239},"Greshake et al.: Not what you've signed up for: Compromising Real-World LLM-Integrated Applications with Indirect Prompt Injection (2023)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2302.12173",{"title":241,"url":242},"OWASP Gen AI Security Project: LLM08:2025 Vector and Embedding Weaknesses","https:\u002F\u002Fgenai.owasp.org\u002Fllmrisk\u002Fllm082025-vector-and-embedding-weaknesses\u002F",{"title":244,"url":245},"OWASP Gen AI Security Project: LLM04:2025 Data and Model Poisoning","https:\u002F\u002Fgenai.owasp.org\u002Fllmrisk\u002Fllm042025-data-and-model-poisoning\u002F","\u002Fimages\u002Fblog\u002Frag-poisoning-knowledge-base-attacks\u002Fcover.webp","\u002Fimages\u002Fblog\u002Frag-poisoning-knowledge-base-attacks\u002Fog.jpg",[74,75,76],"RAG poisoning: how a few documents can steer your assistant, and how to defend the knowledge base","How attackers plant documents that RAG systems retrieve, what PoisonedRAG and OWASP show, and the ingestion, retrieval and answer controls that limit it.","RAG knowledge base poisoning: a hand covers a well while a small bottle drips toward it.",{"slug":253,"published":254,"minutes":255,"category":8,"tags":256,"tagPages":262,"keywords":265,"about":274,"sources":284,"cover":351,"og":352,"expertise":72,"locales":353,"lang":74,"title":354,"description":355,"coverAlt":356},"coding-agent-secrets-hygiene","2026-10-08",11,[257,258,259,260,261],"AI agents","Secrets management","Claude Code","Pre-commit scanning","CI security",[263,264],"ai-agents","claude-code",[266,267,268,269,270,271,272,273],"coding agent secrets","keep secrets away from AI agents","Claude Code deny read .env","gitleaks pre-commit hook","GitHub push protection secrets","OIDC GitHub Actions short-lived credentials","rotate a leaked API key","MCP server token scope",[275,278,281],{"name":276,"url":277},"Principle of least privilege","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPrinciple_of_least_privilege",{"name":279,"url":280},"Model Context Protocol","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FModel_Context_Protocol",{"name":282,"url":283},"Git","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FGit",[285,288,291,294,297,300,303,306,309,312,315,318,321,324,327,330,333,336,339,342,345,348],{"title":286,"url":287},"Claude Code: permissions","https:\u002F\u002Fcode.claude.com\u002Fdocs\u002Fen\u002Fpermissions",{"title":289,"url":290},"Claude Code: sandboxed Bash","https:\u002F\u002Fcode.claude.com\u002Fdocs\u002Fen\u002Fsandboxing",{"title":292,"url":293},"Claude Code: hooks","https:\u002F\u002Fcode.claude.com\u002Fdocs\u002Fen\u002Fhooks",{"title":295,"url":296},"Claude Code: data usage","https:\u002F\u002Fcode.claude.com\u002Fdocs\u002Fen\u002Fdata-usage",{"title":298,"url":299},"Claude Code: settings","https:\u002F\u002Fcode.claude.com\u002Fdocs\u002Fen\u002Fsettings",{"title":301,"url":302},"Claude Code: MCP servers","https:\u002F\u002Fcode.claude.com\u002Fdocs\u002Fen\u002Fmcp",{"title":304,"url":305},"Codex: configuration reference","https:\u002F\u002Fdevelopers.openai.com\u002Fcodex\u002Fconfig-reference",{"title":307,"url":308},"Codex: agent approvals and security","https:\u002F\u002Flearn.chatgpt.com\u002Fdocs\u002Fagent-approvals-security",{"title":310,"url":311},"Codex: advanced configuration","https:\u002F\u002Flearn.chatgpt.com\u002Fdocs\u002Fconfig-file\u002Fconfig-advanced",{"title":313,"url":314},"GitHub: about push protection","https:\u002F\u002Fdocs.github.com\u002Fen\u002Fcode-security\u002Fsecret-scanning\u002Fintroduction\u002Fabout-push-protection",{"title":316,"url":317},"GitHub: security hardening with OIDC","https:\u002F\u002Fdocs.github.com\u002Fen\u002Factions\u002Fsecurity-for-github-actions\u002Fsecurity-hardening-your-deployments\u002Fabout-security-hardening-with-openid-connect",{"title":319,"url":320},"GitHub: OpenID Connect reference","https:\u002F\u002Fdocs.github.com\u002Fen\u002Factions\u002Freference\u002Fsecurity\u002Foidc",{"title":322,"url":323},"GitHub: using secrets in Actions","https:\u002F\u002Fdocs.github.com\u002Fen\u002Factions\u002Fsecurity-guides\u002Fusing-secrets-in-github-actions",{"title":325,"url":326},"GitHub: secure use reference","https:\u002F\u002Fdocs.github.com\u002Fen\u002Factions\u002Fsecurity-for-github-actions\u002Fsecurity-guides\u002Fsecurity-hardening-for-github-actions",{"title":328,"url":329},"GitHub: removing sensitive data","https:\u002F\u002Fdocs.github.com\u002Fen\u002Fauthentication\u002Fkeeping-your-account-and-data-secure\u002Fremoving-sensitive-data-from-a-repository",{"title":331,"url":332},"gitleaks: README and latest release","https:\u002F\u002Fgithub.com\u002Fgitleaks\u002Fgitleaks",{"title":334,"url":335},"TruffleHog: README","https:\u002F\u002Fgithub.com\u002Ftrufflesecurity\u002Ftrufflehog",{"title":337,"url":338},"detect-secrets: README and latest release","https:\u002F\u002Fgithub.com\u002FYelp\u002Fdetect-secrets",{"title":340,"url":341},"Model Context Protocol: security best practices","https:\u002F\u002Fmodelcontextprotocol.io\u002Fspecification\u002F2025-06-18\u002Fbasic\u002Fsecurity_best_practices",{"title":343,"url":344},"OWASP: Secrets Management Cheat Sheet","https:\u002F\u002Fcheatsheetseries.owasp.org\u002Fcheatsheets\u002FSecrets_Management_Cheat_Sheet.html",{"title":346,"url":347},"OWASP: LLM02 sensitive information disclosure","https:\u002F\u002Fgenai.owasp.org\u002Fllmrisk\u002Fllm022025-sensitive-information-disclosure\u002F",{"title":349,"url":350},"Git: git-add documentation","https:\u002F\u002Fgit-scm.com\u002Fdocs\u002Fgit-add","\u002Fimages\u002Fblog\u002Fcoding-agent-secrets-hygiene\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fcoding-agent-secrets-hygiene\u002Fog.jpg",[74,75,76],"Coding agents and secrets: keep keys out of context, logs and commits","How secrets leak through coding agents, and the controls that stop them: deny reads, a sandbox, pre-commit scans, push protection, OIDC and rotation.","Secrets handling for coding agents: a robot types at a laptop next to a key locked in a glass box.",{"slug":358,"published":359,"updated":360,"minutes":255,"category":8,"tags":361,"tagPages":367,"keywords":369,"about":378,"sources":391,"cover":433,"og":434,"expertise":72,"locales":435,"lang":74,"title":436,"description":437,"coverAlt":438},"works-council-ai-tools-austria-germany","2026-10-02","2026-10-10",[362,363,364,365,366],"Works council","AI coding tools","Employee monitoring","GDPR","Co-determination",[368],"gdpr",[370,371,372,373,374,375,376,377],"works council AI tools","AI coding tools works council","Betriebsrat KI Mitbestimmung","§ 87 BetrVG Überwachung","§ 96 ArbVG Kontrollmaßnahmen","AI usage logs employee monitoring","works agreement for AI tools","GDPR Article 88 employee data",[379,382,385,388],{"name":380,"url":381},"General Data Protection Regulation","https:\u002F\u002Feur-lex.europa.eu\u002Feli\u002Freg\u002F2016\u002F679\u002Foj\u002Feng",{"name":383,"url":384},"EU Artificial Intelligence Act (Regulation (EU) 2024\u002F1689)","https:\u002F\u002Feur-lex.europa.eu\u002Feli\u002Freg\u002F2024\u002F1689\u002Foj\u002Feng",{"name":386,"url":387},"Arbeitsverfassungsgesetz (Austrian Labour Constitution Act)","https:\u002F\u002Fwww.ris.bka.gv.at\u002FGeltendeFassung.wxe?Abfrage=Bundesnormen&Gesetzesnummer=10008329",{"name":389,"url":390},"Betriebsverfassungsgesetz (German Works Constitution Act), § 87","https:\u002F\u002Fwww.gesetze-im-internet.de\u002Fbetrvg\u002F__87.html",[392,394,396,399,402,404,407,409,412,415,418,421,424,427,430],{"title":393,"url":387},"Arbeitsverfassungsgesetz (ArbVG), §§ 96 and 96a, consolidated text of 10 October 2026, RIS",{"title":395,"url":390},"Betriebsverfassungsgesetz (BetrVG), § 87, gesetze-im-internet.de",{"title":397,"url":398},"Betriebsverfassungsgesetz (BetrVG), § 90, gesetze-im-internet.de","https:\u002F\u002Fwww.gesetze-im-internet.de\u002Fbetrvg\u002F__90.html",{"title":400,"url":401},"Bundesdatenschutzgesetz (BDSG), § 26, gesetze-im-internet.de","https:\u002F\u002Fwww.gesetze-im-internet.de\u002Fbdsg_2018\u002F__26.html",{"title":403,"url":381},"Regulation (EU) 2016\u002F679 (GDPR), EUR-Lex",{"title":405,"url":406},"GDPR Article 5(1)(e), storage limitation, gdpr-info.eu","https:\u002F\u002Fgdpr-info.eu\u002Fart-5-gdpr\u002F",{"title":408,"url":384},"Regulation (EU) 2024\u002F1689 (AI Act), EUR-Lex",{"title":410,"url":411},"Regulation (EU) 2026\u002F1744, EUR-Lex","https:\u002F\u002Feur-lex.europa.eu\u002Feli\u002Freg\u002F2026\u002F1744\u002Foj",{"title":413,"url":414},"AI Act Article 26, AI Act Explorer","https:\u002F\u002Fartificialintelligenceact.eu\u002Farticle\u002F26\u002F",{"title":416,"url":417},"AI Act Annex III, AI Act Explorer","https:\u002F\u002Fartificialintelligenceact.eu\u002Fannex\u002F3\u002F",{"title":419,"url":420},"BAG, 1 ABR 16\u002F23 (July 2024), headset system, gesetze.co","https:\u002F\u002Fgesetze.co\u002Furteile\u002F1_ABR_16-23",{"title":422,"url":423},"ArbG Hamburg, 24 BVGa 1\u002F24: law-firm summary by CMS","https:\u002F\u002Fcms.law\u002Fde\u002Fdeu\u002Flegal-updates\u002Fkein-mitbestimmungsrecht-des-betriebsrats-bei-chatgpt-co",{"title":425,"url":426},"ArbG Hamburg, 24 BVGa 1\u002F24: law-firm summary by Gleiss Lutz","https:\u002F\u002Fwww.gleisslutz.com\u002Fde\u002Fknow-how\u002Farbeitsgericht-hamburg-zu-chatgpt-kein-mitbestimmungsrecht-des-betriebsrats",{"title":428,"url":429},"Claude Code documentation: monitoring usage","https:\u002F\u002Fcode.claude.com\u002Fdocs\u002Fen\u002Fmonitoring-usage",{"title":431,"url":432},"GitHub Docs: Copilot metrics data reference","https:\u002F\u002Fdocs.github.com\u002Fen\u002Fcopilot\u002Freference\u002Fmetrics-data","\u002Fimages\u002Fblog\u002Fworks-council-ai-tools-austria-germany\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fworks-council-ai-tools-austria-germany\u002Fog.jpg",[74,75,76],"AI coding tools and the works council: when usage logs count as monitoring","Usage logs can make an AI coding tool a monitoring system. What Austria (§ 96 ArbVG) and Germany (§ 87 BetrVG) require, and what to agree before rollout.","AI coding tools and the works council: a meeting table with a laptop below a wall camera covered by a cloth.",{"slug":440,"published":359,"minutes":82,"category":8,"tags":441,"tagPages":446,"keywords":447,"about":458,"sources":468,"cover":517,"og":518,"expertise":72,"locales":519,"lang":74,"title":520,"description":521,"coverAlt":522},"eu-ai-act-gpai-high-risk-2026",[442,443,444,445],"EU AI Act","GPAI","High-risk AI","AI compliance",[],[448,449,450,451,452,453,454,455,456,457],"EU AI Act high-risk deadline","AI Act digital omnibus","AI Act GPAI obligations","AI Act provider vs deployer","EU AI Act 2 December 2027","GPAI code of practice","AI literacy Article 4","AI Act compliance checklist","AI Act OpenAI API provider deployer","AI Act mid-size company",[459,462,465],{"name":460,"url":461},"Artificial Intelligence Act","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FArtificial_Intelligence_Act",{"name":463,"url":464},"General-purpose artificial intelligence","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FFoundation_model",{"name":466,"url":467},"European Commission","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FEuropean_Commission",[469,471,473,476,479,482,485,488,491,494,496,499,502,505,508,511,514],{"title":408,"url":470},"https:\u002F\u002Feur-lex.europa.eu\u002Feli\u002Freg\u002F2024\u002F1689\u002Foj",{"title":472,"url":411},"Regulation (EU) 2026\u002F1744 (Digital Omnibus on AI), EUR-Lex",{"title":474,"url":475},"AI Act Explorer: Digital Omnibus on AI, full amending text","https:\u002F\u002Fartificialintelligenceact.eu\u002Fai-act-explorer\u002Fdigital-omnibus\u002F",{"title":477,"url":478},"European Commission: AI Act regulatory framework and timeline","https:\u002F\u002Fdigital-strategy.ec.europa.eu\u002Fen\u002Fpolicies\u002Fregulatory-framework-ai",{"title":480,"url":481},"European Commission: Guidelines for providers of general-purpose AI models","https:\u002F\u002Fdigital-strategy.ec.europa.eu\u002Fen\u002Fpolicies\u002Fguidelines-gpai-providers",{"title":483,"url":484},"European Commission: Q&A on the guidelines for GPAI providers","https:\u002F\u002Fdigital-strategy.ec.europa.eu\u002Fen\u002Ffaqs\u002Fguidelines-obligations-general-purpose-ai-providers",{"title":486,"url":487},"European Commission: The General-Purpose AI Code of Practice","https:\u002F\u002Fdigital-strategy.ec.europa.eu\u002Fen\u002Fpolicies\u002Fcontents-code-gpai",{"title":489,"url":490},"European Commission: AI literacy Questions and Answers","https:\u002F\u002Fdigital-strategy.ec.europa.eu\u002Fen\u002Ffaqs\u002Fai-literacy-questions-answers",{"title":492,"url":493},"AI Act Article 25: Responsibilities along the AI value chain","https:\u002F\u002Fartificialintelligenceact.eu\u002Farticle\u002F25\u002F",{"title":495,"url":414},"AI Act Article 26: Obligations of deployers of high-risk AI systems",{"title":497,"url":498},"AI Act Article 27: Fundamental rights impact assessment","https:\u002F\u002Fartificialintelligenceact.eu\u002Farticle\u002F27\u002F",{"title":500,"url":501},"AI Act Article 53: Obligations for providers of general-purpose AI models","https:\u002F\u002Fartificialintelligenceact.eu\u002Farticle\u002F53\u002F",{"title":503,"url":504},"AI Act Article 99: Penalties","https:\u002F\u002Fartificialintelligenceact.eu\u002Farticle\u002F99\u002F",{"title":506,"url":507},"AI Act Article 101: Fines for providers of general-purpose AI models","https:\u002F\u002Fartificialintelligenceact.eu\u002Farticle\u002F101\u002F",{"title":509,"url":510},"Gibson Dunn: EU AI Act Omnibus Agreement, postponed high-risk deadlines (27 May 2026)","https:\u002F\u002Fwww.gibsondunn.com\u002Feu-ai-act-omnibus-agreement-postponed-high-risk-deadlines-and-other-key-changes\u002F",{"title":512,"url":513},"Orrick: EU AI Act Update, Digital Omnibus finalizes 8 compliance changes (29 July 2026)","https:\u002F\u002Fwww.orrick.com\u002Fen\u002FInsights\u002F2026\u002F07\u002FEU-AI-Act-Update-Digital-Omnibus-Finalizes-8-Compliance-Changes",{"title":515,"url":516},"K&L Gates: EU Digital Omnibus on AI enters into force (31 July 2026)","https:\u002F\u002Fwww.klgates.com\u002FEU-Digital-Omnibus-on-AI-Enters-Into-Force-7-31-2026","\u002Fimages\u002Fblog\u002Feu-ai-act-gpai-high-risk-2026\u002Fcover.webp","\u002Fimages\u002Fblog\u002Feu-ai-act-gpai-high-risk-2026\u002Fog.jpg",[74,75,76],"EU AI Act beyond Article 50: GPAI, high-risk dates and what to do now","EU AI Act after the Digital Omnibus: GPAI duties, high-risk dates of 2 Dec 2027 and 2 Aug 2028, provider vs deployer on OpenAI and Anthropic, AI literacy.","EU AI Act deadlines: a robot walks along a timeline rope with three tags above a warning sign.",{"slug":524,"published":525,"minutes":82,"category":8,"tags":526,"tagPages":530,"keywords":531,"about":540,"sources":551,"cover":591,"og":592,"expertise":72,"locales":593,"lang":74,"title":594,"description":595,"coverAlt":596},"dpia-llm-feature-worked-example","2026-10-01",[527,365,10,528,529],"DPIA","Data protection","AI Act",[368,16],[532,533,534,535,536,537,538,539],"DPIA for LLM features","data protection impact assessment AI assistant","GDPR Article 35 AI","DSFA-V Austria AI","LLM customer support GDPR","prompt injection data leak GDPR","AI Act Article 50 chatbot","DPIA template LLM",[541,543,546,549],{"name":380,"url":542},"https:\u002F\u002Feur-lex.europa.eu\u002Flegal-content\u002FEN\u002FTXT\u002F?uri=CELEX:32016R0679",{"name":544,"url":545},"WP29 guidelines on data protection impact assessment (WP248 rev.01)","https:\u002F\u002Fec.europa.eu\u002Fnewsroom\u002Farticle29\u002Fitems\u002F611236\u002Fen",{"name":547,"url":548},"OWASP LLM01:2025 Prompt Injection","https:\u002F\u002Fgenai.owasp.org\u002Fllmrisk\u002Fllm01-prompt-injection\u002F",{"name":550,"url":470},"Regulation (EU) 2024\u002F1689 (AI Act)",[552,553,555,558,561,564,567,570,573,576,578,580,583,586,589,590],{"title":403,"url":542},{"title":554,"url":545},"WP29 guidelines on DPIA, WP248 rev.01 (European Commission item page)",{"title":556,"url":557},"WP248 rev.01 PDF, adopted 4 April 2017 and revised 4 October 2017","https:\u002F\u002Fec.europa.eu\u002Fnewsroom\u002Fjust\u002Fdocument.cfm?doc_id=47711",{"title":559,"url":560},"EDPB Guidelines 07\u002F2020 on the concepts of controller and processor","https:\u002F\u002Fwww.edpb.europa.eu\u002Fsystem\u002Ffiles\u002F2023-10\u002Fedpb_guidelines_202007_controllerprocessor_final_en.pdf",{"title":562,"url":563},"EDPB Opinion 28\u002F2024 on AI models, adopted 17 December 2024","https:\u002F\u002Fwww.edpb.europa.eu\u002Fsystem\u002Ffiles\u002F2024-12\u002Fedpb_opinion_202428_ai-models_en.pdf",{"title":565,"url":566},"EDPB news release on Opinion 28\u002F2024","https:\u002F\u002Fwww.edpb.europa.eu\u002Fnews\u002Fedpb-opinion-on-ai-models-gdpr-principles-support-responsible-ai_en",{"title":568,"url":569},"EDPB, Report of the work undertaken by the ChatGPT Taskforce, 23 May 2024","https:\u002F\u002Fwww.edpb.europa.eu\u002Fsystem\u002Ffiles\u002F2024-05\u002Fedpb_20240523_report_chatgpt_taskforce_en.pdf",{"title":571,"url":572},"DSFA-V, BGBl. II Nr. 278\u002F2018 (RIS)","https:\u002F\u002Fwww.ris.bka.gv.at\u002Feli\u002Fbgbl\u002FII\u002F2018\u002F278",{"title":574,"url":575},"DSFA-AV, BGBl. II Nr. 108\u002F2018 (RIS)","https:\u002F\u002Fwww.ris.bka.gv.at\u002Feli\u002Fbgbl\u002FII\u002F2018\u002F108",{"title":577,"url":548},"OWASP Top 10 for LLM Applications 2025: LLM01 Prompt Injection",{"title":579,"url":347},"OWASP Top 10 for LLM Applications 2025: LLM02 Sensitive Information Disclosure",{"title":581,"url":582},"OpenAI, Data controls in the OpenAI platform","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Fyour-data",{"title":584,"url":585},"Commission Implementing Decision (EU) 2023\u002F1795 on the EU–US Data Privacy Framework","https:\u002F\u002Feur-lex.europa.eu\u002Feli\u002Fdec_impl\u002F2023\u002F1795\u002Foj\u002Feng",{"title":587,"url":588},"CJEU, Case C-184\u002F20, OT v Vyriausioji tarnybinės etikos komisija","https:\u002F\u002Feur-lex.europa.eu\u002Flegal-content\u002FEN\u002FTXT\u002F?uri=CELEX:62020CJ0184",{"title":408,"url":470},{"title":472,"url":411},"\u002Fimages\u002Fblog\u002Fdpia-llm-feature-worked-example\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fdpia-llm-feature-worked-example\u002Fog.jpg",[74,75,76],"DPIA for an LLM support assistant: a worked example under GDPR Art. 35","A worked DPIA under GDPR Art. 35 for an AI assistant that drafts customer email replies from order data: when it is needed, the risks and owners.","DPIA for an LLM support assistant: a clipboard form next to a robot with a speech bubble, a magnifier and a stamp.",{"slug":598,"published":599,"minutes":600,"category":8,"tags":601,"tagPages":604,"keywords":606,"about":614,"sources":624,"cover":652,"og":653,"expertise":72,"locales":654,"lang":74,"title":655,"description":656,"coverAlt":657},"guardrails-ai","2026-09-29",10,[11,14,602,603],"LLM reliability","Python",[17,605],"python",[607,608,609,610,611,612,613],"guardrails ai","guardrails ai validators","llm output validation python","guardrails vs nemo guardrails","guardrails on_fail actions","llm guardrails framework","pii validation llm output",[615,618,621],{"name":616,"url":617},"NVIDIA","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FNVIDIA",{"name":619,"url":620},"Apache License","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FApache_License",{"name":622,"url":623},"Large language model","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FLarge_language_model",[625,628,631,634,637,640,643,646,649],{"title":626,"url":627},"Guardrails AI on GitHub: README, news and FAQ","https:\u002F\u002Fgithub.com\u002Fguardrails-ai\u002Fguardrails",{"title":629,"url":630},"guardrails-ai 0.11.0 on PyPI","https:\u002F\u002Fpypi.org\u002Fproject\u002Fguardrails-ai\u002F",{"title":632,"url":633},"Guardrails Hub: 65 validators","https:\u002F\u002Fwww.guardrailsai.com\u002Fhub",{"title":635,"url":636},"Guardrails documentation: error remediation and on-fail actions","https:\u002F\u002Fwww.guardrailsai.com\u002Fdocs\u002Fconcepts\u002Ferror_remediation",{"title":638,"url":639},"Guardrails documentation: use on-fail actions","https:\u002F\u002Fwww.guardrailsai.com\u002Fguardrails\u002Fdocs\u002Fhow-to-guides\u002Fuse_on_fail_actions",{"title":641,"url":642},"Migration issue 1560: moving off hosted remote inferencing","https:\u002F\u002Fgithub.com\u002Fguardrails-ai\u002Fguardrails\u002Fissues\u002F1560",{"title":644,"url":645},"NVIDIA NeMo Guardrails on GitHub","https:\u002F\u002Fgithub.com\u002FNVIDIA-NeMo\u002FGuardrails",{"title":647,"url":648},"NVIDIA NeMo Guardrails documentation","https:\u002F\u002Fdocs.nvidia.com\u002Fnemo\u002Fguardrails\u002Flatest\u002Findex.html",{"title":650,"url":651},"OpenAI API pricing, including moderation","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fpricing","\u002Fimages\u002Fblog\u002Fguardrails-ai\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fguardrails-ai\u002Fog.jpg",[74,75,76],"Guardrails AI: validating what the model returns","A review of Guardrails AI: 65 hub validators, eight on-fail actions, the August 2026 shutdown of hosted inferencing, and when NeMo Guardrails fits better.","Guardrails AI: a small car drives along a winding mountain road protected by a guardrail.",{"slug":659,"published":660,"minutes":82,"category":8,"tags":661,"tagPages":667,"keywords":668,"about":677,"sources":684,"cover":699,"og":700,"expertise":72,"locales":701,"lang":74,"title":702,"description":703,"coverAlt":704},"eu-ai-act-article-50-developer-checklist","2026-09-22",[442,662,663,664,665,666],"Article 50","AI transparency","Digital Omnibus","AI literacy","Compliance",[],[442,669,670,671,672,673,674,675,454,676],"EU AI Act developers","Article 50 AI Act","AI transparency obligations","AI Act chatbot disclosure","Digital Omnibus AI Act","AI Act Article 50(2) watermarking","AI Act deepfake labelling","does the AI Act apply to my app",[678,679,681],{"name":460,"url":461},{"name":680,"url":411},"Regulation (EU) 2026\u002F1744",{"name":682,"url":683},"AI Act Explorer","https:\u002F\u002Fartificialintelligenceact.eu\u002Fai-act-explorer\u002F",[685,688,691,694,696],{"title":686,"url":687},"Article 50: Transparency Obligations for Providers and Deployers of Certain AI Systems","https:\u002F\u002Fartificialintelligenceact.eu\u002Farticle\u002F50\u002F",{"title":689,"url":690},"Regulation (EU) 2026\u002F1744 (Digital Omnibus on AI), Official Journal, 24 Jul 2026","https:\u002F\u002Feur-lex.europa.eu\u002Feli\u002Freg\u002F2026\u002F1744\u002Foj\u002Feng",{"title":692,"url":693},"Faegre Drinker: Commission confirms Transparency Code of Practice as adequate and publishes final Article 50 Guidelines (30 Jul 2026)","https:\u002F\u002Fwww.faegredrinker.com\u002Fen\u002Finsights\u002Fpublications\u002F2026\u002F7\u002Feu-ai-act-commission-confirms-transparency-code-of-practice-as-adequate-and-publishes-final-version-of-its-guidelines-on-transparency-obligations",{"title":695,"url":510},"Gibson Dunn: EU AI Act Omnibus Agreement, postponed high-risk deadlines and other key changes (27 May 2026)",{"title":697,"url":698},"RTR KI-Servicestelle: AI Act (Austria)","https:\u002F\u002Fwww.rtr.at\u002Frtr\u002Fservice\u002Fki-servicestelle\u002Fai-act\u002F","\u002Fimages\u002Fblog\u002Feu-ai-act-article-50-developer-checklist\u002Fcover.webp","\u002Fimages\u002Fblog\u002Feu-ai-act-article-50-developer-checklist\u002Fog.jpg",[74,75,76],"EU AI Act Article 50: what developers must do from 2 August 2026","EU AI Act Article 50 from 2 August 2026: AI interaction disclosure, machine-readable marking, deepfakes, provider vs deployer, and a checklist.","EU AI Act Article 50: a robot with a visible name tag next to a calendar with a circled date and a checklist.",{"slug":706,"published":707,"minutes":708,"category":8,"tags":709,"tagPages":714,"keywords":715,"about":725,"sources":729,"cover":759,"og":760,"expertise":72,"locales":761,"lang":74,"title":762,"description":763,"coverAlt":764},"prompt-injection-lethal-trifecta-patterns","2026-09-01",9,[105,710,711,712,713],"AI agent security","Lethal trifecta","Design patterns","Red teaming",[],[716,717,710,718,719,720,721,722,723,724],"prompt injection","lethal trifecta","indirect prompt injection","dual LLM pattern","prompt injection design patterns","how to prevent prompt injection in AI agents","agents rule of two","prompt injection egress allowlist","OWASP agentic top 10 goal hijack",[726,727,728],{"name":105,"url":106},{"name":622,"url":623},{"name":13,"url":38},[730,733,736,739,742,745,748,751,754,756],{"title":731,"url":732},"Simon Willison: The lethal trifecta for AI agents","https:\u002F\u002Fsimonwillison.net\u002F2025\u002FJun\u002F16\u002Fthe-lethal-trifecta\u002F",{"title":734,"url":735},"Design Patterns for Securing LLM Agents against Prompt Injections","https:\u002F\u002Farxiv.org\u002Fabs\u002F2506.08837",{"title":737,"url":738},"Simon Willison: Design patterns for securing LLM agents (summary)","https:\u002F\u002Fsimonwillison.net\u002F2025\u002FJun\u002F13\u002Fprompt-injection-design-patterns\u002F",{"title":740,"url":741},"Simon Willison: The Dual LLM pattern","https:\u002F\u002Fsimonwillison.net\u002F2023\u002FApr\u002F25\u002Fdual-llm-pattern\u002F",{"title":743,"url":744},"Defeating Prompt Injections by Design (CaMeL)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2503.18813",{"title":746,"url":747},"The Attacker Moves Second","https:\u002F\u002Farxiv.org\u002Fabs\u002F2510.09023",{"title":749,"url":750},"Meta: Agents Rule of Two","https:\u002F\u002Fai.meta.com\u002Fblog\u002Fpractical-ai-agent-security\u002F",{"title":752,"url":753},"Anthropic: How we contain Claude","https:\u002F\u002Fwww.anthropic.com\u002Fengineering\u002Fhow-we-contain-claude",{"title":755,"url":290},"Claude Code documentation: Sandboxing",{"title":757,"url":758},"promptfoo: OWASP Top 10 for Agentic Applications","https:\u002F\u002Fwww.promptfoo.dev\u002Fdocs\u002Fred-team\u002Fowasp-agentic-ai\u002F","\u002Fimages\u002Fblog\u002Fprompt-injection-lethal-trifecta-patterns\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fprompt-injection-lethal-trifecta-patterns\u002Fog.jpg",[74,75,76],"Prompt injection defense: the lethal trifecta and six design patterns","Why prompt injection can't be filtered away: the lethal trifecta, six design patterns that contain it, egress rules and a red-team checklist for AI agents.","Prompt injection defense: a saw cuts one leg off a three-legged stool holding a key, an envelope and a door.",{"slug":766,"published":767,"updated":768,"minutes":255,"category":8,"tags":769,"tagPages":775,"keywords":776,"about":789,"sources":797,"cover":813,"og":814,"expertise":72,"locales":815,"lang":74,"title":816,"description":817,"coverAlt":818},"gdpr-llm-api-eu-data-residency","2026-08-28","2026-09-02",[365,770,771,772,773,774],"Data residency","LLM API","Zero data retention","PII minimisation","EU hosting",[368],[777,778,779,780,781,782,783,784,785,786,787,788],"GDPR compliant LLM API","LLM data residency cloud providers","GDPR LLM","EU data residency AI","LLM API GDPR","Claude data residency","OpenAI EU data residency","zero data retention LLM","GDPR pseudonymisation","LLM prompt personal data","Bedrock EU region Claude","self-hosted LLM EU compliance",[790,792,794],{"name":380,"url":791},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FGeneral_Data_Protection_Regulation",{"name":770,"url":793},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FData_residency",{"name":795,"url":796},"Pseudonymization","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPseudonymization",[798,801,804,807,810],{"title":799,"url":800},"Claude API docs: Data residency (inference_geo, workspace geo, pricing)","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fmanage-claude\u002Fdata-residency",{"title":802,"url":803},"Claude API docs: API and data retention (zero data retention scope and eligibility)","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fmanage-claude\u002Fapi-and-data-retention",{"title":805,"url":806},"Claude API docs: Models overview (platform model IDs, endpoint types)","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fabout-claude\u002Fmodels\u002Foverview",{"title":808,"url":809},"OpenAI: Introducing data residency in Europe","https:\u002F\u002Fopenai.com\u002Findex\u002Fintroducing-data-residency-in-europe\u002F",{"title":811,"url":812},"Regulation (EU) 2016\u002F679 (General Data Protection Regulation), EUR-Lex","https:\u002F\u002Feur-lex.europa.eu\u002Feli\u002Freg\u002F2016\u002F679\u002Foj","\u002Fimages\u002Fblog\u002Fgdpr-llm-api-eu-data-residency\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fgdpr-llm-api-eu-data-residency\u002Fog.jpg",[74,75,76],"GDPR LLM data residency: region controls, zero retention, EU options","Can an LLM API be GDPR compliant? EU data residency on OpenAI, Claude via Bedrock and Google Cloud, zero data retention, pseudonymisation and self-hosting.","LLM data residency (GDPR): folders stay inside a fenced garden under a ring of stars while a robot leans over the fence.",{"slug":820,"published":821,"updated":525,"minutes":600,"category":8,"tags":822,"tagPages":827,"keywords":828,"about":835,"sources":842,"cover":867,"og":868,"expertise":72,"locales":869,"lang":74,"title":870,"description":871,"coverAlt":872},"semgrep","2026-08-14",[823,824,261,825,826],"SAST","Static analysis","Rule authoring","AppSec",[],[820,829,830,831,832,833,834],"semgrep vs codeql","semgrep rules","semgrep pricing","semgrep pro engine","free sast tools","semgrep ci github actions",[836,839],{"name":837,"url":838},"Semgrep","https:\u002F\u002Fsemgrep.dev",{"name":840,"url":841},"Static application security testing","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FStatic_application_security_testing",[843,846,849,852,855,858,861,864],{"title":844,"url":845},"Semgrep pricing: Free, Teams and Enterprise","https:\u002F\u002Fsemgrep.dev\u002Fpricing\u002F",{"title":847,"url":848},"Semgrep Community Edition","https:\u002F\u002Fsemgrep.dev\u002Fproducts\u002Fcommunity-edition",{"title":850,"url":851},"Semgrep documentation: cross-file analysis","https:\u002F\u002Fdocs.semgrep.dev\u002Fsemgrep-code\u002Fsemgrep-pro-engine-intro\u002F",{"title":853,"url":854},"Semgrep documentation: usage and billing","https:\u002F\u002Fdocs.semgrep.dev\u002Fusage-and-billing\u002Foverview\u002F",{"title":856,"url":857},"Semgrep releases: v1.179.0","https:\u002F\u002Fgithub.com\u002Fsemgrep\u002Fsemgrep\u002Freleases",{"title":859,"url":860},"Semgrep Rules License v1.0","https:\u002F\u002Fsemgrep.dev\u002Flegal\u002Frules-license\u002F",{"title":862,"url":863},"Important updates to Semgrep OSS, 13 December 2024","https:\u002F\u002Fsemgrep.dev\u002Fblog\u002F2024\u002Fimportant-updates-to-semgrep-oss\u002F",{"title":865,"url":866},"OpenGrep repository","https:\u002F\u002Fgithub.com\u002Fopengrep\u002Fopengrep","\u002Fimages\u002Fblog\u002Fsemgrep\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fsemgrep\u002Fog.jpg",[74,75,76],"Semgrep: static analysis that fits in a pull request","Semgrep: 30-plus languages, YAML patterns matched in seconds, a free LGPL-2.1 engine. Cross-file analysis, rulesets and AI triage sit behind paid tiers.","Semgrep static analysis: a fine-tooth comb catches a small beetle in lines of paper strips.",{"slug":874,"published":875,"updated":707,"minutes":600,"category":8,"tags":876,"tagPages":882,"keywords":883,"about":892,"sources":902,"cover":923,"og":924,"expertise":72,"locales":925,"lang":74,"title":926,"description":927,"coverAlt":928},"mcp-server-security-checklist","2026-08-11",[877,878,879,880,881],"MCP security","Tool poisoning","MCP OAuth","Supply chain","Audit logs",[],[877,884,885,886,879,887,888,889,890,891],"MCP server security","MCP tool poisoning","MCP rug pull","MCP vulnerabilities","how to secure an MCP server","MCP authorization RFC 9207","NSA MCP guidance","MCP audit logging",[893,894,897,900],{"name":279,"url":280},{"name":895,"url":896},"OAuth 2.0","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FOAuth",{"name":898,"url":899},"OpenTelemetry","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FOpenTelemetry",{"name":13,"url":901},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FOWASP",[903,906,909,912,915,918,921],{"title":904,"url":905},"Invariant Labs: MCP Security Notification – Tool Poisoning Attacks (1 April 2025)","https:\u002F\u002Finvariantlabs.ai\u002Fblog\u002Fmcp-security-notification-tool-poisoning-attacks",{"title":907,"url":908},"OWASP: Top 10 for Agentic Applications for 2026 (9 December 2025)","https:\u002F\u002Fgenai.owasp.org\u002Fresource\u002Fowasp-top-10-for-agentic-applications-for-2026\u002F",{"title":910,"url":911},"MCP specification 2026-07-28: changelog (SEP-2468, SEP-2352, SEP-414)","https:\u002F\u002Fgithub.com\u002Fmodelcontextprotocol\u002Fmodelcontextprotocol\u002Fblob\u002Fmain\u002Fdocs\u002Fspecification\u002F2026-07-28\u002Fchangelog.mdx",{"title":913,"url":914},"RFC 9207: OAuth 2.0 Authorization Server Issuer Identification","https:\u002F\u002Fwww.rfc-editor.org\u002Frfc\u002Frfc9207",{"title":916,"url":917},"NSA: Model Context Protocol (MCP) – Security Design Considerations for AI-Driven Automation (May 2026)","https:\u002F\u002Fmedia.defense.gov\u002F2026\u002FJun\u002F02\u002F2003943289\u002F-1\u002F-1\u002F0\u002FCSI_MCP_SECURITY.PDF",{"title":919,"url":920},"Reed Smith: NSA publishes security guidance on designing AI systems with MCP (4 June 2026)","https:\u002F\u002Fwww.reedsmith.com\u002Four-insights\u002Fblogs\u002Fviewpoints\u002F102mvg9\u002Fnsa-publishes-security-guidance-on-designing-ai-systems-with-model-context-protoc\u002F",{"title":922,"url":753},"Anthropic: How we contain Claude across products (25 May 2026)","\u002Fimages\u002Fblog\u002Fmcp-server-security-checklist\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fmcp-server-security-checklist\u002Fog.jpg",[74,75,76],"MCP security checklist: tool poisoning, rug pulls and OAuth","MCP security checklist: the threat model, tool poisoning, rug pulls, RFC 9207 issuer checks, per-issuer credentials, scoped tokens and audit logs.","MCP security checklist: a plug and socket secured by a padlock chain, a worm creeping toward the cable.",{"slug":930,"published":931,"updated":707,"minutes":255,"category":8,"tags":932,"tagPages":937,"keywords":938,"about":948,"sources":960,"cover":970,"og":971,"expertise":72,"locales":972,"lang":74,"title":973,"description":974,"coverAlt":975},"sandboxing-coding-agents-ci-checklist","2026-08-05",[933,261,934,935,936],"AI agent sandbox","Egress control","Credentials","Container isolation",[],[933,939,940,941,942,943,944,945,946,947],"coding agent security","agent containment","CI security checklist","egress allowlist","sandbox a coding agent","block cloud metadata endpoint","gVisor","Seatbelt bubblewrap sandbox","short-lived agent credentials",[949,952,954,957],{"name":950,"url":951},"Sandbox (software development)","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FSandbox_(software_development)",{"name":945,"url":953},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FgVisor",{"name":955,"url":956},"Hugging Face","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FHugging_Face",{"name":958,"url":959},"Virtual machine","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FVirtual_machine",[961,964,967,968],{"title":962,"url":963},"Hugging Face: technical timeline of the July 2026 intrusion","https:\u002F\u002Fhuggingface.co\u002Fblog\u002Fagent-intrusion-technical-timeline",{"title":965,"url":966},"METR and Redwood Research: independent investigation (26 August 2026)","https:\u002F\u002Fmetr.org\u002Fblog\u002F2026-08-26-openai-hugging-face-incident-investigation\u002F",{"title":922,"url":753},{"title":969,"url":290},"Claude Code documentation: the sandboxed Bash tool","\u002Fimages\u002Fblog\u002Fsandboxing-coding-agents-ci-checklist\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fsandboxing-coding-agents-ci-checklist\u002Fog.jpg",[74,75,76],"AI agent sandbox checklist: lessons from a CI intrusion","AI agent sandbox checklist for CI: isolation, egress allowlists, short-lived scoped credentials, blocked metadata endpoints, untrusted project config.","AI agent sandbox checklist: a robot plays in a framed sandbox, a broken padlock and a checklist outside.",{"slug":977,"published":978,"minutes":708,"category":8,"tags":979,"tagPages":980,"keywords":981,"about":990,"sources":995,"cover":1020,"og":1021,"expertise":72,"locales":1022,"lang":74,"title":1023,"description":1024,"coverAlt":1025},"lakera-guard","2026-08-04",[105,11,10,12],[17,16],[982,983,984,985,986,987,988,989],"lakera guard","lakera guard review","prompt injection filter","prompt injection detection","llm guardrails comparison","pint benchmark","check point ai guardrails","lakera pricing",[991,992],{"name":105,"url":106},{"name":993,"url":994},"Check Point","https:\u002F\u002Fwww.checkpoint.com\u002F",[996,999,1002,1005,1008,1011,1014,1017],{"title":997,"url":998},"Lakera documentation: Guard API","https:\u002F\u002Fdocs.lakera.ai\u002Fdocs\u002Fapi\u002Fguard",{"title":1000,"url":1001},"Guard API endpoint reference","https:\u002F\u002Fdocs.lakera.ai\u002Fapi-reference\u002Flakera-api\u002Fguard\u002Fscreen-content",{"title":1003,"url":1004},"Lakera documentation: projects","https:\u002F\u002Fdocs.lakera.ai\u002Fdocs\u002Fprojects",{"title":1006,"url":1007},"Lakera documentation: self-hosting","https:\u002F\u002Fdocs.lakera.ai\u002Fdocs\u002Fselfhosting",{"title":1009,"url":1010},"Lakera platform pricing","https:\u002F\u002Fplatform.lakera.ai\u002Fpricing",{"title":1012,"url":1013},"PINT benchmark on GitHub","https:\u002F\u002Fgithub.com\u002Flakeraai\u002Fpint-benchmark",{"title":1015,"url":1016},"Lakera homepage","https:\u002F\u002Fwww.lakera.ai\u002F",{"title":1018,"url":1019},"Check Point press release on the Lakera acquisition","https:\u002F\u002Fwww.checkpoint.com\u002Fpress-releases\u002Fcheck-point-acquires-lakera-to-deliver-end-to-end-ai-security-for-enterprises\u002F","\u002Fimages\u002Fblog\u002Flakera-guard\u002Fcover.webp","\u002Fimages\u002Fblog\u002Flakera-guard\u002Fog.jpg",[74,75,76],"Lakera Guard: prompt injection filtering at the request boundary","A review of Lakera Guard: one endpoint before the model, the PINT benchmark behind its scores, and why the free tier stops at 10,000 requests a month.","Lakera Guard prompt injection filter: a guard at a doorway holds a sieve that catches one envelope with a hook.",{"slug":1027,"published":1028,"updated":931,"minutes":600,"category":8,"tags":1029,"tagPages":1033,"keywords":1034,"about":1041,"sources":1047,"cover":1072,"og":1073,"expertise":72,"locales":1074,"lang":74,"title":1075,"description":1076,"coverAlt":1077},"detect-secrets","2026-08-03",[1030,1031,282,1032],"Secret scanning","Pre-commit","DevSecOps",[],[1027,1035,1036,1037,1038,1039,1040],"detect-secrets vs gitleaks","detect-secrets baseline","secret scanning tools comparison","gitleaks vs trufflehog","rotate leaked api keys","pre-commit secret hook",[1042,1045,1046],{"name":1043,"url":1044},"Yelp","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FYelp",{"name":282,"url":283},{"name":619,"url":620},[1048,1050,1053,1056,1059,1062,1064,1066,1069],{"title":1049,"url":338},"Yelp\u002Fdetect-secrets: README and usage",{"title":1051,"url":1052},"Yelp\u002Fdetect-secrets: CHANGELOG (v1.5.0, 6 May 2024)","https:\u002F\u002Fgithub.com\u002FYelp\u002Fdetect-secrets\u002Fblob\u002Fmaster\u002FCHANGELOG.md",{"title":1054,"url":1055},"Yelp\u002Fdetect-secrets: plugin and verification documentation","https:\u002F\u002Fgithub.com\u002FYelp\u002Fdetect-secrets\u002Fblob\u002Fmaster\u002Fdocs\u002Fplugins.md",{"title":1057,"url":1058},"detect-secrets 1.5.0 on PyPI","https:\u002F\u002Fpypi.org\u002Fproject\u002Fdetect-secrets\u002F",{"title":1060,"url":1061},"Yelp\u002Fdetect-secrets: releases","https:\u002F\u002Fgithub.com\u002FYelp\u002Fdetect-secrets\u002Freleases",{"title":1063,"url":332},"Gitleaks README (MIT, Go)",{"title":1065,"url":335},"TruffleHog README (AGPL-3.0, credential verification)",{"title":1067,"url":1068},"GitHub Docs: About secret scanning","https:\u002F\u002Fdocs.github.com\u002Fen\u002Fcode-security\u002Fsecret-scanning\u002Fintroduction\u002Fabout-secret-scanning",{"title":1070,"url":1071},"betterleaks\u002Fbetterleaks","https:\u002F\u002Fgithub.com\u002Fbetterleaks\u002Fbetterleaks","\u002Fimages\u002Fblog\u002Fdetect-secrets\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fdetect-secrets\u002Fog.jpg",[74,75,76],"detect-secrets: secret scanning with a committed baseline","What detect-secrets does, how its committed baseline differs from gitleaks and TruffleHog, why verification calls matter in CI, and where the tool stops.","detect-secrets scanning: a sniffer dog checks suitcases on a conveyor, one with a key sticking out.",{"slug":1079,"published":1080,"updated":707,"minutes":82,"category":8,"tags":1081,"tagPages":1085,"keywords":1086,"about":1097,"sources":1105,"cover":1166,"og":1167,"expertise":72,"locales":1168,"lang":74,"title":1169,"description":1170,"coverAlt":1171},"pii-redaction-llm-pipelines","2026-06-26",[1082,365,1083,10,1084],"PII redaction","Microsoft Presidio","Pseudonymisation",[368,16],[1087,1088,1089,1090,1091,1092,1093,1094,1095,1096],"PII redaction LLM","how to remove PII before sending to LLM","Microsoft Presidio tutorial","PII detection German Hungarian","pseudonymisation vs anonymisation GDPR","reversible tokenization LLM prompts","redact PII in logs and traces","LLM data masking","PII guardrail LiteLLM","test PII detection recall",[1098,1101,1102],{"name":1099,"url":1100},"Personal data","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPersonal_data",{"name":380,"url":791},{"name":1103,"url":1104},"Data anonymization","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FData_anonymization",[1106,1109,1112,1115,1118,1121,1124,1127,1130,1133,1136,1139,1142,1145,1148,1151,1154,1157,1160,1163],{"title":1107,"url":1108},"Microsoft Presidio: documentation (limitations, methods)","https:\u002F\u002Fpresidio.dataprivacystack.org\u002F",{"title":1110,"url":1111},"Presidio: supported entities and country-specific recognizers","https:\u002F\u002Fpresidio.dataprivacystack.org\u002Fsupported_entities\u002F",{"title":1113,"url":1114},"Presidio: supporting additional languages","https:\u002F\u002Fpresidio.dataprivacystack.org\u002Fanalyzer\u002Flanguages\u002F",{"title":1116,"url":1117},"Presidio: anonymizer operators","https:\u002F\u002Fpresidio.dataprivacystack.org\u002Fanonymizer\u002F",{"title":1119,"url":1120},"Google Cloud: infoTypes reference","https:\u002F\u002Fdocs.cloud.google.com\u002Fsensitive-data-protection\u002Fdocs\u002Finfotypes-reference",{"title":1122,"url":1123},"Google Cloud: pseudonymization in Sensitive Data Protection","https:\u002F\u002Fdocs.cloud.google.com\u002Fsensitive-data-protection\u002Fdocs\u002Fpseudonymization",{"title":1125,"url":1126},"Microsoft Learn: Azure Language PII detection language support","https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fazure\u002Fai-services\u002Flanguage-service\u002Fpersonally-identifiable-information\u002Flanguage-support",{"title":1128,"url":1129},"AWS: Detecting PII entities with Amazon Comprehend","https:\u002F\u002Fdocs.aws.amazon.com\u002Fcomprehend\u002Flatest\u002Fdg\u002Fhow-pii.html",{"title":1131,"url":1132},"spaCy: models and languages","https:\u002F\u002Fspacy.io\u002Fusage\u002Fmodels",{"title":1134,"url":1135},"Hugging Face: novakat\u002Fnerkor-hubert (Hungarian NER)","https:\u002F\u002Fhuggingface.co\u002Fnovakat\u002Fnerkor-hubert",{"title":1137,"url":1138},"arXiv: An Evaluation Study of Hybrid Methods for Multilingual PII Detection","https:\u002F\u002Farxiv.org\u002Fabs\u002F2510.07551",{"title":1140,"url":1141},"LiteLLM: Presidio PII masking guardrail","https:\u002F\u002Fdocs.litellm.ai\u002Fdocs\u002Fproxy\u002Fguardrails\u002Fpii_masking_v2",{"title":1143,"url":1144},"Langfuse: masking","https:\u002F\u002Flangfuse.com\u002Fdocs\u002Fobservability\u002Ffeatures\u002Fmasking",{"title":1146,"url":1147},"GDPR Article 4: definitions (pseudonymisation, 4(5))","https:\u002F\u002Fgdpr-info.eu\u002Fart-4-gdpr\u002F",{"title":1149,"url":1150},"EDPB: Guidelines 01\u002F2025 on Pseudonymisation","https:\u002F\u002Fwww.edpb.europa.eu\u002Four-work-tools\u002Fdocuments\u002Fpublic-consultations\u002F2025\u002Fguidelines-012025-pseudonymisation_en",{"title":1152,"url":1153},"IAPP: EDPB publishes draft guidelines on pseudonymization","https:\u002F\u002Fiapp.org\u002Fnews\u002Fa\u002F-what-s-in-a-name-edpb-publishes-draft-guidelines-on-pseudonymization",{"title":1155,"url":1156},"Taylor Wessing: Analysis of the CJEU judgment in C-413\u002F23 P (EDPS v SRB)","https:\u002F\u002Fwww.taylorwessing.com\u002Fen\u002Finsights-and-events\u002Finsights\u002F2025\u002F09\u002Fanalysis-of-the-cjeu-judgment",{"title":1158,"url":1159},"Jones Day: CJEU clarifies scope of personal data in EDPS v SRB","https:\u002F\u002Fwww.jonesday.com\u002Fen\u002Finsights\u002F2025\u002F09\u002Fcjeu-clarifies-scope-of-personal-data-in-edps-v-srb-decision",{"title":1161,"url":1162},"IAPP: leaked Council Digital Omnibus compromise drops the revised personal data definition","https:\u002F\u002Fiapp.org\u002Fnews\u002Fa\u002Feu-member-states-leaked-digital-omnibus-compromise-proposal-eliminates-revised-gdpr-definition-of-personal-data",{"title":1164,"url":1165},"Law Health Tech: Pseudonymisation under the GDPR and the Digital Omnibus (May 2026)","https:\u002F\u002Flawhealthtech.com\u002F2026\u002F05\u002F04\u002Fpseudonymisation-under-the-gdpr-where-we-are-what-may-change-under-the-digital-omnibus-and-what-regulators-think\u002F","\u002Fimages\u002Fblog\u002Fpii-redaction-llm-pipelines\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fpii-redaction-llm-pipelines\u002Fog.jpg",[74,75,76],"PII redaction in LLM pipelines: where to redact, how, and what GDPR says","Where to redact PII in LLM pipelines: reversible tokens vs masking, Presidio and cloud DLP, German and Hungarian gaps, GDPR for pseudonymised data.","PII redaction in LLM pipelines: a hand blacks out lines on a page with a marker while a robot waits for it.",{"slug":1173,"published":1174,"updated":1175,"minutes":708,"category":8,"tags":1176,"tagPages":1178,"keywords":1179,"about":1184,"sources":1189,"cover":1201,"og":1202,"expertise":72,"locales":1203,"lang":74,"title":1204,"description":1205,"coverAlt":1206},"rebuff","2026-06-22","2026-07-09",[105,10,11,1177],"Canary tokens",[16,17],[1173,985,1180,1181,1182,1183],"rebuff python sdk","llm prompt injection guardrail","canary token leak detection","rebuff alternative",[1185,1188],{"name":1186,"url":1187},"Rebuff","https:\u002F\u002Fgithub.com\u002Fprotectai\u002Frebuff",{"name":622,"url":623},[1190,1192,1195,1198],{"title":1191,"url":1187},"Rebuff repository, archived 16 May 2025",{"title":1193,"url":1194},"Rebuff 0.1.1 on PyPI, released 20 January 2024","https:\u002F\u002Fpypi.org\u002Fproject\u002Frebuff\u002F",{"title":1196,"url":1197},"LangChain: Rebuff, detecting prompt injection attacks","https:\u002F\u002Fwww.langchain.com\u002Fblog\u002Frebuff",{"title":1199,"url":1200},"LLM Guard repository, archived 9 July 2026","https:\u002F\u002Fgithub.com\u002Fprotectai\u002Fllm-guard","\u002Fimages\u002Fblog\u002Frebuff\u002Fcover.webp","\u002Fimages\u002Fblog\u002Frebuff\u002Fog.jpg",[74,75,76],"Rebuff: four layers of prompt injection detection, now archived","Rebuff scores prompts with heuristics, an LLM, a vector store of past attacks and canary tokens. Archived in May 2025; last release January 2024.","Rebuff prompt injection detection: a closed archive box sits before four layers of defence: moat, fence, wall and gate.",{"slug":1208,"published":1174,"updated":875,"minutes":600,"category":8,"tags":1209,"tagPages":1212,"keywords":1213,"about":1222,"sources":1232,"cover":1265,"og":1266,"expertise":72,"locales":1267,"lang":74,"title":1268,"description":1269,"coverAlt":1270},"protect-ai",[1210,880,1211,261],"Model scanning","Pickle",[],[1214,1215,1216,1217,1218,1219,1220,1221],"protect ai guardian","modelscan","ai model scanning","prisma airs ai model security","pickle malware scanner","model serialization attack","modelscan vs modelaudit","scan hugging face model for malware",[1223,1226,1229],{"name":1224,"url":1225},"Protect AI","https:\u002F\u002Fprotectai.com",{"name":1227,"url":1228},"Palo Alto Networks","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPalo_Alto_Networks",{"name":1230,"url":1231},"ModelScan","https:\u002F\u002Fgithub.com\u002Fprotectai\u002Fmodelscan",[1233,1236,1239,1242,1244,1247,1250,1253,1256,1259,1262],{"title":1234,"url":1235},"Palo Alto Networks: completes acquisition of Protect AI","https:\u002F\u002Fwww.paloaltonetworks.com\u002Fcompany\u002Fpress\u002F2025\u002Fpalo-alto-networks-completes-acquisition-of-protect-ai",{"title":1237,"url":1238},"Prisma AIRS AI Model Security product page","https:\u002F\u002Fwww.paloaltonetworks.com\u002Fai-security\u002Fai-model-security",{"title":1240,"url":1241},"Prisma AIRS platform page served at protectai.com","https:\u002F\u002Fprotectai.com\u002F",{"title":1243,"url":1231},"ModelScan repository and README",{"title":1245,"url":1246},"ModelScan on PyPI","https:\u002F\u002Fpypi.org\u002Fproject\u002Fmodelscan\u002F",{"title":1248,"url":1249},"ModelAudit repository and README","https:\u002F\u002Fgithub.com\u002Fpromptfoo\u002Fmodelaudit",{"title":1251,"url":1252},"promptfoo documentation: model scanning","https:\u002F\u002Fwww.promptfoo.dev\u002Fdocs\u002Fmodel-audit\u002F",{"title":1254,"url":1255},"Beyond F1: Evaluating Coverage and Failure Recovery in AI Model Security Scanners","https:\u002F\u002Farxiv.org\u002Fabs\u002F2608.27424",{"title":1257,"url":1258},"JFrog: three zero-day PickleScan vulnerabilities","https:\u002F\u002Fjfrog.com\u002Fblog\u002Funveiling-3-zero-day-vulnerabilities-in-picklescan\u002F",{"title":1260,"url":1261},"PickleScan repository and README","https:\u002F\u002Fgithub.com\u002Fmmaitre314\u002Fpicklescan",{"title":1263,"url":1264},"Hugging Face Hub docs: third-party scanner Protect AI","https:\u002F\u002Fhuggingface.co\u002Fdocs\u002Fhub\u002Fen\u002Fsecurity-protectai","\u002Fimages\u002Fblog\u002Fprotect-ai\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fprotect-ai\u002Fog.jpg",[74,75,76],"Protect AI model scanning: Guardian is gone, ModelScan is not","Protect AI model scanning after the Palo Alto Networks acquisition: what became of Guardian, what ModelScan still does, and how free scanners compare.","Protect AI model scanning: a scanner arch beams over a gift box, an empty guard stand beside it.",{"slug":1272,"published":1273,"updated":525,"minutes":82,"category":8,"tags":1274,"tagPages":1279,"keywords":1280,"about":1291,"sources":1298,"cover":1341,"og":1342,"expertise":72,"locales":1343,"lang":74,"title":1344,"description":1345,"coverAlt":1346},"ai-agent-identity-least-privilege","2026-05-18",[1275,1276,1277,1278],"AI agent identity","Least privilege","OAuth token exchange","Non-human identity",[],[1281,1282,1283,1284,1285,1286,1287,1288,1289,1290],"AI agent identity management","non-human identity AI agents","AI agent least privilege","OAuth token exchange for AI agents","on-behalf-of flow AI agent","Microsoft Entra Agent ID","Okta Agent SSO Cross App Access","AI agent credentials and secrets","offboarding AI agents","delegated vs autonomous agent access",[1292,1295,1296],{"name":1293,"url":1294},"Identity management","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FIdentity_management",{"name":276,"url":277},{"name":1297,"url":896},"OAuth",[1299,1302,1305,1308,1311,1314,1317,1320,1323,1326,1329,1332,1335,1338],{"title":1300,"url":1301},"Microsoft Learn: What is Microsoft Entra Agent ID?","https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fentra\u002Fagent-id\u002Fwhat-is-microsoft-entra-agent-id",{"title":1303,"url":1304},"Microsoft Learn: What are agent identities?","https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fentra\u002Fagent-id\u002Fwhat-are-agent-identities",{"title":1306,"url":1307},"Microsoft Learn: Best practices for Microsoft Entra Agent ID","https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fentra\u002Fagent-id\u002Fbest-practices-agent-id",{"title":1309,"url":1310},"Microsoft Learn: Microsoft Entra Agent ID logs","https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fentra\u002Fagent-id\u002Fsign-in-audit-logs-agents",{"title":1312,"url":1313},"Microsoft Learn: How agent identity deletion works","https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fentra\u002Fagent-id\u002Fconcept-agent-identity-deletion",{"title":1315,"url":1316},"Microsoft Learn: What's new in Microsoft Entra Agent ID","https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fentra\u002Fagent-id\u002Fwhats-new-agent-id",{"title":1318,"url":1319},"Microsoft Learn: Microsoft Agent 365 overview","https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fmicrosoft-agent-365\u002Foverview",{"title":1321,"url":1322},"Okta: Okta brings first-class identity to AI agents with Agent SSO (24 August 2026)","https:\u002F\u002Fwww.okta.com\u002Fnewsroom\u002Fpress-releases\u002Fokta-brings-first-class-identity-to-ai-agents-with-agent-sso\u002F",{"title":1324,"url":1325},"Okta: Auth0 gives developers the identity layer to securely ship agentic apps (May 2026)","https:\u002F\u002Fwww.okta.com\u002Fnewsroom\u002Farticles\u002Fauth0-may-2026-product-innovations\u002F",{"title":1327,"url":1328},"IETF: RFC 8693, OAuth 2.0 Token Exchange","https:\u002F\u002Fwww.rfc-editor.org\u002Frfc\u002Frfc8693",{"title":1330,"url":1331},"Model Context Protocol blog: Enterprise-Managed Authorization, zero-touch OAuth for MCP (18 June 2026)","https:\u002F\u002Fblog.modelcontextprotocol.io\u002Fposts\u002Fenterprise-managed-auth\u002F",{"title":1333,"url":1334},"Model Context Protocol: Security best practices","https:\u002F\u002Fmodelcontextprotocol.io\u002Fspecification\u002Fdraft\u002Fbasic\u002Fsecurity_best_practices",{"title":1336,"url":1337},"WorkOS: AI agents and the multi-hop delegation problem","https:\u002F\u002Fworkos.com\u002Fblog\u002Foauth-multi-hop-delegation-ai-agents",{"title":1339,"url":1340},"TechCrunch: OpenAI launches Dots, its bubbly agentic avatar","https:\u002F\u002Ftechcrunch.com\u002F2026\u002F09\u002F29\u002Fopenai-launches-dots-its-bubbly-agentic-avatar\u002F","\u002Fimages\u002Fblog\u002Fai-agent-identity-least-privilege\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fai-agent-identity-least-privilege\u002Fog.jpg",[74,75,76],"AI agents are identities: least privilege for non-human users","AI agent identity and least privilege: its own identity, delegated tokens, an off switch, audit and offboarding, and what Entra, Okta and Auth0 ship.","AI agent identities and least privilege: a robot with an ID badge holds one small key in front of three doors.",1793451238952]