Skip to content

/AWS1/IF_IN2=>CREATEFILTER()

About CreateFilter

Creates a filter resource using specified filter criteria. When the filter action is set to SUPPRESS this action creates a suppression rule.

Method Signature

METHODS /AWS1/IF_IN2~CREATEFILTER
  IMPORTING
    !IV_ACTION TYPE /AWS1/IN2FILTERACTION OPTIONAL
    !IV_DESCRIPTION TYPE /AWS1/IN2FILTERDESCRIPTION OPTIONAL
    !IO_FILTERCRITERIA TYPE REF TO /AWS1/CL_IN2FILTERCRITERIA OPTIONAL
    !IV_NAME TYPE /AWS1/IN2FILTERNAME OPTIONAL
    !IT_TAGS TYPE /AWS1/CL_IN2TAGMAP_W=>TT_TAGMAP OPTIONAL
    !IV_REASON TYPE /AWS1/IN2FILTERREASON OPTIONAL
  RETURNING
    VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_in2createfilterrsp
  RAISING
    /AWS1/CX_IN2ACCESSDENIEDEX
    /AWS1/CX_IN2BADREQUESTEX
    /AWS1/CX_IN2INTERNALSERVEREX
    /AWS1/CX_IN2SERVICEQUOTAEXCDEX
    /AWS1/CX_IN2THROTTLINGEX
    /AWS1/CX_IN2VALIDATIONEX
    /AWS1/CX_IN2CLIENTEXC
    /AWS1/CX_IN2SERVEREXC
    /AWS1/CX_RT_TECHNICAL_GENERIC
    /AWS1/CX_RT_SERVICE_GENERIC.

IMPORTING

Required arguments:

iv_action TYPE /AWS1/IN2FILTERACTION /AWS1/IN2FILTERACTION

Defines the action that is to be applied to the findings that match the filter.

io_filtercriteria TYPE REF TO /AWS1/CL_IN2FILTERCRITERIA /AWS1/CL_IN2FILTERCRITERIA

Defines the criteria to be used in the filter for querying findings.

iv_name TYPE /AWS1/IN2FILTERNAME /AWS1/IN2FILTERNAME

The name of the filter. Minimum length of 3. Maximum length of 64. Valid characters include alphanumeric characters, dot (.), underscore (_), and dash (-). Spaces are not allowed.

Optional arguments:

iv_description TYPE /AWS1/IN2FILTERDESCRIPTION /AWS1/IN2FILTERDESCRIPTION

A description of the filter.

it_tags TYPE /AWS1/CL_IN2TAGMAP_W=>TT_TAGMAP TT_TAGMAP

A list of tags for the filter.

iv_reason TYPE /AWS1/IN2FILTERREASON /AWS1/IN2FILTERREASON

The reason for creating the filter.

RETURNING

oo_output TYPE REF TO /aws1/cl_in2createfilterrsp /AWS1/CL_IN2CREATEFILTERRSP

Examples

Syntax Example

This is an example of the syntax for calling the method. It includes every possible argument and initializes every possible value. The data provided is not necessarily semantically accurate (for example the value "string" may be provided for something that is intended to be an instance ID, or in some cases two arguments may be mutually exclusive). The syntax shows the ABAP syntax for creating the various data structures.

