DevTools Hub

Search tools

Search for a developer tool

AWS

IAM Policy Viewer

Paste an IAM policy JSON document and see each statement explained in plain English.

Part of the AWS Toolkit
Statement 1(AllowS3Read)Allow

Allows 2 actions (s3:GetObject, s3:ListBucket) on 2 resources.

Action
s3:GetObjects3:ListBucket
Resource
arn:aws:s3:::my-bucketarn:aws:s3:::my-bucket/*
No structural issues found.

What this tool does

An IAM policy document is JSON, but reading raw JSON to answer "what does this statement actually allow?" is slow. Paste a policy in and each statement gets a plain-English summary, plus its actions, resources, principal, and conditions broken out individually — and a check for a few genuine structural problems per AWS's own JSON policy element reference.

What gets checked

What this tool deliberately doesn't claim to check: whether a Resource is required for a given statement. It often is — but a role trust policy's sts:AssumeRole statement is a common, entirely valid exception that has no Resource at all, and there's no reliable way to tell from the JSON alone whether a given statement is one of these exceptions.

FAQ

Does this tell me if the policy actually grants the access I expect?

No — full policy evaluation also depends on any other policies attached to the same identity, permissions boundaries, service control policies, and resource-based policies on the other side of the call. This tool only explains what this one document says, structurally. See IAM Policy Basics for the three-rule core of how AWS actually decides allow or deny. For an ARN referenced in a Resource element, see ARN Parser or What Is an ARN?.

Can I build a policy from scratch here instead?

Use IAM Policy Generator — pick an effect, actions, and resources, and it writes the JSON for you.

This statement uses * for Action or Resource — is that a problem?

Not structurally, but it's worth a second look. A wildcard grants everything that matches it, which is easy to reach for and hard to walk back later. See Least Privilege Explained for what narrowing one down actually looks like.

Is my policy document sent anywhere?

No — parsing happens entirely in your browser. Nothing you paste here is ever sent to a server.

Related tools