product updateAmazon Web Services

AWS adds Policy Engine and Lambda interceptors to Bedrock AgentCore gateway for agent security controls

TL;DR

Amazon Web Services launched Policy Engine and Lambda interceptors for Bedrock AgentCore gateway, enabling enterprises to control which tools AI agents can access and validate requests dynamically. The Policy Engine uses Cedar declarative policy language for deterministic access decisions, while Lambda interceptors run custom code before or after each tool call for validation, token exchange, and response filtering.

3 min read
0

AWS adds Policy Engine and Lambda interceptors to Bedrock AgentCore gateway for agent security controls

Amazon Web Services launched Policy Engine and Lambda interceptors for Bedrock AgentCore gateway, addressing a core security challenge in enterprise AI agent deployments: controlling which tools agents can access at runtime.

The new features provide two complementary security mechanisms. The Policy Engine uses Cedar, AWS's open-source policy language, to define deterministic access control rules. Cedar policies evaluate each request against a principal, action, and resource with optional conditions, producing auditable allow/deny decisions. Lambda interceptors run custom code before or after tool calls, enabling dynamic validation, payload enrichment, token exchange, and response filtering.

How the security model works

When an AI agent attempts to call a tool through AgentCore gateway, the request interceptor Lambda function executes first, transforming the request by replacing bearer tokens with tenant-scoped credentials and injecting additional context. The Policy Engine then evaluates the transformed request against defined Cedar policies before permitting tool invocation.

According to AWS, the architecture follows a deny-by-default model. Without an explicit permit policy, all requests are blocked. Organizations define baseline permit rules, then layer forbid rules on top to carve out specific restrictions.

Lakehouse data agent implementation

AWS demonstrated the security model with a lakehouse data agent that queries insurance claims data stored in Amazon S3 Tables (Apache Iceberg) through Amazon Athena and AWS Lake Formation. The agent serves three user roles: policyholders (viewing own claims only), adjusters (managing assigned claims), and administrators (full data access including audit logs).

The implementation uses DynamoDB to store role-to-tool access mappings, tenant IAM role configurations, and user geography data. AWS Lake Formation enforces row-level and column-level security at query time, automatically scoping results to what each caller's IAM role permits.

In the reference implementation, policyholders are blocked from calling the get_claims_summary tool through a Cedar forbid rule:

forbid(
  principal is AgentCore::OAuthUser,
  action == AgentCore::Action::"lakehouse-mcp-target___get_claims_summary",
  resource == AgentCore::Gateway::"<gateway_arn>"
) when {
  principal.hasTag("cognito:groups") && 
  principal.getTag("cognito:groups") like "*policyholders*"
};

The forbid rule takes precedence over baseline permit policies, blocking the specific tool while leaving other access intact.

Geography-based access control

The system combines Lambda interceptors and Policy Engine to implement geography-based access restrictions. The Lambda interceptor dynamically validates user geography from DynamoDB and injects it as request context. The Policy Engine then evaluates Cedar policies against that enriched context to enforce data residency rules.

Authentication flows through Amazon Cognito, which issues JWT bearer tokens passed to the agent. AgentCore Runtime validates tokens and establishes isolated sessions per user. All policy decisions and tool invocations stream to Amazon CloudWatch for compliance auditing.

What this means

The launch addresses a fundamental governance problem in enterprise AI platforms managing hundreds of agents accessing thousands of tools across different teams and business units. Unlike traditional applications with fixed logic, LLM-powered agents decide at runtime which tools to invoke, making advance call graph auditing impossible.

AWS recommends starting with policy enforcement mode set to LOG_ONLY, writing all policy decisions to CloudWatch without blocking requests. This allows organizations to validate policies against production traffic patterns before enforcing restrictions. The combination of deterministic Cedar policies and dynamic Lambda interceptors provides layered security architecture for controlling agent behavior at scale.

Related Articles

product update

AWS launches dataset management in Bedrock AgentCore for versioned agent test suites

Amazon Web Services introduced dataset management in Bedrock AgentCore, enabling developers to build versioned test suites with immutable baselines for agent evaluation. The feature supports predefined scenarios with ground truth assertions and user simulation scenarios where LLM-backed actors conduct multi-turn conversations.

product update

Mistral AI launches Le Chat Enterprise with new Medium 3 model, enterprise search and agent builders

Mistral AI has launched Le Chat Enterprise, powered by its new Mistral Medium 3 model. The platform includes enterprise search across Google Drive, Sharepoint, OneDrive, Gmail and Google Calendar, no-code agent builders, custom data connectors, and hybrid deployment options including self-hosted and cloud.

product update

ChatGPT app adds long-press gesture to switch intelligence levels mid-conversation

OpenAI added a long-press gesture to ChatGPT's mobile app that lets users select intelligence levels (Instant, Thinking, Extended) before sending a message. The update also includes a table of contents feature for conversations with 5+ responses and improvements to the GPT-5.5 Instant model.

product update

GitHub Copilot switches to token-based billing June 1, some users report costs jumping from $50 to $3,000

Microsoft is ending GitHub Copilot's flat-rate subscription model in favor of token-based billing starting June 1. Some developers report monthly costs rising from approximately $29-50 to $750-3,000, while others claim the increases only affect inefficient "vibe-coders" who iterate excessively without clear direction.

Comments

Loading...