-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Description
Hello, thanks for your work on this project!
Is your feature request related to a problem? Please describe.
In my use case I work with a large project where there is a lot of suppressions. An effort is made to keep the suppressions grouped together based on different categories, such as if they are temporary suppressions or permanent (as well as other things). This grouping is now done with comments and whitepsace in the suppressions.xml
.
-
If we take the temporary suppressions in my case as an example: The
until
attribute should be put on all temporary suppressions individually. In my case the same date is used for all temporary suppressions.
It would thus be convenient and less error prone to be able to put them in a group where theuntil
attribute is specified on group level. -
In my case there is also a need to generate documentation (where the xml file itself won't suffice) about what suppressions have been made. In this case it would also be advantegous if suppressions could be put into related groups. Then that information could be easily transformed using
xslt
.
Describe the solution you'd like
A new version of the suppression schema (1.4) with an optional suppressionGroup
element could be created.
- The
suppressionGroup
element contains suppressions. - All attributes that can be used on a
suppression
can be used onsuppresssionGroup
as well. The attributes of thesuppressionGroup
are applied to allsuppression
elements it contains. If attributes are defined in asuppression
element anyway, then those overide that of the group. - The
suppressionGroup
also has aname
attribute. It also has anotes
element for documentation similar to asuppression
. - The
suppressionGroup
element is optional. Suppressions should still be able to be individually listed. Making any xml written according to schema 1.3 valid according to schema 1.4 as well. - Only the parsing of the
suppressions.xml
is changed. Internally OWASP will representSuppressionRule
the same, and will not be aware of any groups.
Describe alternatives you've considered
- Considered if internal representation of
SuppressionRule
should be aware of the any groups, but didn't want to change that. Perhaps it could beneficial for some output of the application. - Considered if
suppression
inside asuppressionGroup
should not be allowed to override attribute set on group level, perhaps making it less likely to make manual errors. But thought that the override principle follows other patterns in computing, such as inheritance in programming languages.