Container Image Scanning
Connect any container registry with read-only credentials and scan images for CVEs, secrets, malware, and misconfigurations — on demand, on a schedule, or straight from your CI/CD pipeline.
What Every Scan Covers
A single scan inspects each image across four dimensions
Vulnerability Scanning
OS and application package CVEs with CVSS scoring, fixed-version, and KEV/exploit context.
Secrets Detection
Find hardcoded credentials, tokens, and private keys baked into image layers.
Misconfiguration Checks
Dockerfile and image best-practice issues — root user, exposed ports, missing HEALTHCHECK.
SBOM Generation
Full software bill of materials (SPDX / CycloneDX) with per-component license risk.
Connect a Container Registry
In the app, go to Integrations → Container Registry (or Container Security → Registries → Add Registry), pick your provider, and paste read-only credentials. TigerGate verifies the connection, discovers your images, and automatically scans each one.
Always use a dedicated, read-only credential. TigerGate only ever needs to list and pull images — never push, delete, or modify. Each section below shows exactly where to create the credential and the minimum scope to grant.
Docker Hub
Username + Access TokenAccount Settings → Personal access tokens → Generate new token.
A Read-only access token (Public Repo Read-only for public images, Read for private repos). Used in place of your password.
AWS ECR
Access Key + Secret + RegionIAM → Users → Create user (programmatic), then Security credentials → Create access key.
Attach AmazonEC2ContainerRegistryReadOnly. Minimum actions: ecr:GetAuthorizationToken, ecr:BatchGetImage, ecr:GetDownloadUrlForLayer, ecr:DescribeRepositories, ecr:ListImages.
Google GCR / Artifact Registry
Service Account JSONIAM & Admin → Service Accounts → Create, then Keys → Add key → JSON.
roles/artifactregistry.reader (Artifact Registry) or roles/storage.objectViewer (legacy gcr.io). Both read-only. Paste the full JSON key.
Azure ACR
Client ID + Secret + TenantMicrosoft Entra ID → App registrations → New registration, then Certificates & secrets → New client secret.
Assign the service principal the built-in AcrPull role on the registry (Access control (IAM) → Add role assignment). AcrPull grants pull + catalog listing only.
GitHub Container Registry (GHCR)
Personal Access TokenSettings → Developer settings → Personal access tokens → Tokens (classic) → Generate new token.
The read:packages scope — the only scope needed to list and pull from ghcr.io.
GitLab Container Registry
Username + TokenPreferences → Access Tokens (personal), or Settings → Repository → Deploy tokens (project/group).
A token with the read_registry scope. Use the token as the password and the token name (or your username) as the username.
JFrog Artifactory
Access Token or API KeyAdministration → User Management → Access Tokens (identity token), or Edit Profile → Generate API Key.
A token/key for a user with only Read permission on the Docker repository. Set Docker Repo to the repo key (e.g. docker-local). Access Token preferred over API Key.
Harbor
Username + PasswordUser Profile (CLI secret), or Administration → Robot Accounts (recommended).
A robot account / user with project role Guest or pull permission only. Use the robot name as username and its secret as password.
Quay.io
OAuth / Robot TokenRepository or organization → Robot Accounts → Create Robot Account.
A robot account with Read permission on the target repositories. Use the robot token as the Token value.
Re-scan on a Schedule
New CVEs are published daily. A schedule re-runs scans automatically so vulnerabilities surface against images you already have.
Create a schedule
Go to Container Security → Schedules tab → New schedule. Pick a scope and a cron expression:
- registry — re-scan every image in a connected registry (select the registry).
- image — one repository, all tags (target = acme/app).
- image_tag — one specific tag (target = acme/app:1.4).
- pattern — a glob over repositories (target = acme/*).
Cron is the standard 5 fields, evaluated in UTC: minute hour day-of-month month day-of-week.
The next run is computed automatically from the cron expression. Toggle a schedule off to pause it without deleting.
Scan Images in Your Pipeline
Scan the image you just built before it ships. Uploaded results appear under Container Security → CI/CD Scans, each carrying its git commit.
TigerGate CLI
Image scanning is part of the same scan command — it runs whenever --image is set. With --upload the results flow into the platform.
Link findings to running cloud assets (code → cloud)
Pass build/deploy metadata so a container finding links to the running asset by image digest + commit SHA. The rule of thumb: scan the digest you deploy.
TG_IMAGE_DIGEST / TG_DEPLOY_TARGET / TG_ENVIRONMENT work as environment variables too.
Ready to Secure Your Images?
Connect a registry in minutes and scan every image for CVEs, secrets, malware, and misconfigurations.