Skip to main content

Dedicated Engines for Teams/Projects/Scans

You can now limit an engine to take scans of specific teams or projects.

In addition, Technical Services will be able to use this feature to improve their Dynamic Engines solutions by making sure a new engine they initialize dynamically will be reserved for a specific scan.

Database

A new database table:

EngineServersDedications

EngineServerId

bigint

DedicatedItemType

int

1=scan, 2=project, 3=team

DedicatedItemId

bigint

scan id, project id or team id

REST API

[GET] /sast/engineServers

[GET] /sast/engineServers/{id}

New node dedications

[
  {
    "id": 1,
    "name": "string",
    ...
    "dedications": [
      {
        "itemType": "project",
        "itemId": "5",
        "itemName": "Project X",   // there will be no item name for "scan" item type
        "isDeprecated": "false"   // true if the project / team /scan no longer exists or falged as deprecated
      }  
    ]
  }
]

[POST] /sast/engineServers

[PUT] /sast/engineServers/{id}

[PATCH] /sast/engineServers/{id}

New node dedications:

{
  "name": "string",
  "uri": "string",
  ...
  "dedications": [
    {
      "itemType": "scan",
      "itemId": "1000005",
      "isDeprecated": "false"   // true if the project / team /scan no longer exists or falged as deprecated
    }  
  ]
}

In case the itemId value does not exist, return http error code 404 - not found with error message:

  • Team with Id {id} does not exist

  • Project with id {id} was not found

  • Scan request with id {id} was not found

Other REST changes may be required for the portal display and edit:

[GET] /projects

The parameter “ProjectName” will now allow “%” for the autocomplete feature.

For example, “a%” will return all projects whose names start with “a”.

In Access Control REST (/cxrestapi/auth/swagger/index.html) for Teams, it requires all teams whose name starts with a string.

[DELETE] /sast/engineServers

will now also delete rows from the EngineServersDedications table

Portal

6501696178.png
6502351604.png

Scans Manager

The Scans Manager will not put a scan on an engine with dedications unless one of the dedications fits the specific scan/project/team.

When finding an engine for a scan, the current order of the engines is by load factor (least busy first). We need to change it so that the first sort index will be the dedication. Engines with dedication to scans will be first, then engines with dedication to project, and then engines with dedication to teams. The load factor will be the second sort index.