What it is
The RBAC Access Review Template is an auditor-ready workbook that inventories every database role and grant, scores each against least-privilege, and produces a one-line attestation summary you can hand to security or a SOC 2 auditor. You enter who has what access — privilege level, last login, whether MFA is enforced, whether the grant is justified — and the workbook flags over-privileged accounts, stale logins, and the superuser sprawl that quietly accumulates between reviews. It turns a vague 'looks fine' into an evidenced, defensible review on a recurring cadence.
The workbook is built from four sheets. Instructions explains the cadence and scoring; the Access Inventory sheet takes one row per database principal, where the privilege level (1=read-only, 2=read-write, 3=DDL/schema, 4=admin, 5=superuser/DBA) drives a base weight, and MFA-enforced, justified, and days-since-login fields combine into an automatic risk score and action flag. The Role Matrix documents the intended least-privilege design for each role — what a DBA, schema owner, or application role is supposed to have — so the inventory is compared against a standard rather than against memory.
The Attestation Summary rolls the findings into the numbers a reviewer signs off on and an auditor samples against: principals reviewed, superuser-level accounts, admin-or-above accounts, stale logins idle 90-plus days, and accounts without MFA. The review is complete when the flagged and unjustified counts are explained or driven to zero. The design directly targets the slow drift that every database accumulates — a contractor's temporary grant that never expires, an app role that kept superuser 'just to unblock the launch,' a departed engineer's lingering login.
What it's used for
Security and database teams use the RBAC access review to catch privilege drift, prove least-privilege, and produce evidence for compliance. The concrete jobs it does:
- ✓ Inventorying every database principal — one row per role or login, capturing privilege level, type, days since last login, MFA/SSO status, and whether the access is justified.
- ✓ Scoring each line against least-privilege automatically — the privilege level (1=read-only through 5=superuser) sets a base weight that combines with MFA and justification into a risk score and action flag.
- ✓ Flagging over-privileged accounts — surfacing the application roles holding admin or superuser that they do not need, which are the primary target of the review.
- ✓ Catching stale logins — identifying accounts idle 90-plus days that should be disabled, including departed-engineer logins that linger as a standing risk.
- ✓ Documenting the intended role design in the Role Matrix — what each role (DBA, schema owner, application) is supposed to have — so grants are compared to a standard, not to recollection.
- ✓ Producing an attestation summary — principals reviewed, superuser and admin counts, stale logins, and no-MFA accounts — that a reviewer signs and an auditor samples against.
- ✓ Supporting SOC 2, HIPAA, and PCI access-review controls by giving the periodic, evidenced, defensible review those frameworks require on a quarterly or compliance-driven cadence.
Who uses it
Access review is a shared security control between the people who hold the grants and the people who attest to them, so the workbook is written for both operators and auditors.
Context & good to know
Database access drifts in one direction — toward more privilege — and almost never corrects itself without a deliberate control. A contractor gets a temporary grant that outlives the contract; an application role keeps superuser because revoking it felt risky; a departed engineer's login is never disabled because nobody owned the offboarding. The periodic access review is the control that catches this drift, and this workbook makes it evidenced and repeatable rather than a once-a-year scramble before the audit.
Least-privilege is the standard the review measures against, and the workbook's privilege-level scoring (1 through 5) operationalizes it. The whole point of comparing the inventory to a documented Role Matrix is that 'is this account over-privileged?' becomes answerable against an intended design rather than a reviewer's gut feel. An application role assigned level 5 when its job needs level 2 is over-provisioned by definition, and the risk score makes that visible at a glance.
Superuser sprawl is the highest-stakes finding. A superuser or DBA-level account can do anything — read every row, alter any schema, grant itself more — so every unnecessary one is an outsized risk, and they accumulate because emergencies create them and nobody removes them afterward. The attestation summary counts superuser-level and admin-or-above accounts precisely because driving those counts down, and tying each remaining one to a named human with break-glass justification, is the single most valuable outcome of the review.
Spotsaas includes this template in its database-management resources because access governance is a real, audited dimension of running a database safely, and it cuts across every engine. Whether a team manages roles in PostgreSQL, MySQL, MongoDB, or Oracle Database, the questions are identical — who has what, is it justified, is it stale, is MFA enforced — and an auditor-ready workbook turns the recurring chore of access review into a defensible artifact security and compliance can rely on.