Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Overview

This page provides instructions on how to integrate Amazon ECR with the Unified Agent to be able to scan Docker Images.toc

Prerequisites 

  • It is assumed that you have an authorized account to Amazon ECR and can pull images from Amazon ECR.
  • You have Amazon AWS CLI installed.
  • You have Docker installed.
  • Unified Agent will scan the images on your local host (after these have been pulled from Amazon ECR).
  • Unified Agent requires to download a JAR file and a configuration file. You can download them manually or by using the steps described below.

Downloading the Unified Agent and Configuration File

...

Alternatively, you can leave the docker.excludes parameter commented if you want to scan all your image containers. 

Configuration Parameters


Attribute
Type
Description
Required
docker.includesStringSpace separated list specifying which files to include in the scan.No
docker.excludesStringSpace separated list specifying which files to exclude in the scan.No
docker.scanImagesBooleanIndicates whether or not to scan images.  No. Default is true
docker.pull.enableBooleanWhen true then pulls from all relevant registries. When false does not pull from registries.No. Default is false
docker.pull.imagesStringIndicates which images to pull. Value can be a GLOB pattern or a list of values separated by spaces.
Example:' .* github .*'  includes among others,  'github-scanner' and 'test/github'.
No. Default is '. * . * '
docker.pull.tagsStringIndicates which tags to pull. Value can include GLOB pattern or a list of values separated by space (e.g., 'latest' or GLOB pattern such as '. * 18.6 . *').No. Default is '. * . * '
docker.pull.digestStringThe content-addressable identifier called a digest. As long as the input used to generate the image is unchanged, the digest value is predictable.
Can be '.' or or a list of explicit values separated by space. Cannot include GLOB patterns such as '.98765'.
No. Default is '. * . * '
docker.delete.forceBooleanEnables to use Docker to delete images with the 'force' flag. This is required if the user pulled images that are related to other images, and in such cases a regular delete may not work properly.No. Default is false
docker.aws.enableBooleanEnables pulling Docker Images from Amazon ECR.No. Default is false
docker.aws.registryIdsString

The Registry IDs list on Amazon Web Services (the AWS 12-digit account IDs that correspond to the Amazon ECR registries). The  list must include the following:

  • Full registry IDs and no GLOB patterns. 
  • At least one registry ID. Values are space-delimited.

NOTE: Required if docker.aws.enable=true.

Yes
docker.pull.maxImagesIntegerWhiteSource stops pulling more images when the indicated value of pulled images is reached, No. Defualt is 10
docker.login.sudoBooleanDocker login requires user to use 'sudo' or 'root' user. When set to true, login is as a 'sudo' user.No. Default is true.


Running the Unified Agent

Run the Unified Agent with the modified configuration file via this command:

Code Block
languagebash
java -jar wss-unified-agent.jar -apiKey xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx -c wss-unified-agent.config

...

The scanner saves your required images and scans all the file system and installed packages.
It scans all the image layers, and handles archive files in the layers based on the value in the property 'archiveExtractionDepth'.

...