AWS IAM controls what AWS services a role can call. It doesn't understand agent actions, capability tokens, or per-action spend limits. Here's how KYA fills the gap.
AWS IAM controls which AWS APIs a role can call. It has no concept of 'this agent can charge up to €50 per transaction' or 'this agent can write to the CRM but only for deals under €10k'. The granularity stops at the API level.
KYA adds an action-level permission layer on top of any infrastructure — AWS or otherwise.
| Feature | KYA | Alternative |
|---|---|---|
| Scope | Any action (tool call, API, external service) | AWS APIs only |
| Granularity | Per action with spend + rate limits | Per API method |
| Business logic policies | Yes (max_per_tx, max_per_day, conditions) | No |
| Agent identity | Ed25519 cryptographic identity | IAM Role ARN |
| Short-lived tokens | Yes, 5-min capability tokens | STS tokens (15min–12h) |
| Audit log | Hash-chain, every agent action | CloudTrail (API calls only) |
| Multi-cloud / on-premise | Yes | AWS only |
| Open source | Yes (Apache 2.0) | Proprietary |
KYA and AWS IAM work together: use IAM to grant your agent the AWS roles it needs, and use KYA to enforce business-level policies on top. KYA intercepts every tool call before it reaches the AWS SDK.
Add identity & permissions to your AI agents in under 5 minutes.