emasser 3.10.0 → 3.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. checksums.yaml +4 -4
  2. data/.env-example +18 -12
  3. data/.github/workflows/anchore-syft.yml +38 -0
  4. data/.github/workflows/codeql-analysis.yml +4 -4
  5. data/.github/workflows/gh-pages.yml +1 -1
  6. data/.github/workflows/push-to-docker-mail.yml +6 -7
  7. data/.github/workflows/push-to-docker.yml +6 -6
  8. data/.github/workflows/release.yml +1 -1
  9. data/.github/workflows/rubocop.yml +2 -2
  10. data/.github/workflows/test-cli.yml +5 -5
  11. data/.mergify.yml +11 -11
  12. data/.rubocop.yml +1 -1
  13. data/CHANGELOG.md +58 -2
  14. data/Dockerfile +6 -4
  15. data/Gemfile.lock +108 -64
  16. data/README.md +23 -22
  17. data/docs/features.md +682 -539
  18. data/emasser.gemspec +19 -13
  19. data/images/emasser_architecture.png +0 -0
  20. data/lib/emasser/configuration.rb +136 -35
  21. data/lib/emasser/constants.rb +4 -4
  22. data/lib/emasser/delete.rb +145 -15
  23. data/lib/emasser/errors.rb +9 -0
  24. data/lib/emasser/get.rb +891 -251
  25. data/lib/emasser/help/approvalCac_post_mapper.md +6 -5
  26. data/lib/emasser/help/approvalPac_post_mapper.md +1 -5
  27. data/lib/emasser/help/artifacts_del_mapper.md +2 -2
  28. data/lib/emasser/help/artifacts_post_mapper.md +23 -34
  29. data/lib/emasser/help/artifacts_put_mapper.md +28 -9
  30. data/lib/emasser/help/cloudresource_post_mapper.md +4 -3
  31. data/lib/emasser/help/controls_put_mapper.md +24 -16
  32. data/lib/emasser/help/hardware_post_mapper.md +41 -0
  33. data/lib/emasser/help/hardware_put_mapper.md +42 -0
  34. data/lib/emasser/help/milestone_del_mapper.md +1 -1
  35. data/lib/emasser/help/milestone_post_mapper.md +3 -1
  36. data/lib/emasser/help/milestone_put_mapper.md +1 -8
  37. data/lib/emasser/help/poam_del_mapper.md +1 -1
  38. data/lib/emasser/help/poam_post_mapper.md +40 -14
  39. data/lib/emasser/help/poam_put_mapper.md +43 -18
  40. data/lib/emasser/help/software_post_mapper.md +59 -0
  41. data/lib/emasser/help/software_put_mapper.md +60 -0
  42. data/lib/emasser/help/staticcode_post_mapper.md +0 -4
  43. data/lib/emasser/help/testresults_post_mapper.md +8 -11
  44. data/lib/emasser/output_converters.rb +64 -46
  45. data/lib/emasser/post.rb +603 -231
  46. data/lib/emasser/put.rb +453 -193
  47. data/lib/emasser/version.rb +1 -1
  48. metadata +51 -33
  49. data/images/emasser_architecture.jpg +0 -0
  50. data/images/emasser_diagram-Page-3.jpg +0 -0
data/docs/features.md CHANGED
@@ -1,32 +1,36 @@
1
- # emasser CLI Features
1
+ # eMASSer CLI Features
2
2
 
3
3
  ## Environment Variables
4
- To facilitate setting the required environment variables the `emasser `CLI utilized the zero-dependency module to load these variables from a `.env` file.
4
+ To facilitate setting the required environment variables the `eMASSer `CLI utilized the zero-dependency module to load these variables from a `.env` file.
5
5
 
6
6
  ### Configuring the `.env` File
7
7
  An `.env-example` file is provided with the required and optional fields.
8
8
 
9
9
  Modify the `.env_example` as necessary and save it as a `.env` file.
10
10
 
11
- Place the file on the path where the `emasser` command is executed.
11
+ Place the file on the path where the `eMASSer` command is executed.
12
12
 
13
13
  ### Required and Optional Environment Variables
14
14
  The following environment variables are required:
15
- * EMASSER_API_KEY=`<API key>`
16
- * EMASSER_USER_UID=`<unique identifier for the API Key (EMASSER_API_KEY)`
17
- * EMASSER_HOST_URL=`<FQDN of the eMASS server>`
18
- * EMASSER_KEY_FILE_PATH=`<path to your eMASS key in PEM format>`
19
- * EMASSER_CERT_FILE_PATH=`<path to your eMASS certificate in PEM format>`
20
- * EMASSER_KEY_FILE_PASSWORD=`<password for the key given in EMASSER_KEY_FILE_PATH>`
21
-
15
+ * EMASSER_API_KEY=`<The eMASS API key (api-key)>`
16
+ * EMASSER_HOST_URL=`<The Full Qualified Domain Name (FQDN) for the eMASS server>`
17
+ * EMASSER_KEY_FILE_PATH=`<The eMASS key.pem private key file in PEM format (.pem)>`
18
+ * EMASSER_CERT_FILE_PATH=`<The eMASS client.pem certificate file in PEM format (.pem)>`
19
+ * EMASSER_KEY_FILE_PASSWORD=`<Secret phrase used to protect the encryption key>`
20
+
21
+ Certain eMASS integrations may not require (the majority do) this variable:
22
+ * EMASSER_USER_UID=`<The eMASS User Unique Identifier (user-uid)>`
23
+
22
24
  The following environment variables are optional*:
23
- * EMASSER_CLIENT_SIDE_VALIDATION=`<client side validation - true or false (default true)>`
24
- * EMASSER_VERIFY_SSL=`<verify SSL - true or false (default true)>`
25
- * EMASSER_VERIFY_SSL_HOST=`<verify host SSL - true or false (default true)>`
26
- * EMASSER_DEBUGGING=`<set debugging - true or false (default false)>`
27
- * EMASSER_CLI_DISPLAY_NULL=`<display null value fields - true or false (default true)>`
28
- * EMASSER_POCH_TO_DATETIME=`<convert epoch to data/time value - true or false (default false)>`
29
-
25
+ * EMASSER_CLIENT_SIDE_VALIDATION=`<Client side validation - true or false (default true)>`
26
+ * EMASSER_VERIFY_SSL=`<Verify SSL - true or false (default true)>`
27
+ * EMASSER_VERIFY_SSL_HOST=`<Verify host SSL - true or false (default true)>`
28
+ * EMASSER_DEBUGGING=`<Set debugging - true or false (default false)>`
29
+ * EMASSER_CLI_DISPLAY_NULL=`<Display null value fields - true or false (default true)>`
30
+ * EMASSER_EPOCH_TO_DATETIME=`<Convert epoch to data/time value - true or false (default false)>`
31
+ * EMASSER_DOWNLOAD_DIR=`<Directory where exported files are saved (default eMASSerDownloads)>?`
32
+
33
+
30
34
  \* If not provided defaults are used
31
35
 
32
36
  The proper format to set these variables in the `.env` files is as follows:
@@ -34,92 +38,106 @@ The proper format to set these variables in the `.env` files is as follows:
34
38
  export [VARIABLE_NAME]='value'
35
39
  ```
36
40
  ***NOTE***
37
- `emasser` requires authentication to an eMASS instance as well as authorization to use the eMASS API. This authentication and authorization is **not** a function of `emasser` and needs to be accomplished with the eMASS instances owner organization. Further information about eMASS credential requirements refer to [Defense Counterintelligence and Security Agency](https://www.dcsa.mil/is/emass/) about eMASS access.
41
+ `eMASSer` requires authentication to an eMASS instance as well as authorization to use the eMASS API. This authentication and authorization is **not** a function of `eMASSer` and needs to be accomplished with the eMASS instances owner organization. Further information about eMASS credential requirements refer to [Defense Counterintelligence and Security Agency](https://www.dcsa.mil/is/emass/) about eMASS access.
38
42
 
39
43
  ---
40
- ## Common emasser Endpoint Requests Information
44
+ ## Common eMASSer Endpoint Requests Information
41
45
  - To invoke any boolean parameters use --parameterName for TRUE and --no-parameterName for FALSE
42
- - The eMASS API provides the capability of updating multiple entries within several endpoints, however the `emasser` CLI, in some cases only supports updating one entry at the time.
43
-
44
- ## Invoking emasser CLI Commands
45
-
46
- The CLI invoke commands listed in this document shows them when executing from the source code (after a pull from GitHub). Please reference the [`emasser` README](https://mitre.github.io/emasser/) on how to invoke the CLI using other available executables (gem or docker).
47
-
48
- ## API Endpoints Provided
49
-
50
- ### GET
51
- * [/api](#get-test-connection)
52
- * [/api/system](#get-system)
53
- * [/api/systems](#get-systems)
54
- * [/api/systems/{systemId}](#get-system)
55
- * [/api/system-roles](#get-roles)
56
- * [/api/system-roles/{roleCategory}](#get-roles)
57
- * [/api/systems/{systemId}/controls](#get-controls)
58
- * [/api/systems/{systemId}/test-results](#get-testresults)
59
- * [/api/systems/{systemId}/poams](#get-poams)
60
- * [/api/systems/{systemId}/poams/{poamId}](#get-poams)
61
- * [/api/systems/{systemId}/poams/{poamId}/milestones](#get-milestones)
62
- * [/api/systems/{systemId}/poams/{poamId}/milestones/{milestoneId})](#get-milestones)
63
- * [/api/systems/{systemId}/artifacts](#get-artifacts)
64
- * [/api/systems/{systemId}/artifacts-export](#get-artifacts)
65
- * [/api/systems/{systemId}/approval/cac](#get-cac)
66
- * [/api/systems/{systemId}/approval/pac](#get-pac)
67
- * [/api/cmmc-assessments](#get-cmmc)
68
- * [/api/workflow-definitions](#get-workflow_definitions)
69
- * [/api/systems/{systemId}/workflow-instances](#get-workflow_instances)
70
- * [/api/dashboards/system-status-details](#get-dashboards)
71
- * [/api/dashboards/system-control-compliance-summary](#get-dashboards)
72
- * [/api/dashboards/system-security-controls-details](#get-dashboards)
73
- * [/api/dashboards/system-assessment-procedures-details](#get-dashboards)
74
- * [/api/dashboards/system-poam-summary](#get-dashboards)
75
- * [/api/dashboards/system-poam-details](#get-dashboards)
76
- * [/api/dashboards/system-artifacts-summary](#get-dashboards)
77
- * [/api/dashboards/system-artifacts-details](#get-dashboards)
78
- * [/api/dashboards/system-hardware-summary](#get-dashboards)
79
- * [/api/dashboards/system-hardware-details](#get-dashboards)
80
- * [/api/dashboards/system-sensor-hardware-summary](#get-dashboards)
81
- * [/api/dashboards/system-sensor-hardware-details](#get-dashboards)
82
- * [/api/dashboards/system-software-summary](#get-dashboards)
83
- * [/api/dashboards/system-software-details](#get-dashboards)
84
- * [/api/dashboards/system-ports-protocols-summary](#get-dashboards)
85
- * [/api/dashboards/system-ports-protocols-details](#get-dashboards)
86
- * [/api/dashboards/system-conmon-integration-status-summary](#get-dashboards)
87
- * [/api/dashboards/system-associations-details](#get-dashboards)
88
- * [/api/dashboards/user-system-assignments-details](#get-dashboards)
89
- * [/api/dashboards/system-privacy-summary](#get-dashboards)
90
- * [/api/dashboards/va-omb-fisma-saop-summary](#get-dashboards)
91
- * [/api/dashboards/va-system-aa-summary](#get-dashboards)
92
- * [/api/dashboards/va-system-a2-summary](#get-dashboards)
93
- * [/api/dashboards/va-system-pl-109-reporting-summary](#get-dashboards)
94
- * [/api/dashboards/va-system-fisma-inventory-summary](#get-dashboards)
95
- * [/api/dashboards/va-system-fisma-inventory-crypto-summary](#get-dashboards)
96
- * [/api/dashboards/va-system-threat-risks-summary](#get-dashboards)
97
- * [/api/dashboards/va-system-threat-sources-details](#get-dashboards)
98
- * [/api/dashboards/va-system-threat-architecture-details](#get-dashboards)
46
+ - The eMASS API provides the capability of updating multiple entries within several endpoints, however the `eMASSer` CLI, in some cases only supports updating one entry at the time.
47
+
48
+ ## Invoking eMASSer CLI Commands
49
+
50
+ The CLI invoke commands listed in this document shows them when executing from the source code (after a pull from GitHub). Please reference the [`eMASSer` README](https://mitre.github.io/emasser/) on how to invoke the CLI using other available executables (gem or docker).
51
+
52
+ ## GET Endpoints
53
+ #### Test Connection
54
+ * [/api](#get-test-connection)
55
+
56
+ #### System
57
+ * [/api/system](#get-system)
58
+ * [/api/systems](#get-systems)
59
+ * [/api/systems/{systemId}](#get-system)
60
+
61
+ #### System Roles
62
+ * [/api/system-roles](#get-roles)
63
+ * [/api/system-roles/{roleCategory}](#get-roles)
64
+
65
+ #### Controls
66
+ * [/api/systems/{systemId}/controls](#get-controls)
67
+
68
+ #### Test Results
69
+ * [/api/systems/{systemId}/test-results](#get-test_results)
70
+
71
+ #### POA&Ms
72
+ * [/api/systems/{systemId}/poams](#get-poams)
73
+ * [/api/systems/{systemId}/poams/{poamId}](#get-poams)
74
+
75
+ #### Milestones
76
+ * [/api/systems/{systemId}/poams/{poamId}/milestones](#get-milestones)
77
+ * [/api/systems/{systemId}/poams/{poamId}/milestones/{milestoneId})](#get-milestones)
78
+
79
+ #### Artifacts
80
+ * [/api/systems/{systemId}/artifacts](#get-artifacts)
81
+ * [/api/systems/{systemId}/artifacts-export](#get-artifacts)
82
+
83
+ #### CAC
84
+ * [/api/systems/{systemId}/approval/cac](#get-cac)
85
+
86
+ #### PAC
87
+ * [/api/systems/{systemId}/approval/pac](#get-pac)
88
+
89
+ #### Hardware Baseline
90
+ * [/api/systems/{systemId}/hw-baseline](#get-hardware)
91
+
92
+ #### Software Baseline
93
+ * [/api/systems/{systemId}/sw-baseline](#get-software)
94
+
95
+ #### CMMC Assessment
96
+ * [/api/cmmc-assessments](#get-cmmc)
97
+
98
+ #### Workflow Definition
99
+ * [/api/workflow-definitions](#get-workflow_definitions)
100
+
101
+ #### Workflow Instances
102
+ * [/api/systems/{systemId}/workflow-instances](#get-workflow_instances)
103
+
104
+ ### [Dashboards](#get-dashboards)
105
+
99
106
 
100
- ### POST
107
+ ## POST Endpoints
108
+ * [/api/api-key](#post-register-cert)
101
109
  * [/api/systems/{systemId}/test-results](#post-test_results)
102
110
  * [/api/systems/{systemId}/poam](#post-poams)
103
111
  * [/api/systems/{systemId}/poam/{poamId}/milestones](#post-milestones)
104
112
  * [/api/systems/{systemId}/artifacts](#post-artifacts)
105
113
  * [/api/systems/{systemId}/approval/cac](#post-cac)
106
114
  * [/api/systems/{systemId}/approval/pac](#post-pac)
107
- * [/api/systems/{systemId}/static-code-scans](#post-static_code_scan)
115
+ * [/api/systems/{systemId}/hw-baseline](#post-hardware)
116
+ * [/api/systems/{systemId}/sw-baseline](#post-software)
117
+ * [/api/systems/{systemId}/device-scan-results](#post-device-scan-results)
108
118
  * [/api/systems/{systemId}/cloud-resource-results](#post-cloud_resource)
109
119
  * [/api/systems/{systemId}/container-scan-results](#post-container)
120
+ * [/api/systems/{systemId}/static-code-scans](#post-static_code_scan)
110
121
 
111
- ### PUT
122
+
123
+ ## PUT Endpoints
112
124
  * [/api/systems/{systemId}/controls](#put-controls)
113
125
  * [/api/systems/{systemId}/poams](#put-poams)
114
126
  * [/api/systems/{systemId}/poams/{poamId}/milestones](#put-milestones)
115
127
  * [/api/systems/{systemId}/artifacts](#put-artifacts)
128
+ * [/api/systems/{systemId}/hw-baseline](#put-hardware)
129
+ * [/api/systems/{systemId}/sw-baseline](#put-software)
116
130
 
117
- ### DELETE
131
+ ## DELETE Endpoints
118
132
  * [/api/systems/{systemId}/poams](#delete-poams)
119
133
  * [/api/systems/{systemId}/poams/{poamId}/milestones](#delete-milestones)
120
134
  * [/api/systems/{systemId}/artifacts](#delete-artifacts)
135
+ * [/api/systems/{systemId}/hw-baseline](#delete-hardware)
136
+ * [/api/systems/{systemId}/sw-baseline](#delete-software)
137
+ * [/api/systems/{systemId}/cloud-resource-results](#delete-cloud-resource)
138
+ * [/api/systems/{systemId}/container-scan-results](#delete-container)
121
139
 
122
- ## Endpoints CLI help
140
+ # Endpoints CLI help
123
141
 
124
142
  Each CLI endpoint command has several layers of help.
125
143
  - Using `help` after a `get, put, post, or delete` command lists all available endpoint calls. The following command would list all available `GET` endpoints commands.
@@ -128,15 +146,16 @@ Each CLI endpoint command has several layers of help.
128
146
  $ bundle exec exe/emasser get help
129
147
  Commands:
130
148
  emasser get artifacts # Get system Artifacts
131
- emasser get cac # Get location of one or many controls in...
149
+ emasser get cac # Get location of one or many controls in CAC
132
150
  emasser get cmmc # Get CMMC assessment information
133
151
  emasser get controls # Get system Controls
134
152
  emasser get dashboards # Get dashboard information
135
- emasser get help [COMMAND] # Describe subcommands or one specific su...
153
+ emasser get hardware # Get one or many hardware assets in a system
136
154
  emasser get milestones # Get system Milestones
137
155
  emasser get pac # Get status of active workflows in a system
138
156
  emasser get poams # Get system Poams
139
157
  emasser get roles # Get all system roles or by category Id
158
+ emasser get software # Get one or many software assets in a system
140
159
  emasser get system # Get a system ID given name/owner, or ge...
141
160
  emasser get systems # Get all systems
142
161
  emasser get test # Test connection to the configured eMASS...
@@ -148,26 +167,26 @@ Each CLI endpoint command has several layers of help.
148
167
  ```bash
