The following are a list of common terms used within the purpleteam project.

Key Value
Build User The person that:
  • Creates the configuration (Job AKA buildUserConfig) for purpleteam
  • Creates test specifications if overriding desired
Emissary/Emissaries Containerised tools that do the Testers bidding, ZapAPI, Nikto, sslyze, etc. The intention is that you will be able to add your own
Job Test job defined by the config POSTed to the orchestrator /test or /testplan route. Also referred to as buildUserConfig
orchestrator Component responsible for:
  • Actioning the CLI commands
  • Receiving, validating, filtering and sanitising the Job from the CLI
  • Initiating and coordinating the activities performed by the Testers
  • Providing real-time Tester progress updates to the CLI
  • Compiling Outcomes and transferring them to the CLI
Outcomes Resources (generally in the form of files) that are generated by Testers and transferred from the orchestrator (or API in the cloud environment) to a file path location specified in the CLI configuration
Purple Team Organisation with Build Users that consume PurpleTeam
PurpleTeam This product
purpleteam The CLI component of the PurpleTeam solution, often just referred to as the CLI in the context of the PurpleTeam solution
SUT System Under Test (your application / API)
Test Run This is the back-end activity initiated by the CLI that tests the customer’s SUT. The orchestrator is responsible for coordinating this activity and the Testers
Test Session Defined by the Build User, for example you could have a Test Session for a low privileged user and one for an administrative user, both testing the same areas of the SUT
Tester/Testers The micro-services responsible for managing the different types of security testing you require (app, tls, server for example). The Testers execute the Job and interact with their Emissaries for which they are responsible. The intention is that you will be able to add your own