惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Vercel News
Vercel News
博客园 - 【当耐特】
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
小众软件
小众软件
Hugging Face - Blog
Hugging Face - Blog
aimingoo的专栏
aimingoo的专栏
WordPress大学
WordPress大学
G
Google Developers Blog
博客园 - 叶小钗
大猫的无限游戏
大猫的无限游戏
P
Proofpoint News Feed
J
Java Code Geeks
U
Unit 42
云风的 BLOG
云风的 BLOG
阮一峰的网络日志
阮一峰的网络日志
N
Netflix TechBlog - Medium
宝玉的分享
宝玉的分享
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
D
Docker
V
Visual Studio Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
H
Help Net Security
V
V2EX
T
Tailwind CSS Blog

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant
Your AI agent is running as an identity nobody audited
Mark Ivashin · 2026-05-16 · via DEV Community

Mark Ivashinko

Most AI security work starts after the agent is already in production and already has more access than anyone signed off on. The order is backwards, and it's backwards in a predictable way.

Here's the pattern, repeated across environments. A team ships an agent. Copilot Studio, a LangChain workflow, a Semantic Kernel orchestration, doesn't matter. It can read mail, call internal APIs, and write to a system of record. The permission model is a system prompt that says "only use these tools when appropriate." The data-flow design is whatever the SDK defaulted to. It demos well. It goes to prod.

Six weeks later someone asks which identity the agent actually authenticates as when it hits the internal API. The room goes quiet, because the answer is usually "a service principal with far more scope than this workload needs, and the same one three other things share."

The system prompt is not an authorization boundary

This is the core mistake, so it's worth being blunt about it. A system prompt is a request. An attacker who can get text into the model's context (a poisoned document in the RAG store, a crafted email the agent summarizes, a tool result it ingests) is negotiating with that request directly. Prompt injection is not a content-moderation problem you filter your way out of. It is a privilege-escalation problem. The model is the confused deputy, and the deputy is holding your API tokens.

If the only thing standing between "summarize this email" and "exfiltrate the CRM" is the model deciding to behave, there is no boundary. There's a suggestion.

What an actual permission model looks like

The boundary has to live in the architecture, outside the model, where the model's output is treated as untrusted input:

  • A scoped identity per agent. The agent authenticates as itself, with least-privilege access to exactly the tools and data its job requires. Not a shared service principal. Not the deploying user's token.
  • Tool-use authorization enforced by the host, not the prompt. The orchestration layer decides whether a tool call is permitted based on identity and policy, regardless of what the model "asked" for. The model proposes. The host disposes.
  • Data-flow boundaries that survive the model. If the agent can read a document the user can't, that's a leak the moment the model paraphrases it. Document permissions and sensitivity have to propagate through retrieval and into the response, not get laundered through the context window.
  • The AI surface wired into the same identity, telemetry, and access reviews as everything else. An agent that takes actions in your environment is a workload. It should show up in the same logs as every other workload, not sit in an unmonitored island because "it's just an AI feature."

None of this is exotic. It's the same authorization discipline you'd apply to any service that holds credentials and takes actions. The only new part is that the thing deciding what to do is a model that can be talked into things, which raises the stakes on getting the boundary outside it.

Build it and secure it in the same pass

The expensive version of this lesson is retrofitting permission boundaries onto an agent that already shipped, already has the broad token, and already has six weeks of behavior people depend on. The cheap version is designing the identity, the tool-use authz, and the data-flow controls into the system before it goes out. Same engineering either way. The only variable is whether you do it before or after the access is already loose.

This is the work WhiteBoxTek does on the AI side: agentic systems and RAG pipelines architected with the permission model built in from day one, across Copilot Studio, Semantic Kernel, AutoGen, LangChain, AI Foundry, Bedrock, and Vertex. Full breakdown of the approach: AI security architecture.