DATA(lo_result) = lo_client->createfilter(
  io_filtercriteria = new /aws1/cl_in2filtercriteria(
    it_awsaccountid = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_cloudimagearchitecture = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_cloudimagedigest = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_cloudimageinusecount = VALUE /aws1/cl_in2numberfilter=>tt_numberfilterlist(
      (
        new /aws1/cl_in2numberfilter(
          iv_lowerinclusive = '0.1'
          iv_upperinclusive = '0.1'
        )
      )
    )
    it_cloudimagelastinuseat = VALUE /aws1/cl_in2datefilter=>tt_datefilterlist(
      (
        new /aws1/cl_in2datefilter(
          iv_endinclusive = '20150101000000.0000000'
          iv_startinclusive = '20150101000000.0000000'
        )
      )
    )
    it_cloudimagepushedat = VALUE /aws1/cl_in2datefilter=>tt_datefilterlist(
      (
        new /aws1/cl_in2datefilter(
          iv_endinclusive = '20150101000000.0000000'
          iv_startinclusive = '20150101000000.0000000'
        )
      )
    )
    it_cloudimageregistry = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_cloudimagerepositoryname = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_cloudimagetags = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_cloudprovider = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_cloudprovideraccountid = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_cloudproviderorgid = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_cloudproviderregion = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_cloudsvrlsfuncexecrole = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_cloudsvrlsfunclastmodat = VALUE /aws1/cl_in2datefilter=>tt_datefilterlist(
      (
        new /aws1/cl_in2datefilter(
          iv_endinclusive = '20150101000000.0000000'
          iv_startinclusive = '20150101000000.0000000'
        )
      )
    )
    it_cloudsvrlsfunctionname = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_cloudsvrlsfunctionruntime = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_cloudvmimagereference = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_cloudvmnetworkid = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_cloudvmsubnetids = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_coderepositoryprojectname = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_coderepositorypvdrtype = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_codevulnerabilitydetect00 = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_codevulnerabilitydetect01 = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_codevulnerabilityfilepath = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_componentid = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_componenttype = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_ec2instanceimageid = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_ec2instancesubnetid = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_ec2instancevpcid = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_ecrimagearchitecture = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_ecrimagehash = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_ecrimageinusecount = VALUE /aws1/cl_in2numberfilter=>tt_numberfilterlist(
      (
        new /aws1/cl_in2numberfilter(
          iv_lowerinclusive = '0.1'
          iv_upperinclusive = '0.1'
        )
      )
    )
    it_ecrimagelastinuseat = VALUE /aws1/cl_in2datefilter=>tt_datefilterlist(
      (
        new /aws1/cl_in2datefilter(
          iv_endinclusive = '20150101000000.0000000'
          iv_startinclusive = '20150101000000.0000000'
        )
      )
    )
    it_ecrimagepushedat = VALUE /aws1/cl_in2datefilter=>tt_datefilterlist(
      (
        new /aws1/cl_in2datefilter(
          iv_endinclusive = '20150101000000.0000000'
          iv_startinclusive = '20150101000000.0000000'
        )
      )
    )
    it_ecrimageregistry = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_ecrimagerepositoryname = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_ecrimagetags = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_epssscore = VALUE /aws1/cl_in2numberfilter=>tt_numberfilterlist(
      (
        new /aws1/cl_in2numberfilter(
          iv_lowerinclusive = '0.1'
          iv_upperinclusive = '0.1'
        )
      )
    )
    it_exploitavailable = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_findingarn = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_findingstatus = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_findingtype = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_firstobservedat = VALUE /aws1/cl_in2datefilter=>tt_datefilterlist(
      (
        new /aws1/cl_in2datefilter(
          iv_endinclusive = '20150101000000.0000000'
          iv_startinclusive = '20150101000000.0000000'
        )
      )
    )
    it_fixavailable = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_inspectorscore = VALUE /aws1/cl_in2numberfilter=>tt_numberfilterlist(
      (
        new /aws1/cl_in2numberfilter(
          iv_lowerinclusive = '0.1'
          iv_upperinclusive = '0.1'
        )
      )
    )
    it_lambdafunclastmodifiedat = VALUE /aws1/cl_in2datefilter=>tt_datefilterlist(
      (
        new /aws1/cl_in2datefilter(
          iv_endinclusive = '20150101000000.0000000'
          iv_startinclusive = '20150101000000.0000000'
        )
      )
    )
    it_lambdafunctionexecrolearn = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_lambdafunctionlayers = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_lambdafunctionname = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_lambdafunctionruntime = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_lastobservedat = VALUE /aws1/cl_in2datefilter=>tt_datefilterlist(
      (
        new /aws1/cl_in2datefilter(
          iv_endinclusive = '20150101000000.0000000'
          iv_startinclusive = '20150101000000.0000000'
        )
      )
    )
    it_networkprotocol = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_portrange = VALUE /aws1/cl_in2portrangefilter=>tt_portrangefilterlist(
      (
        new /aws1/cl_in2portrangefilter(
          iv_begininclusive = 123
          iv_endinclusive = 123
        )
      )
    )
    it_relatedvulnerabilities = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_resourceid = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_resourcetags = VALUE /aws1/cl_in2mapfilter=>tt_mapfilterlist(
      (
        new /aws1/cl_in2mapfilter(
          iv_comparison = |string|
          iv_key = |string|
          iv_value = |string|
        )
      )
    )
    it_resourcetype = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_severity = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_title = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_updatedat = VALUE /aws1/cl_in2datefilter=>tt_datefilterlist(
      (
        new /aws1/cl_in2datefilter(
          iv_endinclusive = '20150101000000.0000000'
          iv_startinclusive = '20150101000000.0000000'
        )
      )
    )
    it_vendorseverity = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_vulnerabilityid = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_vulnerabilitysource = VALUE /aws1/cl_in2stringfilter=>tt_stringfilterlist(
      (
        new /aws1/cl_in2stringfilter(
          iv_comparison = |string|
          iv_value = |string|
        )
      )
    )
    it_vulnerablepackages = VALUE /aws1/cl_in2packagefilter=>tt_packagefilterlist(
      (
        new /aws1/cl_in2packagefilter(
          io_architecture = new /aws1/cl_in2stringfilter(
            iv_comparison = |string|
            iv_value = |string|
          )
          io_epoch = new /aws1/cl_in2numberfilter(
            iv_lowerinclusive = '0.1'
            iv_upperinclusive = '0.1'
          )
          io_filepath = new /aws1/cl_in2stringfilter(
            iv_comparison = |string|
            iv_value = |string|
          )
          io_name = new /aws1/cl_in2stringfilter(
            iv_comparison = |string|
            iv_value = |string|
          )
          io_release = new /aws1/cl_in2stringfilter(
            iv_comparison = |string|
            iv_value = |string|
          )
          io_sourcelambdalayerarn = new /aws1/cl_in2stringfilter(
            iv_comparison = |string|
            iv_value = |string|
          )
          io_sourcelayerhash = new /aws1/cl_in2stringfilter(
            iv_comparison = |string|
            iv_value = |string|
          )
          io_version = new /aws1/cl_in2stringfilter(
            iv_comparison = |string|
            iv_value = |string|
          )
        )
      )
    )
  )
  it_tags = VALUE /aws1/cl_in2tagmap_w=>tt_tagmap(
    (
      VALUE /aws1/cl_in2tagmap_w=>ts_tagmap_maprow(
        key = |string|
        value = new /aws1/cl_in2tagmap_w( |string| )
      )
    )
  )
  iv_action = |string|
  iv_description = |string|
  iv_name = |string|
  iv_reason = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv_filterarn = lo_result->get_arn( ).
ENDIF.