Safeguard
Security Guides•

How many services do we run? Build a service inventory in a week

How to build a service inventory for vulnerability scanning: five data sources to merge, fields to record, and how to find the services nobody listed.

Safeguard Security Team
4 min read

To build a service inventory, merge five sources: your deploy platform, your source control, your container registry, your DNS and gateway records, and your cloud accounts. Record a name, an owner, an environment, and a lifecycle state for each service. Anything that appears in only one source is your first list of gaps.

What a service inventory is

A service inventory is a list of every deployable unit you run, with enough fields to decide who fixes a finding and how urgent it is. It is not a diagram and it is not a wiki page that someone updated last spring. If vulnerability scanning is the question "what is wrong with our software", the inventory is the question "which software is that".

OWASP names the failure mode directly. In its API Security Top 10 entry on improper inventory management, it says microservices and cloud deployments make unnecessary API hosts common, and its prevention advice starts with inventorying all API hosts and noting the environment, intended audience and version.

The five sources to merge

SourceWhat it tells youWhat it misses
Deploy platform (for example the cluster API)What is running nowServices deployed by hand elsewhere
Source controlWhat has codeRepos that never ship, and shipped code with no repo
Container registryWhat images existWhether anything runs them
DNS and gateway configWhat is reachableInternal only services
Cloud account listingsFunctions, queues, hosted databasesAnything outside the accounts you checked

No single source is complete. The value is in the differences. A repo with no running deployment may be dead code. A running image with no repo is a bigger worry.

Fields to record

Keep the first version small. Five fields are enough to start.

  1. Name, unique and stable.
  2. Owner, a team and not a person.
  3. Environment, such as production or staging.
  4. Lifecycle, such as experimental, production or deprecated.
  5. Exposure, meaning internet facing, partner facing or internal.

Add language, base image and repository link once the first five are filled in for most services.

A one week plan

Day one, export what the deploy platform runs. Day two, export repos and registry images. Day three, pull DNS and gateway hosts. Day four, merge by name and image, and mark the mismatches. Day five, send each owning team its rows and ask for a yes, no or "do not know". Anything left as "do not know" after a week gets a named triage owner.

Do not wait for perfection. A scanner can start on the services you are sure about while the rest are chased.

Keeping it alive

Make the inventory a by-product of delivery. If a service needs a catalog entry to get a deploy slot, the list stays current without a reminder. Review the mismatch list monthly.

Try it yourself

Click through it at your own pace, or open it full screen. Look at how the dependency inventory ties each component back to the project that uses it.

Quick check

Is a service inventory the same as an SBOM?

No. The inventory lists your services. An SBOM lists the components inside one piece of software. You want both, and the inventory tells you which SBOMs you should have.

Who should own the inventory?

Platform or engineering operations usually owns the process. Each service team owns its own row.

Safeguard can discover assets and scan dependencies and SBOMs across many projects, and you can run a free scan on one repository to see the output.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.