149
168
  $ bundle exec exe/emasser get help artifacts
150
169
  commands:
151
- emasser get artifacts export --filename=FILENAME --systemId=N # Get artifa...
152
- emasser get artifacts forSystem --systemId=N # Get all sy...
153
- emasser get artifacts help [COMMAND] # Describe s...
170
+ emasser get artifacts export -f, --filename=FILENAME -s, --systemId=N # Get artifa...
171
+ emasser get artifacts forSystem -s, --systemId=N # Get all sy...
172
+ emasser get artifacts help [COMMAND] # Describe s...
154
173
  ```
155
174
  - Using `help` after any command lists all available options. The following command would list all available options for the `get artifacts export` endpoint command.
156
175
  ```bash
157
176
  $ bundle exec exe/emasser get artifacts help export
158
177
  Usage:
159
- emasser get artifacts export --filename=FILENAME --systemId=N
178
+ emasser get artifacts export -f, --filename=FILENAME -s, --systemId=N
160
179
 
161
180
  Options:
162
- --systemId=N # A numeric value representing the system identification
163
- --filename=FILENAME # The artifact file name
164
- [--compress], [--no-compress] # BOOLEAN - true or false.
181
+ -s, --systemId=N # A numeric value representing the system identification
182
+ -f, --filename=FILENAME # The artifact file name
183
+ -C, |compress], |no-compress] # BOOLEAN - true or false.
184
+ -o, |printToStdout=PRINTTOSTDOUT] # Output file content to terminal - not valid for zip files
165
185
  ```
166
186
  **The same format is applicable for POST, PUT and DELETE requests as well, however there may be additional help content**
167
187
 
168
188
 
169
189
  ## Usage - GET
170
-
171
190
  ### ```get test connection```
172
191
  ---
173
192
  The Test Connection endpoint provides the ability to verify connection to the web service.
@@ -177,8 +196,7 @@ The Test Connection endpoint provides the ability to verify connection to the we
177
196
  A return of success from the call indicates that the CLI can reach the configure server URL.
178
197
  References [Required Environment Variables](#required-environment-variables) for the necessary environment variables.
179
198
 
180
- [top](#api-endpoints-provided)
181
-
199
+ [top](#test-connection)
182
200
  ### ```get system```
183
201
 
184
202
  ---
@@ -188,7 +206,6 @@ There are two commands provided by the get system:
188
206
 
189
207
  - The `get system id` - returns system ID's based on the system `name` or `owner`
190
208
  - The `get system byId` - returns the system content for parameter system ID
191
-
192
209
  ### get system id
193
210
  Retrieves a system identification based on the SYSTEM_NAME (name) or SYSTEM_OWNER (systemOwner) fields.
194
211
 
@@ -199,8 +216,6 @@ To invoke the `get system id` use the following command:
199
216
  If using a platform that has `awk` installed the following command can be used to return only the system Id:
200
217
 
201
218
  $ bundle exec exe/emasser get system --system_name "system name" --system_owner "system owner" | awk "{ print $1 }"
202
-
203
-
204
219
  ### get system byId
205
220
  Retrieves the system content for provided identification (ID) number. To invoke the endpoint use the following command:
206
221
 
@@ -210,17 +225,16 @@ Retrieves the system content for provided identification (ID) number. To invoke
210
225
 
211
226
  |parameter | type or values |
212
227
  |-------------|:----------------------------------|
213
- |--systemId |Integer - Unique system identifier |
228
+ |-s, --systemId |Integer - Unique system identifier |
214
229
 
215
230
  - Optional parameters are:
216
231
 
217
232
  |parameter | type or values |
218
233
  |------------------------|:----------------------------------------|
219
- |--includePackage |BOOLEAN - true or false |
220
- |--policy |Possible values: diacap, rmf, reporting |
221
-
222
- [top](#api-endpoints-provided)
234
+ |-I, --includePackage |BOOLEAN - true or false |
235
+ |-p, --policy |Possible values: diacap, rmf, reporting |
223
236
 
237
+ [top](#system)
224
238
  ### ```get systems```
225
239
 
226
240
  ----
@@ -234,17 +248,17 @@ To retrieve controls use the following command:
234
248
 
235
249
  |parameter | type or values |
236
250
  |------------------------|:----------------------------------------------------------------------------|
237
- |--coamsId |Cyber Operational Attributes Management System (COAMS) string Id |
238
- |--ditprId |DoD Information Technology (IT) Portfolio Repository (DITPR) string id |
239
- |--includeDecommissioned |BOOLEAN - true or false |
240
- |--includeDitprMetrics |BOOLEAN - true or false |
241
- |--includePackage |BOOLEAN - true or false |
242
- |--policy |Possible values: diacap, rmf, reporting |
243
- |--registrationType |Possible values: assessAndAuthorize, assessOnly, guest, regular, functional, |
244
- | | cloudServiceProvider, commonControlProvider |
245
- |--reportsForScorecard |BOOLEAN - true or false |
251
+ |-c, --coamsId |Cyber Operational Attributes Management System (COAMS) string Id |
252
+ |-t, --ditprId |DoD Information Technology (IT) Portfolio Repository (DITPR) string id |
253
+ |-r, --registrationType |Possible values: assessAndAuthorize, assessOnly, guest, regular, functional, |
254
+ | | cloudServiceProvider, commonControlProvider |
255
+ |-I, --includeDecommissioned |BOOLEAN - true or false |
256
+ |-M, --includeDitprMetrics |BOOLEAN - true or false |
257
+ |-P, --includePackage |BOOLEAN - true or false |
258
+ |-p, --policy |Possible values: diacap, rmf, reporting |
259
+ |_S, --reportsForScorecard |BOOLEAN - true or false |
246
260
 
247
- [top](#api-endpoints-provided)
261
+ [top](#system)
248
262
  ### ```get roles```
249
263
 
250
264
  ----
@@ -255,138 +269,140 @@ There are two get endpoints for system roles:
255
269
  ```
256
270
  - byCategory - Retrieves roles based on the following required parameter:
257
271
  ````
258
- $ bundle exec exe/emasser get roles byCategory --roleCategory=ROLECATEGORY --role=ROLE
272
+ $ bundle exec exe/emasser get roles byCategory -c, --roleCategory=ROLECATEGORY -r, --role=ROLE
259
273
  ````
260
274
  - required parameters are:
261
275
 
262
276
  |parameter | type or values |
263
277
  |:---------------|:------------------------------------------|
264
- |--roleCategory |Possible values: PAC, CAC, Other |
265
- |--role |Possible values: AO, Auditor, Artifact Manager, C&A Team, IAO, ISSO, PM/IAM, SCA, User Rep (View Only), Validator (IV&V)|
278
+ |-c, --roleCategory |Possible values: PAC, CAC, Other |
279
+ |-r, --role |Possible values: AO, Auditor, Artifact Manager, C&A Team, IAO, ISSO, PM/IAM, SCA, User Rep (View Only), Validator (IV&V)|
266
280
 
267
281
  - optional parameter are:
268
282
 
269
283
  |parameter | type or values |
270
284
  |------------------------|:----------------------------------------|
271
- |--policy |Possible values: diacap, rmf, reporting |
272
- |--includeDecommissioned |BOOLEAN - true or false |
285
+ |-p, --policy |Possible values: diacap, rmf, reporting |
286
+
273
287
 
