Practical tools for system, network, security, and operations administrators.

CLD-C0050 · IAM & Governance

Writing IAM Policies

Draft one IAM policy. Do not grant star permissions, and do not apply it during the reading.

Updated 25 October 2026 · How-To

This is an original planning guide. It is not a vendor manual, an official standard, or legal advice. Example addresses use documentation ranges. Review every command before you paste it.

What this hour is for

Writing IAM Policies uses a generator, a simulator helper, and an ARN parser on names you already hold. The simulator does not change the account. Do not grant *. Do not create an access key. Do not apply the policy during the reading.

Write the account, project, or repository you administer, the name of this change, and the time. A second change waits until this line has been read back.

The browser tool drafts text or reads a paste you already hold. It does not log in, it does not scan, and it does not apply.

192.0.2.10/24, gateway 192.0.2.1, 198.51.100.0/24, 203.0.113.0/24, and 2001:db8::/32 are documentation. example.com is a documentation name. A sample password is replaced.

The change you can finish

Apply nothing while you are writing the note. When the lab window opens, it is one change on the account named in the ticket. Read the draft, then the account, then decide.

Rollback is the previous file, the previous plan, or the lab resource you can delete because it was only a lab.

  1. Write the account you administer.
  2. Name the one action the ticket allows.
  3. Parse only an ARN you already hold.
  4. Delete any star you did not intend.
  5. Do not apply.
  6. Stop.

Mistakes that outlive the statement

Writing IAM Policies goes wrong in a small set of ways. The list is here so the ticket can forbid them before the window.

Decisions to write down

One decision for Writing IAM Policies: The account is yours. One action is the window. Star is absent or a person removed it. Nothing is applied. And no access key is created.

Checks before you call it done

Confirm this before you call the change done: The account is written. The draft was read. Nothing was applied. No access key was created. And a second person can say the one action. If one of those fails, stop.

# IAM draft. Do not apply.
# Do not grant *.
# Do not create an access key.

Before you leave the account

Writing IAM Policies ends when the account in the note is the account in the ticket. If it is not, stop.

The draft stays a draft until a person has read the names in it. A generator does not log in, does not apply, and does not scan.

192.0.2.10/24, gateway 192.0.2.1, 198.51.100.0/24, 203.0.113.0/24, and 2001:db8::/32 are documentation. example.com is a documentation name. A sample password is replaced. It is not a password you keep. 10.0.0.0/16 is a sample prefix, not a network you publish unless you already use it.

prompt-for-this is a reminder that a secret is missing. It is not an access key, a token, or a password you save. An Azure secret draft may contain a sample password. Replace it. Do not file it.

One change is the window. If two things move and the result is wrong, you will not know which one did it.

If the same step fails twice, stop for the day. Restore the copy you took first.

A second person reads the account and the change aloud. If they cannot find them in the ticket, the note is not done.

This page is a planning guide. It is not a vendor manual, not an official standard, not legal advice, and not an audit opinion. You do not apply it against an account you do not administer.

Tools for this guide

These tools run in the browser on this site. They do not log into your machines.

More in this cluster

The pillar for this page, and the next published pages filed with it.