All field notes

News · 31 August 2026

AWS Moves Per-Tenant Agent Memory Isolation Out of Application Code

Amazon Bedrock AgentCore Memory now evaluates identity claims, policy, operation and namespace before gateway requests reach persistent memory. The change makes memory access a runtime authorization decision—but only on configured gateway routes and supported operations.

MP
Max PerfiljevFounder & CEO, AES · Architect of Autonomous Organizations
Read in Russian

Persistent agent memory is often described as a product feature: a system remembers a customer, a project or a prior conversation. In a multi-tenant organization, it is first an access-control problem. A useful memory that can be retrieved by the wrong principal is not organizational memory. It is a cross-boundary disclosure mechanism.

On 28 August, AWS added fine-grained access control to Amazon Bedrock AgentCore Memory and released flexible namespace variables on the same day. Together, the releases allow a configured AgentCore Gateway to evaluate OAuth or JWT identity claims, a Cedar policy, the requested Memory operation and a memory namespace before forwarding the request to Memory. This materially changes where teams can place the decision about who may read, write or delete durable agent context.

The important change is not that an agent can remember more. It is that access to memory can be made an identity-bound runtime decision rather than an assumption implemented repeatedly in application code.

What AWS changed

The fine-grained access-control path consists of an AgentCore Gateway placed in front of the Memory resource, a managed Memory connector, and a Cedar policy engine attached to that gateway. Requests arriving through this path can be authorized against authenticated OAuth/JWT claims. A policy can, for example, require an actor ID in the request to equal the subject claim of the authenticated principal. It can also limit retrieval to a namespace identified in the token.

That evaluation happens before the gateway sends a request to Memory. The documented policy model is deny-by-default: an action is not allowed unless a policy permits it. An explicit Cedar forbid takes precedence over a permit. This is a significant operational property. It lets an organization express a hard boundary that remains decisive even when a broader rule would otherwise grant access.

AWS exposes 12 Memory operations as Cedar actions through the managed connector. They include operations for creating, listing, retrieving and deleting events or memory records, as well as starting extraction jobs. Authorization can therefore distinguish not only between identities and namespaces, but also between the kind of memory operation being attempted.

The related namespace release provides the resource structure that such policies need. Long-term memories can now be scoped with application-defined dimensions such as organization, tenant, team or environment. A Memory resource supports up to five namespace keys, and runtime values can be passed through the CreateEvent API. Instead of encoding every organizational boundary into an application-specific memory identifier, teams can make those dimensions explicit in the memory layout.

Why this matters for autonomous organizations

An autonomous organization cannot treat persistent context as an ungoverned convenience store for agents. Memory influences later decisions: what an agent believes about a customer, which exception it recalls, what operational history it retrieves, and which prior work it presents as relevant. If an agent can cross a tenant, team or environment boundary while retrieving that context, the breach happens before its reasoning is visible in an answer or action.

Application-level authorization remains necessary, but it is a weak sole boundary when many agents, services and workflows access the same memory resource. Each new call path must correctly reproduce the same identity mapping, namespace checks and operation restrictions. The result is policy drift: one integration checks the actor, another checks only the tenant, and a third creates memory with an unvalidated namespace value.

The AWS design offers a more durable pattern: put a policy enforcement point directly on the route to persistent memory. The authorization question becomes concrete: may this authenticated principal perform this action against this namespace, with these request attributes? That is narrower and more testable than asking whether an application generally “handles tenant isolation.”

Memory isolation is not a property of the agent prompt. It is a property of the request path that reaches durable state.

For an autonomous organization, this separation also clarifies responsibilities. Identity systems establish who or what is making the request. Namespace design represents organizational boundaries. Cedar expresses permitted and prohibited relationships. The gateway enforces the decision before state is accessed. The agent can still reason badly, but it should not be able to bypass a boundary merely because one application path omitted a conditional check.

What did not change

This is not universal protection for every way of reaching AgentCore Memory. The OAuth/JWT-aware mechanism applies through an AgentCore Gateway configured with the Memory connector and policy engine. IAM and resource policies remain separate layers. A team that retains direct routes or introduces new routes must still understand and govern those paths.

Nor does the release make every Memory API subject to this per-record or per-namespace Cedar evaluation. AWS documents that three batch operations are not exposed as Cedar actions through this mechanism. “Fine-grained access control” should therefore be read as a defined enforcement surface, not as a blanket statement about the entire service.

Most importantly, the feature does not create tenant isolation by itself. Correct isolation still depends on trustworthy identity claims, a deliberate alignment between authenticated subjects and actor IDs, safe namespace construction, and policies switched from observation to enforcement. AWS notes migration and alignment considerations for existing actor-ID schemes. A token containing the wrong tenant value is not repaired by a good policy language; a namespace supplied without appropriate validation is not automatically trustworthy.

The release also does not govern what a model chooses to extract into memory, establish that stored memory is accurate, impose retention rules, or prove deletion. Those are separate data-governance and operational-control concerns. Authorization determines whether a request may touch memory. It does not determine whether the memory should have existed, should still exist, or should influence a decision.

A practical adoption sequence

Teams should start from the boundary they need to preserve, not from the list of API actions. Define which dimensions actually partition organizational memory: tenant may be essential, while team, environment or application may be needed to prevent accidental mixing inside a tenant. Keep the namespace model small enough to reason about; AWS allows five keys, but every additional dimension creates more policy and testing combinations.

  1. Map authenticated claims to stable organizational identifiers. Do not assume a display name, an agent-generated field or an existing actor-ID convention is an authorization-grade identity.
  2. Specify an action matrix for supported gateway operations. Separate who may create events from who may retrieve, list, delete or initiate extraction.
  3. Write Cedar policies around explicit principal, action and namespace relationships, including prohibitions that must override broad permissions.
  4. Run the policies in AWS’s recommended LOG_ONLY mode first. Inspect actual authorization outcomes and identify legacy callers, missing claims and namespace mismatches without initially blocking production traffic.
  5. Move to enforcement only after the request routes, claims and namespace values are understood. Then monitor policy denials as operational signals, not merely as security noise.

This sequence matters because memory controls are unusually easy to validate incorrectly. A policy test that uses a clean token and a clean namespace says little about a production estate with service identities, delegated agents, old actor IDs and migration traffic. The useful test set is adversarial: a valid user in the wrong tenant, a valid tenant with the wrong actor, a permitted reader attempting deletion, and a request that reaches memory outside the intended gateway path.

The architectural consequence

AWS has made a specific infrastructure capability available, not solved enterprise memory governance. But the capability points in the right direction. Persistent agent memory should be operated like any other identity-bound enterprise resource: it needs an explicit address, an authenticated requester, a constrained operation and a policy decision at the access boundary.

Organizations building multi-user agents should resist treating tenant separation as a convention embedded in prompts, session labels or scattered middleware. Those mechanisms can support a design, but they are not the boundary. The boundary is the component that can deny the request before durable context is returned or changed.

That is the practical significance of this release. It gives teams using the configured AgentCore Gateway path a way to move a recurring and fragile authorization responsibility out of each agent application and into the runtime path to memory. The next task is disciplined implementation: make identity, namespace and policy agree, then prove that the route cannot quietly evade them.

BUILD WITH AES

Turn architecture into an operating company.

AES connects strategy, tasks, organizational memory, knowledge, agents, people and approvals in one execution environment.