274
- [top](#api-endpoints-provided)
288
+ [top](#system-roles)
275
289
  ### ```get controls```
276
290
 
277
291
  ----
278
292
  To retrieve controls use the following command:
279
293
 
280
- $ bundle exec exe/emasser get controls forSystem --systemId=SYSTEMID
294
+ $ bundle exec exe/emasser get controls forSystem -s, --systemId=SYSTEMID
281
295
 
282
296
  - required parameter is:
283
297
 
284
298
  |parameter | type or values |
285
299
  |-------------|:----------------------------------|
286
- |--systemId |Integer - Unique system identifier |
300
+ |-s, --systemId |Integer - Unique system identifier |
287
301
 
288
302
  - optional parameter is:
289
303
 
290
- |parameter | type or values |
291
- |-------------|:------------------------------------------|
292
- |--acronyms |The system acronym(s) e.g "AC-1, AC-2" - if not provided all controls for systemId are returned |
304
+ |parameter | type or values |
305
+ |---------------|:------------------------------------------|
306
+ |-a, --acronyms |The system acronym(s) e.g "AC-1, AC-2" - if not provided all controls for systemId are returned |
293
307
 
294
- [top](#api-endpoints-provided)
308
+ [top](#controls)
295
309
  ### ```get test_results```
296
310
 
297
311
  ----
298
312
  To retrieve test results use the following command:
299
313
 
300
- $ bundle exec exe/emasser get test_results forSystem --systemId=SYSTEMID
314
+ $ bundle exec exe/emasser get test_results forSystem -s, --systemId=SYSTEMID
301
315
 
302
316
  - required parameter is:
303
317
 
304
318
  |parameter | type or values |
305
319
  |-------------|:----------------------------------|
306
- |--systemId |Integer - Unique system identifier |
320
+ |-s, --systemId |Integer - Unique system identifier |
307
321
 
308
322
  - optional parameters are:
309
323
 
310
324
  |parameter | type or values |
311
325
  |-------------------|:------------------------------------------|
312
- |--controlAcronyms |String - The system acronym(s) e.g "AC-1, AC-2" |
313
- |--ccis |String - The system CCIS string numerical value |
314
- |--latestOnly |BOOLEAN - true or false|
326
+ |-a, --controlAcronyms |String - The system acronym(s) e.g "AC-1, AC-2" |
327
+ |-p, --assessmentProcedures|String - The system Security Control Assessment Procedure e.g "AC-1.1,AC-1.2"|
328
+ |-c, --ccis |String - The system CCIS string numerical value |
329
+ |-L, --latestOnly |BOOLEAN - true or false|
315
330
 
316
- [top](#api-endpoints-provided)
331
+ [top](#test-results)
317
332
  ### ```get poams```
318
333
 
319
334
  ----
320
335
  There are two get endpoints for system poams:
321
336
  - forSystem - Retrieves all poams for specified system ID
322
337
  ````
323
- $ bundle exec exe/emasser get poams forSystem --systemId=SYSTEMID
338
+ $ bundle exec exe/emasser get poams forSystem -s, --systemId=SYSTEMID
324
339
  ````
325
340
  - required parameter is:
326
341
 
327
342
  |parameter | type or values |
328
343
  |-------------|:----------------------------------|
329
- |--systemId |Integer - Unique system identifier |
344
+ |-s, --systemId |Integer - Unique system identifier |
330
345
 
331
346
  - optional parameters are:
332
347
 
333
348
  |parameter | type or values |
334
349
  |-------------------------------|:----------------------------------------------|
335
- |--scheduledCompletionDateStart |Date - Unix time format (e.g. 1499644800) |
336
- |--scheduledCompletionDateEnd |Date - Unix time format (e.g. 1499990400) |
337
- |--controlAcronyms |String - The system acronym(s) e.g "AC-1, AC-2"|
338
- |--ccis |String - The system CCIS string numerical value|
339
- |--systemOnly |BOOLEAN - true or false|
350
+ |-d, --scheduledCompletionDateStart |Date - Unix time format (e.g. 1499644800) |
351
+ |-e, --scheduledCompletionDateEnd |Date - Unix time format (e.g. 1499990400) |
352
+ |-a, --controlAcronyms |String - The system acronym(s) e.g "AC-1, AC-2"|
353
+ |-p, --assessmentProcedures |String - The system Security Control Assessment Procedure e.g "AC-1.1,AC-1.2"|
354
+ |-c, --ccis |String - The system CCIS string numerical value|
355
+ |-Y, --systemOnly |BOOLEAN - true or false|
340
356
 
341
357
 
342
358
  - byPoamId - Retrieves all poams for specified system and poam ID
343
359
  ````
344
- $ bundle exec exe/emasser get poams byPoamId --systemId=SYSTEMID --poamId=POAMID
360
+ $ bundle exec exe/emasser get poams byPoamId -s, --systemId=SYSTEMID -p, --poamId=POAMID
345
361
  ````
346
362
  - required parameters are:
347
363
 
348
364
  |parameter | type or values |
349
365
  |-------------|:----------------------------------|
350
- |--systemId |Integer - Unique system identifier |
351
- |--poamId |Integer - Unique poam identifier |
366
+ |-s, --systemId |Integer - Unique system identifier |
367
+ |-p, --poamId |Integer - Unique poam identifier |
352
368
 
353
- [top](#api-endpoints-provided)
369
+ [top](#poams)
354
370
  ### ```get milestones```
355
371
 
356
372
  ----
357
373
  There are two get endpoints for system milestones:
358
374
  - byPoamId - Retrieves milestone(s) for specified system and poam ID
359
375
  ````
360
- $ bundle exec exe/emasser get milestones byPoamId --systemId=SYSTEMID --poamId=POAMID
376
+ $ bundle exec exe/emasser get milestones byPoamId -s, --systemId=SYSTEMID -p, --poamId=POAMID
361
377
  ````
362
378
  - required parameters are:
363
379
 
364
380
  |parameter | type or values |
365
381
  |-------------|:----------------------------------|
366
- |--systemId |Integer - Unique system identifier |
367
- |--poamId |Integer - Unique poam identifier |
382
+ |-s, --systemId |Integer - Unique system identifier |
383
+ |-p, --poamId |Integer - Unique poam identifier |
368
384
 
369
385
  - optional parameters are:
370
386
 
371
387
  |parameter | type or values |
372
388
  |-------------------------------|:----------------------------------------------|
373
- |--scheduledCompletionDateStart |Date - Unix time format (e.g. 1499644800) |
374
- |--scheduledCompletionDateEnd |Date - Unix time format (e.g. 1499990400) |
389
+ |-d, --scheduledCompletionDateStart |Date - Unix time format (e.g. 1499644800) |
390
+ |-e, --scheduledCompletionDateEnd |Date - Unix time format (e.g. 1499990400) |
375
391
 
376
392
 
377
393
  - byMilestoneId, Retrieve milestone(s) for specified system, poam, and milestone ID"
378
394
  ````
379
- $ bundle exec exe/emasser get poams byMilestoneId --systemId=SYSTEMID --poamId=POAMID --milestoneId=MILESTONEID
395
+ $ bundle exec exe/emasser get poams byMilestoneId -s, --systemId=SYSTEMID -p, --poamId=POAMID -m, --milestoneId=MILESTONEID
380
396
  ````
381
397
  - required parameters are:
382
398
 
383
399
  |parameter | type or values |
384
400
  |--------------|:-------------------------------------|
385
- |--systemId |Integer - Unique system identifier |
386
- |--poamId |Integer - Unique poam identifier |
387
- |--milestoneId |Integer - Unique milestone identifier |
401
+ |-s, --systemId |Integer - Unique system identifier |
402
+ |-p, --poamId |Integer - Unique poam identifier |
403
+ |-m, --milestoneId |Integer - Unique milestone identifier |
388
404
 
389
- [top](#api-endpoints-provided)
405
+ [top](#milestones)
390
406
  ### ```get artifacts```
391
407
 
392
408
  ----
@@ -394,91 +410,138 @@ There are two get endpoints that provides the ability to view existing `Artifact
394
410
 
395
411
  - forSystem - Retrieves one or many artifacts in a system specified system ID
396
412
  ````
397
- $ bundle exec exe/emasser get artifacts forSystem --systemId=SYSTEMID
413
+ $ bundle exec exe/emasser get artifacts forSystem -s, --systemId=SYSTEMID
398
414
  ````
399
415
  - required parameter is:
400
416
 
401
417
  |parameter | type or values |
402
418
  |-------------|:----------------------------------|
403
- |--systemId |Integer - Unique system identifier |
419
+ |-s, --systemId |Integer - Unique system identifier |
404
420
 
405
421
  - optional parameters are:
406
422
 
407
- |parameter | type or values |
408
- |-------------------------------|:----------------------------------------------|
409
- |--filename |The artifact file name |
410
- |--controlAcronyms |String - The system acronym(s) e.g "AC-1, AC-2"|
411
- |--ccis |String - The system CCIS string numerical value|
412
- |--systemOnly |BOOLEAN - true or false|
423
+ |parameter | type or values |
424
+ |---------------------------|:----------------------------------------------|
425
+ |-f, --filename |The artifact file name |
426
+ |-a, --controlAcronyms |String - The system acronym(s) e.g "AC-1, AC-2"|
427
+ |-p, --assessmentProcedures |String - The system Security Control Assessment Procedure e.g "AC-1.1,AC-1.2"|
428
+ |-c, --ccis |String - The system CCIS string numerical value|
429
+ |-Y, --systemOnly |BOOLEAN - true or false|
413
430
 
414
431
 
415
432
  - export - Retrieves the file artifacts (if compress is true the file binary contents are returned, otherwise the file textual contents are returned.)
416
433
  ````
417
- $ bundle exec exe/emasser get artifacts export --systemId=SYSTEMID
434
+ $ bundle exec exe/emasser get artifacts export -s, --systemId=SYSTEMID
418
435
  ````
419
436
  - required parameters are:
420
437
 
421
438
  |parameter | type or values |
422
439
  |-------------|:----------------------------------|
423
- |--systemId |Integer - Unique system identifier |
424
- |--filename |The artifact file name |
440
+ |-s, --systemId |Integer - Unique system identifier |
441
+ |-f, --filename |The artifact file name |
425
442
 
426
443
  - optional parameter is:
427
444
 
428
445
  |parameter | type or values |
429
446
  |-------------|:----------------------------------|
430
- |--compress |BOOLEAN - true or false. |
447
+ |-C, --compress |BOOLEAN - true or false. |
448
+ |-o, --printToStdout |BOOLEAN - true or false - Output file content to terminal - not valid for zip files|
431
449
 
432
- [top](#api-endpoints-provided)
450
+ [top](#artifacts)
433
451
  ### ```get cac```
434
452
 
435
453
  ----
436
454
  To view one or many Control Approval Chain (CAC) in a system specified system ID use the following command:
437
455
  ```
438
- $ bundle exec exe/emasser get cac controls --systemId=SYSTEMID
456
+ $ bundle exec exe/emasser get cac controls -s, --systemId=SYSTEMID
439
457
  ```
440
458
  - required parameter is:
441
459
 
442
460
  |parameter | type or values |
443
461
  |-------------|:----------------------------------|
444
- |--systemId |Integer - Unique system identifier |
462
+ |-s, --systemId |Integer - Unique system identifier |
445
463
 
446
464
  - optional parameter is:
447
465
 
448
- |parameter | type or values |
449
- |-------------------------------|:----------------------------------------------|
450
- |--controlAcronyms |String - The system acronym(s) e.g "AC-1, AC-2"|
466
+ |parameter | type or values |
467
+ |----------------------|:----------------------------------------------|
468
+ |-a, --controlAcronyms |String - The system acronym(s) e.g "AC-1, AC-2"|
451
469
 
452
- [top](#api-endpoints-provided)
470
+ [top](#cac)
453
471
  ### ```get pac```
454
472
 
455
473
  ----
456
474
  To view one or many Package Approval Chain (PAC) in a system specified system ID use the following command:
457
475
 
458
476
  ````
459
- $ bundle exec exe/emasser get pac package --systemId=SYSTEMID
477
+ $ bundle exec exe/emasser get pac package -s, --systemId=SYSTEMID
478
+ ````
479
+ - required parameter is:
480
+
481
+ |parameter | type or values |
482
+ |-------------|:----------------------------------|
483
+ |-s, --systemId |Integer - Unique system identifier |
484
+
485
+ [top](#pac)
486
+ ### ```get hardware```
487
+
488
+ ---
489
+ To view Hardware Baseline assets use the following command:
490
+
491
+ ````
492
+ $ bundle exec exe/emasser get hardware assets -s, --systemId=SYSTEMID
493
+ ````
494
+ - required parameter is:
495
+
496
+ |parameter | type or values |
497
+ |-------------|:----------------------------------|
498
+ |-s, --systemId |Integer - Unique system identifier |
499
+
500
+ - Optional flags (parameters) are:
501
+
502
+ |parameter | type or values |
503
+ |-------------------|:--------------------------------------------------------------|
504
+ |-i, --pageIndex |Integer - The index of the starting page (default first page 0)|
505
+ |-s, --pageSize |Integer - The number of entries per page (default 20000) |
506
+
507
+
508
+ [top](#hardware-baseline)
509
+ ### ```get software```
510
+
511
+ ---
512
+ To view Software Baseline assets use the following command:
513
+
514
+ ````
515
+ $ bundle exec exe/emasser get software assets -s, --systemId=SYSTEMID
460
516
  ````
461
517
  - required parameter is:
462
518
 
463
519
  |parameter | type or values |
464
520
  |-------------|:----------------------------------|
465
- |--systemId |Integer - Unique system identifier |
521
+ |-s, --systemId |Integer - Unique system identifier |
522
+
523
+ - Optional flags (parameters) are:
466
524
 
467
- [top](#api-endpoints-provided)
525
+ |parameter | type or values |
526
+ |-------------------|:--------------------------------------------------------------|
527
+ |-i, --pageIndex |Integer - The index of the starting page (default first page 0)|
528
+ |-s, --pageSize |Integer - The number of entries per page (default 20000) |
529
+
530
+ [top](#software-baseline)
468
531
  ### ```get cmmc```
469
532
 
470
533
  ----
471
534
  To view Cybersecurity Maturity Model Certification (CMMC) Assessments use the following command:
472
535
 
473
- $ bundle exec exe/emasser get workflow_definitions forSite --sinceDate=SINCEDATE
536
+ $ bundle exec exe/emasser get cmmc assessments -d, --sinceDate=SINCEDATE
474
537
 
475
538
  - Required parameter is:
476
539
 
477
540
  |parameter | type or values |
478
541
  |----------------|:--------------------------------------|
479
- |--sinceDate |Date - The CMMC date. Unix date format |
542
+ |-d, --sinceDate |Date - The CMMC date. Unix date format |
480
543
 
481
- [top](#api-endpoints-provided)
544
+ [top](#cmmc-assessment)
482
545
  ### ```get workflow_definitions```
483
546
 
484
547
  ----
@@ -490,11 +553,11 @@ To view Workflow Definitions use the following command:
490
553
 
491
554
  |parameter | type or values |
492
555
  |---------------------|:----------------------------------------------------------------------------|
493
- |--includeInactive |BOOLEAN - true or false |
494
- |--registrationType |Possible values: assessAndAuthorize, assessOnly, guest, regular, functional, |
495
- | | cloudServiceProvider, commonControlProvider |
556
+ |-I, --includeInactive |BOOLEAN - true or false |
557
+ |-r, --registrationType |Possible values: assessAndAuthorize, assessOnly, guest, regular, functional, |
558
+ | | cloudServiceProvider, commonControlProvider |
496
559
 
497
- [top](#api-endpoints-provided)
560
+ [top](#workflow-definition)
498
561
  ### ```get workflow_instances```
499
562
 
500
563
  ----
@@ -507,22 +570,23 @@ There are two get endpoints to view workflow instances:
507
570
 
508
571
  |parameter | type or values |
509
572
  |-------------------|:---------------------------------------------------|
510
- |--includeComments |BOOLEAN - true or false |
511
- |--pageIndex |Integer - The page number to query |
512
- |--sinceDate |Date - The Workflow Instance date. Unix date format |
513
- |--status |Possible values: active, inactive, all |
573
+ |-C, --includeComments |BOOLEAN - true or false |
574
+ |-D, --includeDecommissionSystems |BOOLEAN - true or false. |
575
+ |-p, --pageIndex |Integer - The page number to query |
576
+ |-d, --sinceDate |Date - The Workflow Instance date. Unix date format |
577
+ |-s, --status |Possible values: active, inactive, all |
514
578
 
515
- - byWorkflowInstanceId
579
+ - byInstanceId
516
580
  ```
517
- $ bundle exec exe/emasser get workflow_instances byWorkflowInstanceId --workflowInstanceId=WORKFLOWID
581
+ $ bundle exec exe/emasser get workflow_instances byInstanceId --workflowInstanceId=WORKFLOWID
518
582
  ```
519
583
  - required parameter is:
520
584
 
521
585
  |parameter | type or values |
522
586
  |---------------------|:---------------------------------------------|
523
- |--workflowInstanceId |Integer - Unique workflow instance identifier |
587
+ |-w, --workflowInstanceId |Integer - Unique workflow instance identifier |
524
588
 
525
- [top](#api-endpoints-provided)
589
+ [top](#workflow-instances)
526
590
  ### ```get dashboards```
527
591
 
528
592
  ----
@@ -533,137 +597,91 @@ All endpoint calls utilize the same parameter values, they are:
533
597
 
534
598
  |parameter | type or values |
535
599
  |--------------|:------------------------------------------------|
536
- |--orgId |Integer - The organization identification number |
600
+ |-o, --orgId |Integer - The organization identification number |
537
601
 
538
602
  - Optional flags (parameters) are:
539
603
 
540
604
  |parameter | type or values |
541
605
  |-------------------|:--------------------------------------------------------------|
542
- |--excludeInherited |BOOLEAN - If no value is specified, includes inherited data |
543
- |--pageIndex |Integer - The index of the starting page (default first page 0)|
544
- |--pageSize |Integer - The number of entries per page (default 20000) |
606
+ |-I, --excludeInherited |BOOLEAN - If no value is specified, includes inherited data |
607
+ |-i, --pageIndex |Integer - The index of the starting page (default first page 0)|
608
+ |-s, --pageSize |Integer - The number of entries per page (default 20000) |
609
+
610
+ The following dashboard endpoint commands are available
611
+
612
+ ```bash
613
+ emasser get dashboards application_findings_details # Get system ...
614
+ emasser get dashboards application_findings_summary # Get system ...
615
+ emasser get dashboards artifacts_details # Get systems...
616
+ emasser get dashboards artifacts_summary # Get systems...
617
+ emasser get dashboards assessment_procedures_details # Get systems...
618
+ emasser get dashboards assignments_details # Get user sy...
619
+ emasser get dashboards associations_details # Get system ...
620
+ emasser get dashboards atc_iatc_details # Get systems...
621
+ emasser get dashboards cmmc_compliance_summary # Get CMMC As...
622
+ emasser get dashboards cmmc_requirement_objectives_details # Get CMMC As...
623
+ emasser get dashboards cmmc_security_requirements_details # Get CMMC As...
624
+ emasser get dashboards cmmc_status_summary # Get CMMC As...
625
+ emasser get dashboards coastguard_fisma_metrics # Get coastgu...
626
+ emasser get dashboards connectivity_ccsd_details # Get systems...
627
+ emasser get dashboards connectivity_ccsd_summary # Get systems...
628
+ emasser get dashboards control_compliance_summary # Get systems...
629
+ emasser get dashboards critical_assets_summary # Get system ...
630
+ emasser get dashboards device_findings_details # Get system ...
631
+ emasser get dashboards device_findings_summary # Get system ...
632
+ emasser get dashboards fisma_inventory_crypto_summary # Get VA syst...
633
+ emasser get dashboards fisma_inventory_summary # Get VA syst...
634
+ emasser get dashboards fisma_metrics # Get FISMA m...
635
+ emasser get dashboards fisma_saop_summary # Get VA OMB-...
636
+ emasser get dashboards hardware_details # Get system ...
637
+ emasser get dashboards hardware_summary # Get system ...
638
+ emasser get dashboards integration_status_summary # Get system ...
639
+ emasser get dashboards organization_migration_status_summary # Get organiz...
640
+ emasser get dashboards poam_details # Get system ...
641
+ emasser get dashboards poam_summary # Get systems...
642
+ emasser get dashboards ports_protocols_details # Get system ...
643
+ emasser get dashboards ports_protocols_summary # Get system ...
644
+ emasser get dashboards privacy_summary # Get user sy...
645
+ emasser get dashboards questionnaire_details # Get systems...
646
+ emasser get dashboards questionnaire_summary # Get systems...
647
+ emasser get dashboards security_control_details # Get systems...
648
+ emasser get dashboards sensor_hardware_details # Get system ...
649
+ emasser get dashboards sensor_hardware_summary # Get system ...
650
+ emasser get dashboards sensor_software_counts # Get system ...
651
+ emasser get dashboards sensor_software_details # Get system ...
652
+ emasser get dashboards sensor_software_summary # Get system ...
653
+ emasser get dashboards software_details # Get system ...
654
+ emasser get dashboards software_summary # Get system ...
655
+ emasser get dashboards status_details # Get systems...
656
+ emasser get dashboards system_migration_status_summary # Get system ...
657
+ emasser get dashboards terms_conditions_details # Get systems...
658
+ emasser get dashboards terms_conditions_summary # Get systems...
659
+ emasser get dashboards threat_architecture_details # Get VA Syst...
660
+ emasser get dashboards threat_risk_details # Get VA Syst...
661
+ emasser get dashboards threat_risk_summary # Get VA Syst...
662
+ emasser get dashboards va_a2_summary # Get VA syst...
663
+ emasser get dashboards va_aa_summary # Get VA syst...
664
+ emasser get dashboards va_icamp_tableau_poam_details # Get VA ICAM...
665
+ emasser get dashboards va_pl_109_summary # Get VA Syst...
666
+ emasser get dashboards vulnerability_summary # Get system ...
667
+ emasser get dashboards workflows_history_details # Get system ...
668
+ emasser get dashboards workflows_history_stage_details # Get system ...
669
+ emasser get dashboards workflows_history_summary # Get system ...
670
+ ```
671
+ [top](#dashboards)
545
672
 
546
- Available commands are:
547
- - Get systems status detail dashboard information
548
- ```
549
- $ bundle exec exe/emasser get dashboards status_details [-o, --orgId] <value> [options]
550
- ```
551
- - Get systems control compliance summary dashboard information
552
- ```
553
- $ bundle exec exe/emasser get dashboards control_compliance_summary [-o, --orgId] <value> [options]
554
- ```
555
- - Get systems security control details dashboard information
556
- ```
557
- $ bundle exec exe/emasser get dashboards security_control_details [-o, --orgId] <value> [options]
558
- ```
559
- - Get systems assessment procedures details dashboard information
560
- ```
561
- $ bundle exec exe/emasser get dashboards assessment_procedures_details [-o, --orgId] <value> [options]
562
- ```
563
- - Get systems POA&Ms summary dashboard information
564
- ```
565
- $ bundle exec exe/emasser get dashboards poam_summary [-o, --orgId] <value> [options]
566
- ```
567
- - Get system POA&Ms details dashboard information
568
- ```
569
- $ bundle exec exe/emasser get dashboards poam_details [-o, --orgId] <value> [options]
570
- ```
571
- - Get artifacts summary dashboard information
572
- ```
573
- $ bundle exec exe/emasser get dashboards artifacts_summary [-o, --orgId] <value> [options]
574
- ```
575
- - Get artifacts details dashboard information
576
- ```
577
- $ bundle exec exe/emasser get dashboards artifacts_details [-o, --orgId] <value> [options]
578
- ```
579
- - Get system hardware summary dashboard information
580
- ```
581
- $ bundle exec exe/emasser get dashboards hardware_summary [-o, --orgId] <value> [options]
582
- ```
583
- - Get system hardware details dashboard information
584
- ```
585
- $ bundle exec exe/emasser get dashboards hardware_details [-o, --orgId] <value> [options]
586
- ```
587
- - Get sensor hardware summary dashboard information
588
- ```
589
- $ bundle exec exe/emasser get dashboards sensor_hardware_summary [-o, --orgId] <value> [options]
590
- ```
591
- - Get sensor hardware details dashboard information
592
- ```
593
- $ bundle exec exe/emasser get dashboards sensor_hardware_details [-o, --orgId] <value> [options]
594
- ```
595
- - Get software baseline summary dashboard information
596
- ```
597
- $ bundle exec exe/emasser get dashboards software_summary [-o, --orgId] <value> [options]
598
- ```
599
- - Get software baseline details dashboard information
600
- ```
601
- $ bundle exec exe/emasser get dashboards software_details [-o, --orgId] <value> [options]
602
- ```
603
- - Get ports and protocols summary dashboard information
604
- ```
605
- $ bundle exec exe/emasser get dashboards ports_protocols_summary [-o, --orgId] <value> [options]
606
- ```
607
- - Get ports and protocols details dashboard information
608
- ```
609
- $ bundle exec exe/emasser get dashboards ports_protocols_details [-o, --orgId] <value> [options]
610
- ```
611
- - Get CONMON integration status summary dashboard information
612
- ```
613
- $ bundle exec exe/emasser get dashboards integration_status_summary [-o, --orgId] <value> [options]
614
- ```
615
- - Get system associations details dashboard information
616
- ```
617
- $ bundle exec exe/emasser get dashboards associations_details [-o, --orgId] <value> [options]
618
- ```
619
- - Get user system assignments details dashboard information
620
- ```
621
- $ bundle exec exe/emasser get dashboards assignments_details [-o, --orgId] <value> [options]
622
- ```
623
- - Get user system privacy summary dashboard information
624
- ```
625
- $ bundle exec exe/emasser get dashboards privacy_summary [-o, --orgId] <value> [options]
626
- ```
627
- - Get VA OMB-FISMA SAOP summary dashboard information
628
- ```
629
- $ bundle exec exe/emasser get dashboards fisma_saop_summary [-o, --orgId] <value> [options]
630
- ```
631
- - Get VA system A&A summary dashboard information
632
- ```
633
- $ bundle exec exe/emasser get dashboards va_aa_summary [-o, --orgId] <value> [options]
634
- ```
635
- - Get VA system A2.0 summary dashboard information
636
- ```
637
- $ bundle exec exe/emasser get dashboards va_a2_summary [-o, --orgId] <value> [options]
638
- ```
639
- - Get VA System P.L. 109 reporting summary dashboard information
640
- ```
641
- $ bundle exec exe/emasser get dashboards va_pl_109_summary [-o, --orgId] <value> [options]
642
- ```
643
- - Get VA system FISMA inventory summary dashboard information
644
- ```
645
- $ bundle exec exe/emasser get dashboards fisma_inventory_summary [-o, --orgId] <value> [options]
646
- ```
647
- - Get VA system FISMA inventory summary dashboard information
648
- ```
649
- $ bundle exec exe/emasser get dashboards fisma_inventory_crypto_summary [-o, --orgId] <value> [options]
650
- ```
651
- - Get VA threat risk summary dashboard information
652
- ```
653
- $ bundle exec exe/emasser get dashboards va_threat_risk_summary [-o, --orgId] <value> [options]
654
- ```
655
- - Get VA threat source details dashboard information
656
- ```
657
- $ bundle exec exe/emasser get dashboards va_threat_source_details [-o, --orgId] <value> [options]
658
- ```
659
- - Get VA threat architecture details dashboard information
660
- ```
661
- $ bundle exec exe/emasser get dashboards va_threat_architecture_details [-o, --orgId] <value> [options]
662
- ```
663
- [top](#api-endpoints-provided)
664
673
 
665
674
  ## Usage - POST
666
675
 
676
+ ### ``post register cert``
677
+ ---
678
+ The Registration endpoint provides the ability to register a certificate & obtain an API-key.
679
+
680
+ ```
681
+ $ bundle exec exe/emasser post register cert
682
+ ```
683
+
684
+ [top](#post-endpoints)
667
685
  ### ``post test_results``
668
686
  ---
669
687
  Test Result add (POST) endpoint API business rules.
@@ -673,40 +691,38 @@ Test Result add (POST) endpoint API business rules.
673
691
  | Tests Results cannot be saved if the "Test Date" is in the future. | `testDate` |
674
692
  | Test Results cannot be saved if a Security Control is "Inherited" in the system record. | `description` |
675
693
  | Test Results cannot be saved if an Assessment Procedure is "Inherited" in the system record. | `description` |
676
- | Test Results cannot be saved if the AP does not exist in the system. | `description` |
694
+ | Test Results cannot be saved if the Assessment Procedure does not exist in the system. | `description` |
677
695
  | Test Results cannot be saved if the control is marked "Not Applicable" by an Overlay. | `description` |
678
696
  | Test Results cannot be saved if the control is required to be assessed as "Applicable" by an Overlay.| `description` |
679
697
  | Test Results cannot be saved if the Tests Results entered is greater than 4000 characters.|`description`|
680
698
  | Test Results cannot be saved if the following fields are missing data: | `complianceStatus`, `testDate`, `testedBy`, `description`|
681
- | Test results cannot be saved if there is more than one test result per CCI |`cci`|
682
699
 
683
700
  ---
684
701
  To add (POST) test results use the following command:
685
702
 
686
703
  ````
687
- $ bundle exec exe/emasser post test_results add --systemId [value] --cci [value] --testedBy [value] --testDate [value] --description [value] --complianceStatus [value]
704
+ $ bundle exec exe/emasser post test_results add [-s --systemId] <value> --assessmentProcedure <value> --testedBy <value> --testDate <value? --description <value> --complianceStatus <value>
688
705
  ````
689
- Note: If no POA&Ms or AP exist for the control (system), you will get this response:
706
+ Note: If no POA&Ms or Assessment Procedure exist for the control (system), you will get this response:
690
707
  "You have entered a Non-Compliant Test Result. You must create a POA&M Item for this Control and/or AP if one does not already exist."
691
708
 
692
709
  - required parameter are:
693
710
 
694
- |parameter | type or values |
695
- |-------------------|:------------------------------------------------------------|
696
- |--systemId |Integer - Unique system identifier |
697
- |--cci |String - CCI associated with the test result. e.g "00221" |
698
- |--testedBy |String - Last Name, First Name. 100 Characters. |
699
- |--testDate |Date - Unix time format (e.g. 1499990400) |
700
- |--description |String - Include description of test result. 4000 Characters |
701
- |--complianceStatus |Possible values: Compliant, Non-Compliant, Not Applicable |
711
+ |parameter | type or values |
712
+ |----------------------|:-----------------------------------------------------------------|
713
+ |-s, --systemId |Integer - Unique system identifier |
714
+ |--assessmentProcedure |String - The Security Control Assessment Procedure being assessed |
715
+ |--testedBy |String - Last Name, First Name. 100 Characters. |
716
+ |--testDate |Date - Unix time format (e.g. 1499990400) |
717
+ |--description |String - Include description of test result. 4000 Characters |
718
+ |--complianceStatus |Possible values: Compliant, Non-Compliant, Not Applicable |
702
719
 
703
720
  **Note**
704
- For information at the command line use:
721
+ For additional information about command line usages invoke the following help command:
705
722
  ```
706
723
  $ bundle exec exe/emasser post test_results help add
707
724
  ```
708
- [top](#post)
709
-
725
+ [top](#post-endpoints)
710
726
  ### ``post poams``
711
727
  ---
712
728
  Plan of Action and Milestones (POA&M) add (POST) endpoint API business rules.
@@ -765,7 +781,7 @@ The following POA&M parameters/fields have the following character limitations:
765
781
 
766
782
  To add (POST) POA&Ms use the following command:
767
783
  ```
768
- $ bundle exec exe/emasser post poams add --systemId [value] --status [value] --vulnerabilityDescription [value] --sourceIdentVuln [value] --pocOrganization [value] --resources [value]
784
+ $ bundle exec exe/emasser post poams add [-s, --systemId] <value> --status <value> --vulnerabilityDescription <value> --sourceIdentifyingVulnerability <value> --pocOrganization <value> --resources <value>
769
785
  ```
770
786
  **Notes:**
771
787
  - The above listed parameters/fields are the minimal required.
@@ -780,86 +796,68 @@ $ bundle exec exe/emasser post poams add --systemId [value] --status [value] --v
780
796
  Client API parameters/fields (required, conditional, and optional).
781
797
  - required parameter are:
782
798
 
783
- |parameter | type or values |
784
- |---------------------------|:---------------------------------------------------------------|
785
- |--systemId |Integer - Unique system identifier |
786
- |--status |Possible Values: Ongoing,Risk Accepted,Completed,Not Applicable |
787
- |--vulnerabilityDescription |String - Vulnerability description for the POA&M Item |
788
- |--sourceIdentVuln |String - Include Source Identifying Vulnerability text |
789
- |--pocOrganization |String - Organization/Office represented |
790
- |--resources |String - List of resources used. Character Limit = 250 |
799
+ |parameter | type or values |
800
+ |---------------------------------|:---------------------------------------------------------------|
801
+ |-s, --systemId |Integer - Unique system identifier |
802
+ |--status |Possible Values: Ongoing,Risk Accepted,Completed,Not Applicable |
803
+ |--vulnerabilityDescription |String - Vulnerability description for the POA&M Item |
804
+ |--sourceIdentifyingVulnerability |String - Include Source Identifying Vulnerability text |
805
+ |--pocOrganization |String - Organization/Office represented |
806
+ |--resources |String - List of resources used. Character Limit = 250 |
791
807
 
792
808
  ** If any poc information is provided all POC fields are required. See additional details for POC fields below.
793
809
 
794
- - conditional parameters are:
810
+ - conditional parameters are*:
795
811
 
796
812
  |parameter | type or values |
797
813
  |--------------------------|:------------------------------------------------------------------------|
798
814
  |--milestones |JSON - see milestone format |
799
815
  |--pocFirstName |String - First name of POC |
800
816
  |--pocLastName |String - Last name of POC |
801
- |--pocEmail |String - Email address of POC |
817
+ |--pocEmail** |String - Email address of POC |
802
818
  |--pocPhoneNumber |String - Phone number of POC (area code) ***-**** format |
803
819
  |--severity |Possible values - Very Low, Low, Moderate, High, Very High |
804
820
  |--scheduledCompletionDate |Date - Required for ongoing and completed POA&M items. Unix time format |
805
821
  |--completionDate |Date - Field is required for completed POA&M items. Unix time format |
806
822
  |--comments |String - Field is required for completed and risk accepted POA&M items. |
807
823
 
824
+ \* Conditional parameters listed here are for Army organiztions, see Note below for additional command line help.
825
+
808
826
  ** If a POC email is supplied, the application will attempt to locate a user already registered within the application and pre-populate any information not explicitly supplied in the request. If no such user is found, these fields are required within the request:
809
827
  pocFirstName, pocLastName, pocPhoneNumber
810
828
 
811
829
  Milestone Format:
812
830
  - --milestone description:[value] scheduledCompletionDate:[value]
813
831
 
814
- - optional parameters are:
815
-
816
- |parameter | type or values |
817
- |--------------------|:-----------------------------------------------------------------------------------------|
818
- |--externalUid |String - External unique identifier for use with associating POA&M Items |
819
- |--controlAcronym |String - Control acronym associated with the POA&M Item. NIST SP 800-53 Revision 4 defined|
820
- |--cci |String - CCI associated with the test result |
821
- |--securityChecks |String - Security Checks that are associated with the POA&M |
822
- |--rawSeverity |Possible values: I, II, III |
823
- |--relevanceOfThreat |Possible values: Very Low, Low, Moderate, High, Very High |
824
- |--likelihood |Possible values: Very Low, Low, Moderate, High, Very High |
825
- |--impact |Possible values: Very Low, Low, Moderate, High, Very High |
826
- |--impactDescription |String - Include description of Security Control’s impact |
827
- |--residualRiskLevel |Possible values: Very Low, Low, Moderate, High, Very High |
828
- |--recommendations |String - Include recommendations |
829
- |--mitigation |String - Include mitigation explanation |
830
-
831
-
832
832
  **Note**
833
- For information at the command line use:
833
+ For additional information about command line usages invoke the following help command:
834
834
  ```
835
835
  $ bundle exec exe/emasser post poams help add
836
836
  ```
837
- [top](#post)
838
-
837
+ [top](#post-endpoints)
839
838
  ### ``post milestones``
840
839
  ---
841
840
  To add (POST) milestones in a system for one or more POA&M items use the following command:
842
841
 
843
842
  ````
844
- $ bundle exec exe/emasser post milestones add --systemId [value] --poamId [value] --description [value] --scheduledCompletionDate [value]
843
+ $ bundle exec exe/emasser post milestones add [-s, --systemId] <value> [-p, --poamId] <value> [-d, --description] <value> [c, --scheduledCompletionDate] <value>
845
844
  ````
846
845
  - required parameter are:
847
846
 
848
- |parameter | type or values |
849
- |---------------------------|:----------------------------------------------------|
850
- |--systemId |Integer - Unique system identifier |
851
- |--poamId |Integer - Unique item identifier |
852
- |--description |String - Milestone item description. 2000 Characters |
853
- |--scheduledCompletionDate |Date - Schedule completion date. Unix date format |
847
+ |parameter | type or values |
848
+ |------------------------------|:----------------------------------------------------|
849
+ |-s, --systemId |Integer - Unique system identifier |
850
+ |-p, --poamId |Integer - Unique item identifier |
851
+ |-d, --description |String - Milestone item description. 2000 Characters |
852
+ |-c, --scheduledCompletionDate |Date - Schedule completion date. Unix date format |
854
853
 
855
854
 
856
855
  **Note**
857
- For information at the command line use:
856
+ For additional information about command line usages invoke the following help command:
858
857
  ```
859
858
  $ bundle exec exe/emasser post milestones help add
860
859
  ```
861
- [top](#post)
862
-
860
+ [top](#post-endpoints)
863
861
  ### ``post artifacts``
864
862
  ---
865
863
  The add (POST) artifacts endpoint accepts a single binary file with file extension.zip only. The command line (CI) reads the files provided and zips them before sending to eMASS.
@@ -871,54 +869,49 @@ If no artifact is matched via filename to the application, a new artifact will b
871
869
  - category: evidence
872
870
  ```
873
871
 
874
- Business Rules:
875
- - Artifact cannot be saved if the file does not have the following file extensions:
876
- - .docx,.doc,.txt,.rtf,.xfdl,.xml,.mht,.mhtml,.html,.htm,.pdf
877
- - .mdb,.accdb,.ppt,.pptx,.xls,.xlsx,.csv,.log
878
- - .jpeg,.jpg,.tiff,.bmp,.tif,.png,.gif
879
- - .zip,.rar,.msg,.vsd,.vsw,.vdx, .z{#}, .ckl,.avi,.vsdx
872
+ Business Rules
880
873
  - Artifact cannot be saved if File Name (fileName) exceeds 1,000 characters
881
- - Artifact cannot be saved if Description (description) exceeds 2,000 characters
874
+ - Artifact cannot be saved if Name (name) exceeds 100 characters
875
+ - Artifact cannot be saved if Description (description) exceeds 10,000 characters
882
876
  - Artifact cannot be saved if Reference Page Number (refPageNumber) exceeds 50 characters
877
+ - Artifact cannot be saved if the file does not have an allowable file extension/type.
883
878
  - Artifact version cannot be saved if an Artifact with the same file name already exist in the system.
884
879
  - Artifact cannot be saved if the file size exceeds 30MB.
885
880
  - Artifact cannot be saved if the Last Review Date is set in the future.
881
+ - Artifact cannot be saved if the following fields are missing data:
882
+ - Filename
883
+ - Type
884
+ - Category
886
885
  ---
887
886
  To add (POST) artifacts use the following command:
888
887
 
889
888
  ```
890
- $ bundle exec exe/emasser post artifacts upload --systemId [value] [--isTemplate or --no-isTemplate] --type [value] --category [value] --files [value...value]
889
+ $ bundle exec exe/emasser post artifacts upload [-s, --systemId] <value> [-f, --files] <value...value> [-B, --isBulk or --no-isBulk] -[-T, --isTemplate or --no-isTemplate] [-t, --type] <value> [-c, --category] <value>
891
890
  ```
892
891
 
893
892
  - required parameter are:
894
893
 
895
- |parameter | type or values |
896
- |----------------|:----------------------------------------------------|
897
- |--systemId |Integer - Unique system identifier |
898
- |--isTemplate |Boolean - Indicates whether an artifact is a template|
899
- |--type |Possible Values: Procedure, Diagram, Policy, Labor, Document, Image, Other, Scan Result, Auditor Report|
900
- |--category |Possible Values: Implementation Guidance, Evidence |
901
- |--files |String - File names (to include path) to be uploaded into eMASS as artifacts |
894
+ |parameter | type or values |
895
+ |--------------------|:----------------------------------------------------|
896
+ |-s, --systemId |Integer - Unique system identifier |
897
+ |-T, --isTemplate |Boolean - Indicates whether an artifact is a template|
898
+ |-t, --type |Possible Values: Procedure, Diagram, Policy, Labor, Document, Image, Other, Scan Result, Auditor Report|
899
+ |-c, --category |Possible Values: Implementation Guidance, Evidence |
900
+ |-f, --files |String - File names (to include path) to be uploaded into eMASS as artifacts |
902
901
 
903
902
  - optional parameter are:
904
903
 
905
- |parameter | type or values |
906
- |-------------------------|:------------------------------------------------------|
907
- |--description |String - Artifact description. 2000 Characters |
908
- |--refPageNumber |String - Artifact reference page number. 50 Characters |
909
- |--ccis |String - CCIs associated with artifact |
910
- |--controls |String - Control acronym associated with the artifact. NIST SP 800-53 Revision 4 defined|
911
- |--artifactExpirationDate |Date - Date Artifact expires and requires review. In Unix Date Format|
912
- |--lastReviewedDate |Date - Date Artifact was last reviewed. In Unix Date Format |
904
+ |parameter | type or values |
905
+ |----------------|:------------------------------------------------------|
906
+ |-B, --isBulk |Boolean - Set to false for single file upload, true for multiple file upload (expects a .zip file)|
913
907
 
914
908
 
915
909
  **Note**
916
- For information at the command line use:
910
+ For additional information about command line usages invoke the following help command:
917
911
  ```
918
912
  $ bundle exec exe/emasser post artifacts help upload
919
913
  ```
920
- [top](#post)
921
-
914
+ [top](#post-endpoints)
922
915
  ### ``post cac``
923
916
  ----
924
917
  Submit control to second role of CAC
@@ -929,28 +922,27 @@ Business Rule
929
922
  To add (POST) test CAC use the following command:
930
923
 
931
924
  ````
932
- $ bundle exec exe/emasser post pac add --systemId [value] --controlAcronym [value] --comments [value]
925
+ $ bundle exec exe/emasser post pac add [-s, --systemId] <value> [-a, --controlAcronym] <value> [-c, --comments] <value>
933
926
  ````
934
927
  - required parameter are:
935
928
 
936
- |parameter | type or values |
937
- |-------------------|:------------------------------------------------------------|
938
- |--systemId |Integer - Unique system identifier |
939
- |--controlAcronym |String - Control acronym associated with the POA&M Item. NIST SP 800-53 Revision 4 defined |
929
+ |parameter | type or values |
930
+ |-----------------------|:------------------------------------------------------------|
931
+ |-s, --systemId |Integer - Unique system identifier |
932
+ |-a, --controlAcronym |String - Control acronym associated with the POA&M Item. NIST SP 800-53 Revision 4 defined |
940
933
 
941
934
  - conditional parameter is:
942
935
 
943
936
  |parameter | type or values |
944
937
  |-------------------|:-------------------------------------------|
945
- |--comments |String -The control approval chain comments |
938
+ |-c, --comments |String -The control approval chain comments |
946
939
 
947
940
  **Note**
948
- For information at the command line use:
941
+ For additional information about command line usages invoke the following help command:
949
942
  ```
950
943
  $ bundle exec exe/emasser post cac help add
951
944
  ```
952
- [top](#post)
953
-
945
+ [top](#post-endpoints)
954
946
  ### ``post pac``
955
947
  ----
956
948
  Submit control to second role of CAC
@@ -958,74 +950,109 @@ Submit control to second role of CAC
958
950
  To add (POST) test PAC use the following command:
959
951
 
960
952
  ````
961
- $ bundle exec exe/emasser post pac add --systemId [value] --workflow [value] --name [value] --comments [value]
953
+ $ bundle exec exe/emasser post pac add [-s, --systemId] <value> [-f, --workflow] <value> [-n, --name] <value> [-c --comments] <value>
962
954
  ````
963
955
  - required parameter are:
964
956
 
965
- |parameter | type or values |
966
- |--------------|:--------------------------------------------------------------------------|
967
- |--systemId |Integer - Unique system identifier |
968
- |--workflow |Possible Values: Assess and Authorize, Assess Only, Security Plan Approval |
969
- |--name |String - Package name. 100 Characters |
970
- |--comments |String - Comments submitted upon initiation of the indicated workflow, 4,000 character|
957
+ |parameter | type or values |
958
+ |---------------|:--------------------------------------------------------------------------|
959
+ |-s, --systemId |Integer - Unique system identifier |
960
+ |-f, --workflow |Possible Values: Assess and Authorize, Assess Only, Security Plan Approval |
961
+ |-n, --name |String - Package name. 100 Characters |
962
+ |-c, --comments |String - Comments submitted upon initiation of the indicated workflow, 4,000 character|
971
963
 
972
964
  **Note**
973
- For information at the command line use:
965
+ For additional information about command line usages invoke the following help command:
974
966
  ```
975
967
  $ bundle exec exe/emasser post pac help add
976
968
  ```
977
- [top](#post)
978
-
979
- ### ``post static_code_scan``
980
- ----
981
- To add (POST) static code scans use the following command:
969
+ [top](#post-endpoints)
970
+ ### ``post hardware``
971
+ ---
972
+ Add (POST) one or many hardware assets in a system.
982
973
 
983
974
  ````
984
- $ bundle exec exe/emasser post scan_findings add --systemId [value] --applicationName [value] --version [value] --codeCheckName [value] --scanDate [value] --cweId [value]
975
+ $ bundle exec exe/emasser post hardware add [-s, --systemId] <value> [-a, --assetName] <value>
985
976
  ````
986
- - required parameter are:
987
977
 
988
- |parameter | type or values |
989
- |-------------------|:-----------------------------------------------------------|
990
- |--systemId |Integer - Unique system identifier |
991
- |--applicationName |String - Name of the software application that was assessed |
992
- |--version |String - The version of the application |
993
- |--codeCheckName |Strings - Name of the software vulnerability or weakness |
994
- |--scanDate |Date - The findings scan date - Unix time format |
995
- |--cweId |String - The Common Weakness Enumerator (CWE) identifier |
978
+ - required parameter are:
996
979
 
997
- - optional parameters are:
980
+ |parameter | type or values |
981
+ |----------------|:-----------------------------------|
982
+ |-s, --systemId |Integer - Unique system identifier |
983
+ |-a, --assetName |String - Name of the hardware asset |
998
984
 
999
- |parameter | type or values |
1000
- |-------------------|:------------------------------------------------------|
1001
- |--rawSeverity* |Possible Values: Low, Medium, Moderate, High, Critical |
1002
- |--count |Integer - Number of instances observed for a specified |
1003
985
 
1004
- *rawSeverity: In eMASS, values of "Critical" will appear as "Very High", and values of "Medium" will appear as "Moderate". Any values not listed as options in the list above will map to "Unknown" and appear as blank values.
986
+ **Note**
987
+ For additional information about command line usages invoke the following help command:
988
+ ```
989
+ $ bundle exec exe/emasser post hardware help add
990
+ ```
1005
991
 
1006
- To clear (POST) static code scans use the following command:
992
+ [top](#post-endpoints)
993
+ ### ``post software``
994
+ ---
995
+ Add (POST) one or many software assets in a system.
1007
996
 
1008
997
  ````
1009
- $ bundle exec exe/emasser post scan_findings clear --systemId [value] --applicationName [value] --version [value] --clearFindings
998
+ $ bundle exec exe/emasser post software add [-s, --systemId] <value> [-V --softwareVendor] <value> [-N, --softwareName] <value> [-v, --version] <value>
1010
999
  ````
1011
- - required parameter are:
1012
1000
 
1013
- |parameter | type or values |
1014
- |-------------------|:-----------------------------------------------------------|
1015
- |--systemId |Integer - Unique system identifier |
1016
- |--applicationName |String - Name of the software application that was assessed |
1017
- |--clearFindings* |Boolean - To clear an application's findings set it to true |
1001
+ - required parameter are:
1018
1002
 
1019
- *The clearFindings field is an optional field, but required with a value of "True" to clear out all application findings for a single application/version pairing.
1003
+ |parameter | type or values |
1004
+ |------------------------|:---------------------------------------------------------------|
1005
+ |-s, --systemId |Integer - A numeric value representing the system identification|
1006
+ |-S, --softwareId |String - Unique software identifier |
1007
+ |-V, --softwareVendor |String - Vendor of the software asset |
1008
+ |-N, --softwareName |String - Name of the software asset |
1009
+ |-v, --version |String - Version of the software asset |
1020
1010
 
1021
1011
  **Note**
1022
- For information at the command line use:
1012
+ For additional information about command line usages invoke the following help command:
1023
1013
  ```
1024
- $ bundle exec exe/emasser post scan_findings help add
1014
+ $ bundle exec exe/emasser post software help add
1025
1015
  ```
1026
- [top](#post)
1027
1016
 
1028
- ### ```post cloud_resource```
1017
+ [top](#post-endpoints)
1018
+ ### ``post device scan results``
1019
+ The body of a request through the Device Scan Results POST endpoint accepts a single binary file. Specific file extensions are expected depending upon the scanType parameter. For example, .ckl or .cklb files are accepted when using scanType is set to disaStigViewerCklCklb.
1020
+
1021
+ When set to acasAsrArf or policyAuditor, a .zip file is expected which should contain a single scan result (for example, a single pair of .asr and .arf files). Single files are expected for all other scan types as this endpoint requires files to be uploaded consecutively as opposed to in bulk.
1022
+
1023
+ Current scan types that are supported:
1024
+ - ACAS: ASR/ARF
1025
+ - ACAS: NESSUS
1026
+ - DISA STIG Viewer: CKL/CKLB
1027
+ - DISA STIG Viewer: CMRS
1028
+ - Policy Auditor
1029
+ - SCAP Compliance Checker
1030
+
1031
+ ***NOTE:*** The CLI accepts multiple files, adds them to a zip archive and submits to the endpoint.
1032
+
1033
+ To add a upload device scan results in the assets module for a system use the following command:
1034
+ ````
1035
+ $ bundle exec exe/emasser post device_scans add -s, --systemId [value] -f, --filename [file1 file2 ...] -t, --scanType [type]
1036
+
1037
+ ````
1038
+ - required parameter are:
1039
+
1040
+ |parameter | type or values |
1041
+ |--------------------|:--------------------------------------------------------------------------|
1042
+ |-s, --systemId |Integer - Unique system identifier |
1043
+ |-f, --filename |string - The file(s) to upload (see information above) |
1044
+ |-t, --scanType |String - The device scan type to upload|
1045
+ ||Options are: [acasAsrArf, acasNessus, disaStigViewerCklCklb, disaStigViewerCmrs, policyAuditor, or scapComplianceChecker]
1046
+
1047
+
1048
+ - optional parameters are:
1049
+
1050
+ |parameter | type or values |
1051
+ |-------------------|:------------------------------------------------------|
1052
+ |-B, --isBaseline |Boolean - Indicates that the imported file represents a baseline scan that includes all findings and results |
1053
+
1054
+ [top](#post-endpoints)
1055
+ ### ``post cloud_resource``
1029
1056
  ---
1030
1057
 
1031
1058
  The following Cloud Resource parameters/fields have the following character limitations:
@@ -1051,13 +1078,13 @@ The following Cloud Resource parameters/fields have the following character limi
1051
1078
 
1052
1079
  To add a cloud resource and their scan results in the assets module for a system use the following command:
1053
1080
  ````
1054
- $ bundle exec exe/emasser post cloud_resource add --systemId [value] --provider [value] --resourceId [value] --resourceName [value] --resourceType [value] --cspPolicyDefinitionId [value] --isCompliant or --is-not-Compliant --policyDefinitionTitle [value] --test [value]
1081
+ $ bundle exec exe/emasser post cloud_resource add -s, --systemId [value] --provider [value] --resourceId [value] --resourceName [value] --resourceType [value] --cspPolicyDefinitionId [value] --isCompliant or --is-not-Compliant --policyDefinitionTitle [value] --test [value]
1055
1082
  ````
1056
1083
  - required parameter are:
1057
1084
 
1058
1085
  |parameter | type or values |
1059
1086
  |------------------------|:--------------------------------------------------------------------------|
1060
- |--systemId |Integer - Unique system identifier |
1087
+ |-s, --systemId |Integer - Unique system identifier |
1061
1088
  |--provider |string - Cloud service provider name |
1062
1089
  |--resourceId |String - Unique identifier/resource namespace for policy compliance result |
1063
1090
  |--resourceName |String - Friendly name of Cloud resource |
@@ -1087,15 +1114,13 @@ To add a cloud resource and their scan results in the assets module for a system
1087
1114
 
1088
1115
 
1089
1116
  **Note**
1090
- For information at the command line use:
1117
+ For additional information about command line usages invoke the following help command:
1091
1118
  ```
1092
1119
  $ bundle exec exe/emasser post cloud_resource help add
1093
1120
  ```
1094
1121
 
1095
- [top](#post)
1096
-
1097
-
1098
- ### ```post container```
1122
+ [top](#post-endpoints)
1123
+ ### ``post container``
1099
1124
  ---
1100
1125
  The following Container parameters/fields have the following character limitations:
1101
1126
  - Fields that can not exceed 100 characters:
@@ -1109,11 +1134,9 @@ The following Container parameters/fields have the following character limitatio
1109
1134
  - Fields that can not exceed 1000 characters:
1110
1135
  - Result Comments (`message`)
1111
1136
 
1112
-
1113
-
1114
1137
  To add containers and their scan results in the assets module for a system use the following command:
1115
1138
  ````
1116
- $ bundle exec ruby exe/emasser post container add --systemId [value] --containerId [value] --containerName [value] --time [value] --benchmark [value] --lastSeen [value] --ruleId [value] --status [value]
1139
+ $ bundle exec ruby exe/emasser post container add -s, --systemId [value] --containerId [value] --containerName [value] --time [value] --benchmark [value] --lastSeen [value] --ruleId [value] --status [value]
1117
1140
 
1118
1141
  ````
1119
1142
 
@@ -1121,7 +1144,7 @@ To add containers and their scan results in the assets module for a system use t
1121
1144
 
1122
1145
  |parameter | type or values |
1123
1146
  |------------------------|:--------------------------------------------------------------------------|
1124
- |--systemId |Integer - Unique system identifier |
1147
+ |-s, --systemId |Integer - Unique system identifier |
1125
1148
  |--containerId |String - Unique identifier of the container |
1126
1149
  |--containerName |String - Friendly name of the container |
1127
1150
  |--time |Date - Datetime of scan/result. Unix date format |
@@ -1147,11 +1170,60 @@ To add containers and their scan results in the assets module for a system use t
1147
1170
  |--message |String - Comments for the result
1148
1171
 
1149
1172
  **Note**
1150
- For information at the command line use:
1173
+ For additional information about command line usages invoke the following help command:
1151
1174
  ```
1152
1175
  $ bundle exec exe/emasser post container help add
1153
1176
  ```
1154
- [top](#post)
1177
+ [top](#post-endpoints)
1178
+ ### ``post static_code_scan``
1179
+ ----
1180
+ To add (POST) static code scans use the following command:
1181
+
1182
+ ````
1183
+ $ bundle exec exe/emasser post scan_findings add -s, --systemId [value] --applicationName [value] --version [value] --codeCheckName [value] --scanDate [value] --cweId [value]
1184
+ ````
1185
+ - required parameter are:
1186
+
1187
+ |parameter | type or values |
1188
+ |-------------------|:-----------------------------------------------------------|
1189
+ |-s, --systemId |Integer - Unique system identifier |
1190
+ |--applicationName |String - Name of the software application that was assessed |
1191
+ |--version |String - The version of the application |
1192
+ |--codeCheckName |Strings - Name of the software vulnerability or weakness |
1193
+ |--scanDate |Date - The findings scan date - Unix time format |
1194
+ |--cweId |String - The Common Weakness Enumerator (CWE) identifier |
1195
+
1196
+ - optional parameters are:
1197
+
1198
+ |parameter | type or values |
1199
+ |-------------------|:------------------------------------------------------|
1200
+ |--rawSeverity* |Possible Values: Low, Medium, Moderate, High, Critical |
1201
+ |--count |Integer - Number of instances observed for a specified |
1202
+
1203
+ *rawSeverity: In eMASS, values of "Critical" will appear as "Very High", and values of "Medium" will appear as "Moderate". Any values not listed as options in the list above will map to "Unknown" and appear as blank values.
1204
+
1205
+ To clear (POST) static code scans use the following command:
1206
+
1207
+ ````
1208
+ $ bundle exec exe/emasser post scan_findings clear -s, --systemId [value] --applicationName [value] --version [value] --clearFindings
1209
+ ````
1210
+ - required parameter are:
1211
+
1212
+ |parameter | type or values |
1213
+ |-------------------|:-----------------------------------------------------------|
1214
+ |-s, --systemId |Integer - Unique system identifier |
1215
+ |--applicationName |String - Name of the software application that was assessed |
1216
+ |--clearFindings* |Boolean - To clear an application's findings set it to true |
1217
+
1218
+ *The clearFindings field is an optional field, but required with a value of "True" to clear out all application findings for a single application/version pairing.
1219
+
1220
+ **Note**
1221
+ For additional information about command line usages invoke the following help command:
1222
+ ```
1223
+ $ bundle exec exe/emasser post scan_findings help add
1224
+ ```
1225
+ [top](#post-endpoints)
1226
+
1155
1227
 
1156
1228
  ## Usage - PUT
1157
1229
 
@@ -1203,6 +1275,19 @@ Updating (PUT) a Control can be accomplished by invoking the following command:
1203
1275
  |--estimatedCompletionDate |Date - Unix time format (e.g. 1499990400) |
1204
1276
  |--comments |String - Security control comments |
1205
1277
 
1278
+ - conditional parameters are:
1279
+
1280
+ |parameter | type or values |
1281
+ |------------------------|:----------------------------------------------|
1282
+ |--commonControlProvider |Possible values: DoD, Component, Enclave|
1283
+ |--naJustification |String - Justification for Security Controls deemed Not Applicable to the system |
1284
+ |--slcmCriticality |String - Criticality of Security Control regarding SLCM |
1285
+ |--slcmFrequency |Possible values - Constantly, Daily, Weekly, Monthly, Quarterly, Semi-Annually, Annually, or Undetermined |
1286
+ |--slcmMethod |Possible values: Automated, Semi-Automated, Manual, or Undetermined |
1287
+ |--slcmReporting |String - The System-Level Continuous Monitoring reporting |
1288
+ |--slcmTracking |String - The System-Level Continuous Monitoring tracking |
1289
+ |--slcmComments |String, - Additional comments for Security Control regarding SLCM |
1290
+
1206
1291
  - optional parameters are:
1207
1292
 
1208
1293
  |parameter | type or values |
@@ -1216,27 +1301,18 @@ Updating (PUT) a Control can be accomplished by invoking the following command:
1216
1301
  |--impact |Possible values: Very Low, Low, Moderate, High, Very High |
1217
1302
  |--impactDescription |String, - Description of the security control impact |
1218
1303
  |--residualRiskLevel |Possible values: Very Low, Low, Moderate, High, Very High |
1304
+ |--mitigation |String - Information about the Non-Compliant Security Control's vulnerabilities|
1305
+ |--applicationLayer |String - Navy specific applicablr to Financial Management overlay|
1306
+ |--databaseLayer |String - Navy specific applicablr to Financial Management overlay|
1307
+ |--operatingSystemLayer |String - Navy specific applicablr to Financial Management overlay|
1219
1308
 
1220
- - conditional parameters are:
1221
-
1222
- |parameter | type or values |
1223
- |------------------------|:----------------------------------------------|
1224
- |--commonControlProvider |Possible values: DoD, Component, Enclave|
1225
- |--naJustification |String - Justification for Security Controls deemed Not Applicable to the system |
1226
- |--slcmCriticality |String - Criticality of Security Control regarding SLCM |
1227
- |--slcmFrequency |Possible values - Constantly, Daily, Weekly, Monthly, Quarterly, Semi-Annually, Annually, or Undetermined |
1228
- |--slcmMethod |Possible values: Automated, Semi-Automated, Manual, or Undetermined |
1229
- |--slcmReporting |String - The System-Level Continuous Monitoring reporting |
1230
- |--slcmTracking |String - The System-Level Continuous Monitoring tracking |
1231
- |--slcmComments |String, - Additional comments for Security Control regarding SLCM |
1232
1309
 
1233
1310
  **Note**
1234
- For information at the command line use:
1311
+ For additional information about command line usages invoke the following help command:
1235
1312
  ```
1236
1313
  $ bundle exec exe/emasser put controls help update
1237
1314
  ```
1238
- [top](#put)
1239
-
1315
+ [top](#put-emdpoints)
1240
1316
  ### ``put poams``
1241
1317
 
1242
1318
  ----
@@ -1316,7 +1392,7 @@ Updating (PUT) a POA&M can be accomplished by invoking the following command:
1316
1392
 
1317
1393
  |parameter | type or values |
1318
1394
  |---------------------------|:---------------------------------------------------------------|
1319
- |--systemId |Integer - Unique system identifier |
1395
+ |-s, --systemId |Integer - Unique system identifier |
1320
1396
  |--displayPoamId |Integer - Globally unique identifier for individual POA&M Items |
1321
1397
  |--status |Possible Values: Ongoing,Risk Accepted,Completed,Not Applicable |
1322
1398
  |--vulnerabilityDescription |String - Vulnerability description for the POA&M Item |
@@ -1348,111 +1424,143 @@ Updating (PUT) a POA&M can be accomplished by invoking the following command:
1348
1424
  - --milestone milestoneId:[value] description:[value] scheduledCompletionDate:[value]
1349
1425
  - If a milestoneId is not provide a new milestone is created
1350
1426
 
1351
- - optional parameters are:
1352
-
1353
- |parameter | type or values |
1354
- |--------------------|:-----------------------------------------------------------------------------------------|
1355
- |--externalUid |String - External unique identifier for use with associating POA&M Items |
1356
- |--controlAcronym |String - Control acronym associated with the POA&M Item. NIST SP 800-53 Revision 4 defined|
1357
- |--cci |String - CCI associated with the test result |
1358
- |--securityChecks |String - Security Checks that are associated with the POA&M |
1359
- |--rawSeverity |Possible values: I, II, III |
1360
- |--relevanceOfThreat |Possible values: Very Low, Low, Moderate, High, Very High |
1361
- |--likelihood |Possible values: Very Low, Low, Moderate, High, Very High |
1362
- |--impact |Possible values: Very Low, Low, Moderate, High, Very High |
1363
- |--impactDescription |String - Include description of Security Control’s impact |
1364
- |--residualRiskLevel |Possible values: Very Low, Low, Moderate, High, Very High |
1365
- |--recommendations |String - Include recommendations |
1366
- |--mitigation |String - Include mitigation explanation. 2000 Characters |
1367
-
1368
1427
  **Note**
1369
- For information at the command line use:
1428
+ For additional information about command line usages invoke the following help command:
1370
1429
  ```
1371
1430
  $ bundle exec exe/emasser put poams help update
1372
1431
  ```
1373
- [top](#put)
1374
-
1432
+ [top](#put-endpoints)
1375
1433
  ### ``put milestones``
1376
1434
 
1377
1435
  ----
1378
1436
 
1379
- To add (POST) milestones in a system for one or more POA&M items use the following command:
1437
+ Updating (PUT) milestones in a system for one or more POA&M items use the following command:
1380
1438
 
1381
1439
  ````
1382
- $ bundle exec exe/emasser put milestones update [PARAMETERS]
1440
+ $ bundle exec exe/emasser post milestones update [-s, --systemId] <value> [-p, --poamId] <value> [-m, --milestoneId] <value> [-d, --description] <value> [c, --scheduledCompletionDate] <value>
1383
1441
  ````
1384
1442
  - required parameter are:
1385
1443
 
1386
- |parameter | type or values |
1387
- |---------------------------|:----------------------------------------------------|
1388
- |--systemId |Integer - Unique system identifier |
1389
- |--poamId |Integer - Unique poam identifier |
1390
- |--milestoneId |Integer - Unique milestone identifier |
1391
- |--description |String - Milestone item description. 2000 Characters |
1392
- |--scheduledCompletionDate |Date - Schedule completion date. Unix date format |
1444
+ |parameter | type or values |
1445
+ |-------------------------------|:----------------------------------------------------|
1446
+ |-s, --systemId |Integer - Unique system identifier |
1447
+ |-p, --poamId |Integer - Unique poam identifier |
1448
+ |-m, --milestoneId |Integer - Unique milestone identifier |
1449
+ |-d, --description |String - Milestone item description. 2000 Characters |
1450
+ |-c, --scheduledCompletionDate |Date - Schedule completion date. Unix date format |
1393
1451
 
1394
1452
 
1395
1453
  **Note**
1396
- For information at the command line use:
1454
+ For additional information about command line usages invoke the following help command:
1397
1455
  ```
1398
1456
  $ bundle exec exe/emasser put milestones help update
1399
1457
  ```
1400
- [top](#put)
1401
-
1458
+ [top](#put-endpoints)
1402
1459
  ### ``put artifacts``
1403
1460
 
1404
1461
  ----
1405
1462
  Business Rules
1406
1463
 
1407
- - Artifact cannot be saved if the file does not have the following file extensions:
1408
- - .docx,.doc,.txt,.rtf,.xfdl,.xml,.mht,.mhtml,.html,.htm,.pdf
1409
- - .mdb,.accdb,.ppt,.pptx,.xls,.xlsx,.csv,.log
1410
- - .jpeg,.jpg,.tiff,.bmp,.tif,.png,.gif
1411
- - .zip,.rar,.msg,.vsd,.vsw,.vdx, .z{#}, .ckl,.avi,.vsdx
1412
1464
  - Artifact cannot be saved if File Name (fileName) exceeds 1,000 characters
1413
- - Artifact cannot be saved if Description (description) exceeds 2,000 characters
1465
+ - Artifact cannot be saved if Name (name) exceeds 100 characters
1466
+ - Artifact cannot be saved if Description (description) exceeds 10,000 characters
1414
1467
  - Artifact cannot be saved if Reference Page Number (refPageNumber) exceeds 50 characters
1415
1468
  - Artifact cannot be saved if the file does not have an allowable file extension/type.
1416
1469
  - Artifact version cannot be saved if an Artifact with the same file name already exist in the system.
1417
1470
  - Artifact cannot be saved if the file size exceeds 30MB.
1418
1471
  - Artifact cannot be saved if the Last Review Date is set in the future.
1472
+ - Artifact cannot be saved if the following fields are missing data:
1473
+ - Filename
1474
+ - Type
1475
+ - Category
1419
1476
 
1420
- To add (POST) milestones in a system for one or more POA&M items use the following command:
1477
+ Updating (PUT) milestones in a system for one or more POA&M items use the following command:
1421
1478
 
1422
1479
  ````
1423
- $ bundle exec exe/emasser put artifacts update [PARAMETERS]
1480
+ $ bundle exec exe/emasser put artifacts update [-s, --systemId] <value> [-f, --filename] <value> [-T, --isTemplate or --no-isTemplate] [-t, --type] <value> [-c, --category] <value>
1424
1481
  ````
1425
1482
  - required parameter are:
1426
1483
 
1427
- |parameter | type or values |
1428
- |----------------|:----------------------------------------------------|
1429
- |--systemId |Integer - Unique system identifier |
1430
- |--filename |String - File name should match exactly one file within the provided zip file|
1431
- | |Binary - Application/zip file. Max 30MB per artifact |
1432
- |--isTemplate |Boolean - Indicates whether an artifact is a template|
1433
- |--type* |Possible Values: Procedure, Diagram, Policy, Labor, Document, Image, Other, Scan Result, Auditor Report|
1434
- |--category* |Possible Values: Implementation Guidance, Evidence |
1484
+ |parameter | type or values |
1485
+ |------------------|:----------------------------------------------------|
1486
+ |-s, --systemId |Integer - Unique system identifier |
1487
+ |-f, --filename |String - File name should match exactly one file within the provided zip file|
1488
+ | |Binary - Application/zip file. Max 30MB per artifact |
1489
+ |-T, --isTemplate |Boolean - Indicates whether an artifact is a template|
1490
+ |-t, --type* |Possible Values: Procedure, Diagram, Policy, Labor, Document, Image, Other, Scan Result, Auditor Report|
1491
+ |-c, --category* |Possible Values: Implementation Guidance, Evidence |
1435
1492
 
1436
1493
  *May also accept custom artifact category values set by system administrators.
1437
1494
 
1438
1495
  - optional parameter are:
1439
1496
 
1440
1497
  |parameter | type or values |
1441
- |-------------------------|:------------------------------------------------------|
1498
+ |-------------------------|:------------------------------------------------------|
1499
+ |--name |String - Artifact name. Character Limit = 100 |
1442
1500
  |--description |String - Artifact description. 2000 Characters |
1443
1501
  |--refPageNumber |String - Artifact reference page number. 50 Characters |
1444
- |--ccis |String - CCIs associated with artifact |
1445
1502
  |--controls |String - Control acronym associated with the artifact. NIST SP 800-53 Revision 4 defined|
1446
- |--artifactExpirationDate |Date - Date Artifact expires and requires review. In Unix Date Format|
1447
- |--lastReviewedDate |Date - Date Artifact was last reviewed. In Unix Date Format |
1448
-
1503
+ |--assessmentProcedures |String - The Security Control Assessment Procedure being associated with the artifact|
1504
+ |--expirationDate |Date - Date Artifact expires and requires review - Unix time format|
1505
+ |--lastReviewedDate |Date - Date Artifact was last reviewed. In Unix Date Format|
1506
+ |--signedDate |Date - Date artifact was signed. In Unix Date Format|
1449
1507
 
1450
1508
  **Note**
1451
- For information at the command line use:
1509
+ For additional information about command line usages invoke the following help command:
1452
1510
  ```
1453
1511
  $ bundle exec exe/emasser put artifacts help update
1454
1512
  ```
1455
- [top](#put)
1513
+ [top](#put-endpoints)
1514
+ ### ``put hardware``
1515
+ ---
1516
+ Update (PUT) one or many hardware assets in a system.
1517
+
1518
+ ````
1519
+ $ bundle exec exe/emasser post hardware add [-s, --systemId] <value> [-h, --hardwareId] <value> [-a, --assetName] <value>
1520
+ ````
1521
+
1522
+ - required parameter are:
1523
+
1524
+ |parameter | type or values |
1525
+ |----------------|:-----------------------------------|
1526
+ |-s, --systemId |Integer - Unique system identifier |
1527
+ |-h, --hardwareId|String - GUID identifying the specific hardware asset|
1528
+ |-a, --assetName |String - Name of the hardware asset |
1529
+
1530
+
1531
+ **Note**
1532
+ For additional information about command line usages invoke the following help command:
1533
+ ```
1534
+ $ bundle exec exe/emasser put hardware help add
1535
+ ```
1536
+
1537
+ [top](#put-endpoints)
1538
+ ### ``put software``
1539
+ ---
1540
+ Update (PUT) one or many software assets in a system.
1541
+
1542
+ ````
1543
+ $ bundle exec exe/emasser post software update [-s, --systemId] <value> [-S --softwareId] <value> [-V, --softwareVendor] <value> [-N, --softwareName] <value> [-v --version] <value>
1544
+ ````
1545
+
1546
+ - required parameter are:
1547
+
1548
+ |parameter | type or values |
1549
+ |------------------------|:---------------------------------------------------------------|
1550
+ |-s, --systemId |Integer - A numeric value representing the system identification|
1551
+ |-S, --softwareId |String - Unique software identifier |
1552
+ |-V, --softwareVendor |String - Vendor of the software asset |
1553
+ |-N, --softwareName |String - Name of the software asset |
1554
+ |-v, --version |String - Version of the software asset |
1555
+
1556
+ **Note**
1557
+ For additional information about command line usages invoke the following help command:
1558
+ ```
1559
+ $ bundle exec exe/emasser put software help add
1560
+ ```
1561
+
1562
+ [top](#put-endpoints)
1563
+
1456
1564
 
1457
1565
  ## Usage - DELETE
1458
1566
 
@@ -1463,10 +1571,9 @@ Remove one or many poa&m items in a system
1463
1571
 
1464
1572
  To remove (DELETE) one or more POA&M items use the following command:
1465
1573
  ```
1466
- bundle exec exe/emasser delete poams remove --systemId [value] --poamId [value]
1574
+ $ bundle exec exe/emasser delete poams remove [-s, --systemId] <value> [-p, --poamId] <value>
1467
1575
  ```
1468
- [top](#delete)
1469
-
1576
+ [top](#delete-endpoints)
1470
1577
  ### ``delete milestones``
1471
1578
 
1472
1579
  ----
@@ -1480,10 +1587,9 @@ The last milestone can not be deleted, at-least on must exist.
1480
1587
 
1481
1588
  To remove (DELETE) one or more Milestones in a system use the following command:
1482
1589
  ```
1483
- bundle exec exe/emasser delete milestones remove--systemId [value] --poamId [value] --milestoneId [value]
1590
+ $ bundle exec exe/emasser delete milestones remove [-s, --systemId] <value> [-p, --poamId] <value> [-m, --milestoneId] <value>
1484
1591
  ```
1485
- [top](#delete)
1486
-
1592
+ [top](#delete-endpoints)
1487
1593
  ### ``delete artifacts``
1488
1594
 
1489
1595
  ---
@@ -1493,10 +1599,47 @@ Provide single file or a space/comma delimited list of file names to be removed
1493
1599
 
1494
1600
  To remove (DELETE) one or more Artifacts from a system use the following command:
1495
1601
  ```
1496
- bundle exec exe/emasser delete artifacts remove --systemId [value] --files [value]
1497
- or
1498
- bundle exec exe/emasser delete artifacts remove --systemId [value] --files [value value...]
1499
- or
1500
- bundle exec exe/emasser delete artifacts remove --systemId [value] --files [value, value...]
1602
+ Delete one file:
1603
+ $ bundle exec exe/emasser delete artifacts remove [-s, --systemId] <value> [-f, --files] <value>
1604
+ Delete multiple files (can be space of comma delimited)
1605
+ $ bundle exec exe/emasser delete artifacts remove [-s, --systemId] <value> [-f, --files] <value ... value>
1606
+
1607
+ ```
1608
+ [top](#delete-endpoints)
1609
+ ### ``delete hardware``
1610
+ ---
1611
+ Delete one or many one or multiple assets from a system Hardware Baseline for a system
1612
+
1613
+ To remove (DELETE) a hardware asset use the following command:
1614
+ ```
1615
+ $ bundle exec exe/emasser delete hardware remove [-s, --systemId] <value> [-h, --hardwareIds] <value ... value>
1616
+ ```
1617
+
1618
+ [top](#delete-endpoints)
1619
+ ### ``delete software``
1620
+ ---
1621
+ Delete one or many one or multiple assets from a system Software Baselinefor a system
1622
+
1623
+ To remove (DELETE) a software asset use the following command:
1624
+ ```
1625
+ $ bundle exec exe/emasser delete software remove [-s, --systemId] <value> [-w, --softwareIds] <value ... value>
1626
+ ```
1627
+ [top](#delete-endpoints)
1628
+ ### ``delete cloud resource``
1629
+ ---
1630
+ Delete one or many Cloud Resources and their scan results in the assets module for a system
1631
+
1632
+ To remove (DELETE) one or many cloud resources in a system use the following command:
1633
+ ```
1634
+ $ bundle exec exe/emasser delete cloud_resource remove [-s, --systemId] <value> [-r, --resourceId] <value>
1635
+ ```
1636
+ [top](#delete-endpoints)
1637
+ ### ``delete container``
1638
+ ---
1639
+ Delete one or many containers scan results in the assets module for a system
1640
+
1641
+ To remove (DELETE) one or many containers in a system use the following command:
1642
+ ```
1643
+ bundle exec exe/emasser delete container remove [-s, --systemId] <value> [-c, --containerId] <value>
1501
1644
  ```
1502
- [top](#delete)
1645
+ [top](#delete-endpoints)