Skip to main content
← All controls
AC-2 / A.9.2.1 / CIS-5.4 NIST SP 800-53 Rev 5

Inventory of all service accounts

Demonstrate that the organization maintains a complete, accurate, and current inventory of all service accounts with sufficient metadata to support access reviews, privilege management, and accountability.

Description

What this control does

This control requires organizations to maintain a comprehensive, current inventory of all service accounts—non-human identities used by applications, scripts, scheduled tasks, and services to authenticate and execute operations. The inventory must include attributes such as account name, purpose, associated systems/applications, owner/custodian, privilege level, authentication method, and last review date. Maintaining this inventory prevents orphaned accounts from persisting after application decommissioning, enables privilege review and least-privilege enforcement, and provides visibility into non-human access pathways that are frequently exploited due to weak credential management or excessive permissions.

Control objective

What auditing this proves

Demonstrate that the organization maintains a complete, accurate, and current inventory of all service accounts with sufficient metadata to support access reviews, privilege management, and accountability.

Associated risks

Risks this control addresses

  • Orphaned service accounts remain active after application retirement, providing persistent backdoor access with no monitoring or ownership
  • Service accounts with excessive privileges enable lateral movement and privilege escalation following initial compromise of a low-value system
  • Hard-coded or embedded credentials in service accounts allow attackers to extract and reuse credentials across multiple systems
  • Lack of ownership attribution prevents timely response when service account credentials are compromised or misused
  • Service accounts exempted from password rotation policies become high-value targets with static, discoverable credentials
  • Undocumented service accounts bypass change control, logging, and monitoring processes designed for user accounts
  • Shared service accounts across multiple applications obscure audit trails and prevent accurate attribution of privileged actions

Testing procedure

How an auditor verifies this control

  1. Obtain the organization's current service account inventory spreadsheet, database export, or identity governance system report showing all service accounts across all platforms (Active Directory, cloud IAM, databases, applications).
  2. Request documentation of the methodology used to identify service accounts, including query scripts, filters, or automated discovery tools employed.
  3. Select a representative sample of 15-25 service accounts spanning different platforms, privilege levels, and business functions from the inventory.
  4. For each sampled account, verify its existence and attributes by inspecting the source system directly (e.g., querying Active Directory, examining cloud IAM console, reviewing database user tables).
  5. Cross-reference the sampled accounts against system documentation, application architecture diagrams, and CMDB records to validate the documented purpose and associated systems are accurate.
  6. Identify at least three recently decommissioned applications or systems from change management records and verify that associated service accounts were documented in the inventory and properly disabled or removed.
  7. Review the inventory completeness by executing independent queries or scans on a subset of platforms to identify service accounts not present in the provided inventory, documenting any discrepancies.
  8. Verify that mandatory inventory attributes (minimally: account name, purpose, owner, privilege level, last review date) are populated for all accounts and that ownership can be traced to accountable individuals or teams.
Evidence required Service account inventory export or report with all documented attributes and metadata; screenshots or query results from source systems (Active Directory, cloud IAM, database management consoles) confirming existence and properties of sampled accounts; change management tickets or application decommissioning records linked to service account lifecycle actions; independent scan or discovery tool output used to validate inventory completeness; documentation of inventory update procedures and responsible parties.
Pass criteria The service account inventory is comprehensive (no material gaps identified through independent sampling), accurate (sampled accounts match source system attributes with ≤5% discrepancy rate), current (updated within the organization's defined review period, typically quarterly), and includes all mandatory attributes with identifiable account owners for ≥95% of entries.

Where this control is tested

Audit programs including this control