Skip to content
Calcrivo

Cloud IAM Risk Calculator

Score cloud IAM risk from administrator ratio, wildcard policies, stale principals, ageing access keys, MFA coverage and cross-account trust.

Inputs

principals
principals
policies
policies
principals
keys
%
roles

IAM Risk Score

35.4/ 100

Risk Level

Low

Administrative Principal Ratio

2.82%

Wildcard Policy Ratio

13.5%

Stale Principal Ratio

24.7%

Privileged Blast Radius

33principals

Least-Privilege Headroom

64.6points

Highest-Value Fix

Add an ExternalId condition to every cross-account trust policy

Step by step

  1. Values used

    Total IAM principals (users plus roles) = 850 principals; Principals with administrative privilege = 24 principals; Customer-managed policies = 310 policies; Policies containing Action:* or Resource:* = 42 policies; Principals with no activity for 90 days = 210 principals; Access keys older than 90 days = 46 keys; MFA coverage across human identities = 78 %; Cross-account trust roles with no ExternalId condition = 9 roles

  2. Cloud IAM Risk

    Risk = capped points for administrator ratio (×2.5), wildcard policy ratio (×0.25), stale principal ratio (×0.2), stale key ratio (×0.6), missing MFA (×0.15) and unconditioned cross-account trust (×1.5 per role), summed and clamped to 0–100.

  3. Blast radius

    Privileged blast radius = administrative principals + cross-account trust roles — the count of identities whose compromise reaches the whole account.

  4. IAM Risk Score

    = 35.4 / 100

  5. Risk Level

    = Low

  6. Administrative Principal Ratio

    = 2.82

  7. Wildcard Policy Ratio

    = 13.5

  8. Stale Principal Ratio

    = 24.7

  9. Privileged Blast Radius

    = 33 principals

How it works

Each dimension is converted to a ratio, scaled and capped so no single input can consume the whole score, then the capped points are added. The caps are deliberately uneven: the administrator ratio can take 25 points because standing administrator access is the single largest determinant of blast radius, while stale principals can only take 15. Almost every cloud breach starts with a credential, and the difference between one compromised key and a full account takeover is the privilege attached to that key plus whether anyone would have noticed it was idle for a year.

Formulas

Cloud IAM Risk

Risk = capped points for administrator ratio (×2.5), wildcard policy ratio (×0.25), stale principal ratio (×0.2), stale key ratio (×0.6), missing MFA (×0.15) and unconditioned cross-account trust (×1.5 per role), summed and clamped to 0–100.

adminRatio
Administrative principals ÷ all principals × 100
wildcardRatio
Policies with Action:* or Resource:* ÷ all managed policies × 100
trustPts
1.5 points per cross-account role missing an ExternalId, capped at 15

Blast radius

Privileged blast radius = administrative principals + cross-account trust roles — the count of identities whose compromise reaches the whole account.

adminPrincipals
Principals with AdministratorAccess or an equivalent policy
crossAccountRoles
Roles trusted by a principal in another account

Frequently Asked Questions

How is Cloud IAM Risk calculated?

Risk = capped points for administrator ratio (×2.5), wildcard policy ratio (×0.25), stale principal ratio (×0.2), stale key ratio (×0.6), missing MFA (×0.15) and unconditioned cross-account trust (×1.5 per role), summed and clamped to 0–100. Each dimension is converted to a ratio, scaled and capped so no single input can consume the whole score, then the capped points are added. The caps are deliberately uneven: the administrator ratio can take 25 points because standing administrator access is the single largest determinant of blast radius, while stale principals can only take 15.

Why does Cloud IAM Risk matter?

Almost every cloud breach starts with a credential, and the difference between one compromised key and a full account takeover is the privilege attached to that key plus whether anyone would have noticed it was idle for a year.

What values do I need to enter?

This calculator takes 8 inputs: Total IAM principals (users plus roles), Principals with administrative privilege, Customer-managed policies, Policies containing Action:* or Resource:*, Principals with no activity for 90 days, Access keys older than 90 days, MFA coverage across human identities, Cross-account trust roles with no ExternalId condition. The pre-filled defaults are a realistic starting point — replace them with figures from your own environment for a result you can act on.

What counts as an administrative principal?

Anything that can grant itself more privilege: AdministratorAccess, iam:* on all resources, iam:PassRole with a wildcard, or the ability to update its own trust policy. Count roles as well as users — an EC2 instance profile with iam:* is an administrator that never logs in.

Why penalise cross-account roles so heavily?

A cross-account role without an ExternalId condition can be assumed by any principal in the trusted account, including one an attacker creates. It turns your blast radius into somebody else's IAM hygiene, which is why each such role costs 1.5 points.

You might also need