File tree Expand file tree Collapse file tree 4 files changed +61
-0
lines changed
Expand file tree Collapse file tree 4 files changed +61
-0
lines changed Original file line number Diff line number Diff line change 1+ export default class CxDastScan {
2+ scanId : string ;
3+ initiator : string ;
4+ scanType : string ;
5+ created : string ;
6+ riskRating : string ;
7+ startTime : string ;
8+ scanDuration : number ;
9+ lastStatus : string ;
10+ statistics : string ;
11+
12+ static parseDastScan ( resultObject : any ) : CxDastScan [ ] {
13+ let scans : CxDastScan [ ] = [ ] ;
14+
15+ const parseDastScanResult = ( result : any ) : CxDastScan => {
16+ const scan = new CxDastScan ( ) ;
17+ scan . scanId = result . ScanID ;
18+ scan . initiator = result . Initiator ;
19+ scan . scanType = result . ScanType ;
20+ scan . created = result . Created ;
21+ scan . riskRating = result . RiskRating ;
22+ scan . startTime = result . StartTime ;
23+ scan . scanDuration = result . ScanDuration ;
24+ scan . lastStatus = result . LastStatus ;
25+ scan . statistics = result . Statistics ;
26+ return scan ;
27+ }
28+
29+ if ( resultObject instanceof Array ) {
30+ scans = resultObject . map ( ( result : any ) => parseDastScanResult ( result ) ) ;
31+ } else {
32+ const scan = parseDastScanResult ( resultObject )
33+ scans . push ( scan ) ;
34+ }
35+ return scans ;
36+ }
37+ }
38+
Original file line number Diff line number Diff line change @@ -31,6 +31,8 @@ export enum CxConstants {
3131 SUB_CMD_VALIDATE = "validate" ,
3232 CMD_PROJECT = "project" ,
3333 CMD_DAST_ENVIRONMENTS = 'dast-environments' ,
34+ CMD_DAST_SCANS = 'dast-scans' ,
35+ ENVIRONMENT_ID = '--environment-id' ,
3436 SUB_CMD_BRANCHES = "branches" ,
3537 CMD_SCAN = "scan" ,
3638 SUB_CMD_SHOW = "show" ,
@@ -100,6 +102,7 @@ export enum CxConstants {
100102 SCAN_CONTAINERS_REALTIME = "CxContainersRealtime" ,
101103 PROJECT_TYPE = "CxProject" ,
102104 DAST_ENVIRONMENT_TYPE = 'CxDastEnvironment' ,
105+ DAST_SCAN_TYPE = 'CxDastScan' ,
103106 PREDICATE_TYPE = "CxPredicate" ,
104107 CODE_BASHING_TYPE = "CxCodeBashing" ,
105108 KICS_REALTIME_TYPE = "CxKicsRealTime" ,
Original file line number Diff line number Diff line change @@ -285,6 +285,21 @@ export class CxWrapper {
285285 return await exec . executeCommands ( this . config . pathToExecutable , commands , CxConstants . DAST_ENVIRONMENT_TYPE ) ;
286286 }
287287
288+ async dastScansList ( environmentId : string , filters : string ) : Promise < CxCommandOutput > {
289+ const validated_filters = this . filterArguments ( filters ) ;
290+ const commands : string [ ] = (
291+ [
292+ CxConstants . CMD_DAST_SCANS ,
293+ CxConstants . SUB_CMD_LIST ,
294+ CxConstants . ENVIRONMENT_ID ,
295+ environmentId
296+ ] as string [ ]
297+ ) . concat ( validated_filters ) ;
298+ commands . push ( ...this . initializeCommands ( true ) ) ;
299+ const exec = new ExecutionService ( ) ;
300+ return await exec . executeCommands ( this . config . pathToExecutable , commands , CxConstants . DAST_SCAN_TYPE ) ;
301+ }
302+
288303 async projectBranches ( projectId : string , filters : string ) : Promise < CxCommandOutput > {
289304 // Verify and add possible branch filter by name
290305 const validated_filters = this . filterArguments ( CxConstants . BRANCH_NAME + filters )
Original file line number Diff line number Diff line change @@ -28,6 +28,7 @@ import CxSecretsResult from "../secrets/CxSecrets";
2828import CxContainerRealtimeResult from "../containersRealtime/CxContainerRealtime" ;
2929import CxIacResult from "../iacRealtime/CxIac" ;
3030import CxDastEnvironment from "../dast/CxDastEnvironment" ;
31+ import CxDastScan from "../dast/CxDastScan" ;
3132
3233let skipValue = false ;
3334const fileSourceFlag = "--file-source"
@@ -234,6 +235,10 @@ export class ExecutionService {
234235 const environments = CxDastEnvironment . parseDastEnvironment ( resultObject ) ;
235236 cxCommandOutput . payload = environments ;
236237 break ;
238+ case CxConstants . DAST_SCAN_TYPE :
239+ const dastScans = CxDastScan . parseDastScan ( resultObject ) ;
240+ cxCommandOutput . payload = dastScans ;
241+ break ;
237242 case CxConstants . CODE_BASHING_TYPE :
238243 const codeBashing = CxCodeBashing . parseCodeBashing ( resultObject ) ;
239244 cxCommandOutput . payload = codeBashing ;
You can’t perform that action at this time.
0 commit comments