2019-09-26 20:55:43 +00:00
# Waivers (beta)
2019-09-25 22:37:39 +00:00
2019-09-26 21:15:00 +00:00
Waivers is a mechanism to mark controls as "waived" for various reasons, and to control the running and/or reporting of those controls.
2019-09-26 20:55:43 +00:00
It uses a YAML input file that identifies:
2019-09-25 22:37:39 +00:00
2019-09-26 20:55:43 +00:00
1. which controls are waived
2019-09-26 21:15:00 +00:00
2. a description of why it is waived
3. (optionally) whether they should be skipped from running
2019-09-26 20:55:43 +00:00
4. (optionally) an expiration date for the waiver
2019-09-26 21:15:00 +00:00
NOTE: This mechanism is currently in beta and is intended to be ingested and maintained by Chef Automate UI.
2019-09-25 22:37:39 +00:00
## Usage
To use waivers, you must have a correctly formatted input file and
2019-09-26 21:15:00 +00:00
invoke `inspec exec` with `--waiver-file [path]` .
2019-09-25 22:37:39 +00:00
```
2019-09-26 21:15:00 +00:00
% inspec exec --waiver-file waivers.yaml path/to/profile
2019-09-25 22:37:39 +00:00
```
## File Format
2019-09-26 20:55:43 +00:00
Waiver files are [input files ](https://www.inspec.io/docs/reference/inputs/ ) with a specific format:
2019-09-25 22:37:39 +00:00
```yaml
2019-09-26 21:15:00 +00:00
control_id:
2019-09-25 22:37:39 +00:00
expiration_date: YYYY-MM-DD
2019-10-08 20:45:55 +00:00
run: false
2019-09-25 22:37:39 +00:00
justification: "reason for waiving this control"
```
+ `expiration_date` is optional. Absence means the waiver is permanent.
2019-10-08 20:45:55 +00:00
+ `run` is optional. If present and true, the control will run and be
reported, but failures in it won't make the overall run fail. If absent or false, the control will not be run. You may use any of yes, no, true or false.
2019-09-25 22:37:39 +00:00
+ `justification` can be any text you want and might include a reason
as well as who signed off on the waiver.
2019-09-26 20:55:43 +00:00
### Examples:
2019-09-25 22:37:39 +00:00
```yaml
waiver_control_1_2_3:
2019-10-23 05:39:10 +00:00
expiration_date: 2019-10-15
2019-09-25 22:37:39 +00:00
justification: Not needed until Q3. @secteam
xccdf_org.cisecurity.benchmarks_rule_1.1.1.4_Ensure_mounting_of_hfs_filesystems_is_disabled:
2019-10-23 04:52:49 +00:00
expiration_date: 2020-03-01
2019-09-25 22:37:39 +00:00
justification: "This might be a bug in the test. @qateam "
2019-10-08 08:03:40 +00:00
run: false
2019-09-26 21:15:00 +00:00
```