Back to Blog
Secure-by-Design Perspectives
Every Engineering Team Is Now an AI Team. The Security Architecture For That Has to Follow.

, Co-founder & CEO

Every engineering team is building with AI. Not experimenting. Building. Shipping AI-powered features into production, connecting models to real data, deploying applications that customers interact with every day. The pace is accelerating, and the business expects it to. In order for it to win, it has no other choice.
When a team integrates a model into an application, they're introducing a component with a different risk profile than anything that came before it. Most security teams don't yet have a clear picture of what's running, where, or what it can reach. The architecture to govern it hasn't kept pace.
The answer isn't more scanning. It's building the controls into the infrastructure before the risk accumulates. The organizations getting this right aren't slowing their developers down. They're defining the architectural boundaries that let the business move fast without compromising security standards.
What it actually means when a team builds an AI application.
When a developer integrates AI into an application, the work looks like software development. But the decisions being made are cloud architecture decisions.
Calling a model means calling an external service endpoint from inside your cloud environment. The team chooses which provider, which model, and how to authenticate. That's a network decision and an identity decision, the same categories security teams govern everywhere else in the cloud. On AWS alone, a developer can choose from nearly 200 models across close to 20 different model families. That's before counting Azure AI, Google Vertex, and independent providers. The breadth of choice is real, and so is the surface area it creates.
The model needs context to be useful. So developers connect it to data: a customer database, an internal knowledge base, a document store, a code repository. Those connections traverse your cloud network, cross account and service boundaries, and determine what information can reach the model and what the model can return. That's a data access decision.
If the team wants to improve model performance on a specific task, they fine-tune it on internal data. That data has to be extracted, formatted, and transmitted somewhere for training. That's a data egress decision.
And the application itself accepts inputs from users, whether employees or customers, and routes those inputs into model context. Whatever a user types, the application handles. That's an input boundary decision.
These decisions don't exist in isolation. The provider choice shapes the network path. The network path determines what data can cross boundaries. The data that crosses boundaries determines what the model can surface, and to whom. Each architectural decision creates the conditions for the next.
None of this is invisible. All of it happens inside your cloud environment, touching the same infrastructure, network controls, and identity systems that the rest of your security architecture governs. The question is whether the architecture for AI has been defined at all, or whether it's being assembled team by team, integration by integration.
We’ve seen this before.
The pattern is familiar. Engineers move fast, as they should. They experiment, try things out, wire up integrations that work. No one is being careless. Everyone is optimizing for the right thing in the moment. And then, at some point, the security team looks up and there's an environment full of things that are already running, already in production, already woven into the stack.
Every unapproved model integration that works becomes a legacy component. Every database connection made without data classification becomes permanent. Fixing that is hard, and the cost compounds the longer it sits.
That's what happened with traditional cloud security. And without deliberate action, it's exactly what's going to happen with AI. The good news is that we know how the story ends if nothing changes. We don't have to live it again.
Consider a customer support application. A team builds it, connects it to a customer database to improve answer quality, and ships it. Customers start using it, and because customers type what's relevant to them in the moment, some of them enter their credit card numbers when they have a billing question. The application accepts the input. That data flows into model context. If the model is fine-tuned on interaction data, it trains on it. And now a prompt injection attack can potentially surface it, not to the user who typed it, but to whoever asks the right question later.
At that point, you have two options. You can bolt on scanning after the fact, alert when it happens, and respond. That is what security looks like when the architecture wasn't defined before the build. Or you can design the system so it cannot happen. That is a decision you can make right now.
The same logic applies to training on unapproved data, calling unsanctioned models, or connecting internal systems to providers whose data handling you haven't evaluated. Each is a recoverable problem if you catch it early. Each becomes significantly more expensive if you're unwinding it from a system that's been in production for eighteen months.
What can go wrong.
Security teams are used to thinking about what access a system has and what it can reach. The same question applies here. What does the AI application touch? What data flows into the model? What data flows out? What does the model return to users, and to which users?
In most organizations today, those questions don't have clean answers. Here's what that looks like in practice.
The customer support app accidentally exposes data it shouldn't.
A product team builds an AI assistant that helps support agents answer customer questions in real time. To make it useful, they connect it to the customer database. What they didn't think through was what that database actually contains: addresses, phone numbers, payment history. If the model can query it freely, it can surface that information in responses, potentially to the wrong user. A prompt injection attack can make it retrieve and expose data it was never intended to share. And every query the application sends to the external model provider carries that customer data as context, transmitted to servers outside the company's control, potentially logged.
The developers weren't being careless. They were optimizing for answer quality. The gap was architectural: no boundary defining what data the model could access, no controls on what could leave the environment.
A developer integrates an unapproved model.
A developer finds a new open-source LLM that performs better on the task they're working on. They integrate it quickly, because shipping is the priority. What they didn't evaluate: the model runs in an external environment they don't control. Requests are sent to a third-party provider whose data handling practices are opaque. The model may log requests for further training. Internal data passed as context, code, business logic, potentially customer information, is now leaving the environment through a channel nobody approved and nobody is watching.
This isn't a hypothetical. It's a pattern that repeats every time the approved path is slower than the alternative. With nearly 200 models available in AWS alone, the question of which model a developer reaches for is a judgment call made in the moment. Without an enforced boundary at the infrastructure level defining which endpoints can be called from which environments, the only thing standing between internal data and an unapproved model provider is a local engineering decision.
A developer pastes credentials into an internal tool.
A developer using an internal coding assistant pastes in credentials while debugging, because that's the fastest way to give the model context. The application accepted the input. The architecture didn't prevent it. Those credentials are now in logs and model context they were never meant to reach.
The architecture that makes this safe without slowing anyone down.
Before any of this can be governed, it has to be visible. Most security teams don't have a clear picture of which AI services are being called from which accounts, which models are in production, or where the data is going. The gap between intent and reality tends to grow until an incident makes it visible.
The controls that close that gap are not policies in a document. They're not guidelines distributed to engineering teams. And they're not scanning tools watching for problems that are already in production. They're architectural boundaries enforced at the infrastructure level, built into the environment the way network controls and IAM are built in, below and independent of anything running in the application layer.
Define and enforce which AI services can be called, and from which environments, across accounts. Define which model endpoints are permitted, so the question of whether a team can use a model from an unapproved provider isn't a judgment call. It's a boundary the environment enforces for them. Define what data classifications can flow into AI service calls at the resource level. Define what inputs are permitted to reach model context before the application has to handle them.
This is the same principle behind why network segmentation works better than per-application firewall rules, or why IAM boundaries work better than application-level access checks. You don't trust the thing making the request to enforce its own limits. You build the limits into the environment it's operating in.
Enforcing this consistently across clouds matters. AI workloads don't respect cloud boundaries. A team might build on AWS, use Azure AI services because a vendor integration required it, and fine-tune on GCP because that's where the data lives. A control that exists in one cloud and not another is a gap. And gaps are where the problems land.
The architecture that enables fast-moving engineering teams is not permissive everywhere. It's permissive within a defined boundaries, enforced at the level where it can't be bypassed. Within these boundaries, teams can build quickly, integrate freely, and ship with confidence. The security team gets the guarantee that the environment is architected correctly before the first customer interaction.
What we do.
We build the control plane that translates security intent into enforceable architecture across AWS, Azure, GCP, and OCI. For organizations building with AI, that means defining which services and models are permitted, what data can flow where, and enforcing those boundaries consistently across your cloud environment, so your engineering teams can move fast inside an architecture that was designed before the risk accumulated.
If your teams are building with AI and the architecture hasn't kept pace, we'd like to talk.

About Amit Megiddo
Amit Megiddo is the CEO and Co-founder of Native. He previously led product management for Amazon GuardDuty from its inception, growing it into one of the world’s most widely adopted cloud security services. Building on his AWS experience and earlier leadership roles, Amit drives Native with the same customer obsession, believing success comes from delivering the best possible product.
Continue reading

Security Architecture & Strategy
Apr 3, 2026
Security architecture has always depended on separation. In the cloud, that means more than network segmentation alone. It means defining zones, controlling what can cross between them, and enforcing the baselines each zone must hold. This piece explores the missing layer between secure-by-design principles and durable enforcement.

Secure-by-Design Perspectives
Apr 2, 2026
The threat is no longer theoretical. One low-skill actor used AI to compromise more than 600 devices in five weeks. This post explains why the real answer is not faster alerts, but security architecture that removes the conditions attackers are counting on.



