Application Findings (risksense_api.__subject.__application_findings.__application_findings
)¶
Application Findings module defined for different application findings related api endpoints.
- class risksense_api.__subject.__application_findings.__application_findings.ApplicationFindings(profile)[source]¶
Bases:
Subject
Class for Application Findings function defintions.
To utlise Application Findings function:
- Parameters:
profile (
object
) – Profile Object
- Usage:
self.{risksenseobjectname}.application_findings.{function}
Examples
To get model for application findings using
get_model()
function>>> self.{risksenseobject}.application_findings.get_model()
- __init__(profile)[source]¶
Initialization of Application Findings Object .
- Parameters:
profile (
object
) – Profile Object
- create(applicationids, assessmentid, synopsis, description, severity, sourceid, scanneruuid, title, solution, parameter, payload, request, response, filterrequests, cweids, applicationurl, isSelectedAll=False, csvdump=False, client_id=None)[source]¶
Creates application finding.
- Parameters:
applicationids (
list
) – A list containing application ids the findings are part ofassessmentid (
int
) – Assessment id of the findingsynopsis (
str
) – Synopsis for the application findingdescription (
str
) – description for the application findingseverity (
str
) – Application severitysourceid (
str
) – Sourceid of the applicationscanneruuid (
str
) – scanneruuid of the applicationtitle (
str
) – title for the applicationsolution (
str
) – solution for the applicationparameter (
str
) – parameter for the applicationpayload (
str
) – payload for the applicationrequest (
str
) – request for the applicationresponse (
str
) – request for the applicationfilterrequests (
list
) – filterrequests for the application as a listcweids (
list
) – cwe ids for the application as a listapplicationurl (
str
) – applicationurl for the application as a listisSelectedAll (
bool
) – whether isselectedallcsvdump (
bool
) – dumps id to csvclient_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.
- Return type:
<module ‘json’ from ‘/home/docs/.pyenv/versions/3.7.9/lib/python3.7/json/__init__.py’>
- Returns:
Jsonified response.
Example
To create an application finding
>>> self.{risksenseobject}.application_findings.create([123],123,"Application/Environment information being disclosed","[p]Any part of the application which reveals details","8","public_key_pinning","aaaabbbb-cccc-ddd","vulnerability test 4","[p]Applications should not reveal any debug or","","","","",[{"field":"id","exclusive":False,"operator":"IN","value":""}],[1,2],"/webpage.html")
Note
You can also dump the application finding job id created in a csv using
csvdump=True
:>>> self.{risksenseobject}.application_findings.create([123],123,"Application/Environment information being disclosed","[p]Any part of the application which reveals details","8","public_key_pinning","aaaabbbb-cccc-ddd","vulnerability test 4","[p]Applications should not reveal any debug or","","","","",[{"field":"id","exclusive":False,"operator":"IN","value":""}],[1,2],"/webpage.html",csvdump=True)
- update(applicationfindingid, applicationids, assessmentid, applicationurl, severity, sourceid, title, description, solution, synopsis, notes, cweids, request, response, parameter, payload, vulnrequestid, csvdump=False, client_id=None)[source]¶
Update application finding.
- Parameters:
applicationfindingid (
int
) – An id of the application finding to updateapplicationids (
int
) – A list containing application ids the findings are part ofassessmentid (
int
) – Assessment id of the findingapplicationurl (
str
) – Url of the applicationseverity (
int
) – Application severitysourceid (
int
) – Sourceid of the applicationtitle (
str
) – title for the applicationdescription (
str
) – description for the application findingsolution (
str
) – solution for the applicationsynopsis (
str
) – Synopsis for the application findingnotes (
str
) – notes for application findingcweids (
int
) – cwe idrequest (
str
) – request for the applicationresponse (
str
) – request for the applicationparameter (
str
) – parameter for the applicationpayload (
str
) – payload for the applicationvulnrequestid (
int
) – payload for the applicationcsvdump (
bool
) – dumps the data in csvclient_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.
- Return type:
dict
- Returns:
Jsonified response.
Example
To Update the application findings
>>> self.{risksenseobject}.application_findings.update(applicationfindingid=3205739,applicationids=11519,assessmentid=107556,applicationurl="/webpage.html",severity=9,sourceid=1234,title='vulnerability test 8',description="[p]Any part of the application which reveals details",solution='something to work on etc',synopsis='something to work on etc',notes='something to work on etc',cweids=79,request='',response='',parameter='',payload='',vulnrequestid=1234)
Note
You can also dump the job id of the application findings using
csvdump=True
argument:>>> self.{risksenseobject}.application_findings.update(applicationfindingid=3205739,applicationids=11519,assessmentid=107556,applicationurl="/webpage.html",severity=9,sourceid=1234,title='vulnerability test 8',description="[p]Any part of the application which reveals details",solution='something to work on etc',synopsis='something to work on etc',notes='something to work on etc',cweids=79,request='',response='',parameter='',payload='',vulnrequestid=1234,csvdump=True)
- get_model(client_id=None)[source]¶
Get available projections and models for application findings.
- Parameters:
client_id (
typing.Optional
[int
]) – Client ID- Return type:
dict
- Returns:
Application findings projections and models are returned.
Example
An example to use get_model is
>>> self.{risksenseobject}.application_findings.get_model()
- list_applicationfinding_filter_fields(client_id=None)[source]¶
Lists application finding filter fields.
- Parameters:
client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.- Return type:
list
- Returns:
The JSON output from the platform is returned, listing the available filter fields.
Examples
>>> self.{risksenseobject}.application_findings.list_applicationfinding_filter_fields()
- suggest(search_filter_1, search_filter_2, client_id=None)[source]¶
Suggest values for filter fields.
- Parameters:
search_filter_1 (
list
) – Search Filter 1search_filter_2 (
dict
) – Search Filter 2client_id (
typing.Optional
[int
]) – Client ID
- Return type:
list
- Returns:
Value suggestions
Example
To use suggest function is
>>> self.{risksenseobject}.application_findings.suggest([],{})
- search(search_filters, projection='basic', page_size=150, sort_field='id', sort_dir='ASC', csvdump=False, client_id=None)[source]¶
Searches for and returns application findings based on the provided filter(s) and other parameters. Rather than returning paginated results, this function cycles through all pages of results and returns them all in a single list.
- Parameters:
search_filters (
list
) – A list of dictionaries containing filter parameters.projection (
str
) – Projection to be used in API request. Projection.BASIC or Projection.DETAILpage_size (
int
) – The number of results per page to be returned.sort_field (
str
) – The field to be used for sorting results returned.sort_dir (
str
) – The direction of sorting to be used. SortDirection.ASC or SortDirection.DESCclient_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.csvdump (
bool
) – csvdump is a boolean which you can make true if you want to dump the data from system filters in a csv. Keep it false if its not needed.
- Return type:
list
- Returns:
A list containing all application findings returned by the search using the filter provided.
Example
An example to search for application finding data is
>>> self.{risksenseobject}.application_findings.search([])
Note
You can also dump the search based data in a csv by simply providing
csvdump=True
argument>>> self.{risksenseobject}.application_findings.search([],csvdump=True)
- downloadfilterinexport(filename, filters, client_id=None)[source]¶
Exports and Downloads a file based on the filters defined .
- Parameters:
filename (
str
) – Name of the file to export asfilters (
list
) – Application findings search filters based on which the export performsclient_id (
typing.Optional
[int
]) – The client id to get the data from. If not supplied, takes default client id
**IGNORE INTERNAL FUNCTION*
Examples
>>> self.{risksenseobject}.application_findings.downloadfilterinexport('applicationfindingsdata',[])
- get_single_search_page(search_filters, projection='basic', page_num=0, page_size=150, sort_field='id', sort_dir='ASC', client_id=None)[source]¶
Searches for and returns application findings based on the provided filter(s) and other parameters.
- Parameters:
search_filters (
list
) – A list of dictionaries containing filter parameters.projection (
str
) – The projection to use for API call. Projection.BASIC or Projection.DETAILpage_num (
int
) – Page number of results to be returned.page_size (
int
) – Number of results to be returned per page.sort_field (
str
) – Name of field to sort results on.sort_dir (
str
) – Direction to sort. SortDirection.ASC or SortDirection.DESC.client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.
- Return type:
dict
- Returns:
The paginated JSON response from the platform is returned.
Example
An example to get single search page of application findings data
>>> self.{risksenseobject}.application_findings.get_single_search_page([])
You can also try changing the other arguments to your liking to reflect the data as you suffice such as change page_size or page_num etc.
>>> self.{risksenseobject}.application_findings.get_single_search_page([],page_num=2,page_size=10)
- apply_system_filters(csvdump=False, client_id=None)[source]¶
Get data from system filters for application findings.
- Parameters:
client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, it will use the profile’s default Client ID.csvdump (
bool
) – csvdump is a boolean which you can make true if you want to dump the data from system filters in a csv. Keep it false if it’s not needed.
- Return type:
list
- Returns:
The data of the system filter based application findings values are returned
Example
An example to use apply_system_filters is
>>> self.{risksenseobject}.application_findings.apply_system_filters()
The system filters will be displayed in the terminal to which you must provide a key value and the data returned will reflect based on the system filter chosen
Note
You can also dump the application findings from the system filters search by
csvdump=True
argument>>> self.{risksenseobject}.application_findings.apply_system_filters(csvdump=True)
- get_groupby_appfinding(client_id=None)[source]¶
Gets all the groupby key metrics for application findings
- Parameters:
client_id (
typing.Optional
[int
]) – The client id , if none, default client id is taken- Return type:
dict
- Returns:
The group by key metrics
**IGNORE INTERNAL FUNCTION* .. admonition:: Example
>>> self.{risksenseobject}.application_findings.get_groupby_appfinding()
Note
This function just returns the groupbyfields
- groupby_appfinding(filters=[], sortorder=None, csvdump=False, client_id=None)[source]¶
Gets groupby data for all application finding
- Parameters:
filters (
list
) – The filters which will be used for groupbysortorder (
typing.Optional
[str
]) – The order to sort the groupby values, please choose ASC for ascending and DESC for descendingcsvdump (
bool
) – Whether to export the data populated, if false will not exportclient_id (
typing.Optional
[int
]) – The client id , if none, default client id is taken
- Return type:
dict
- Returns:
Jsonified response
Example
>>> self.{risksenseobject}.application_findings.groupby_appfinding({filter})
The filter must be provided for the group by to be used. The groupby fields will be displayed in the terminal and you must choose a group by filter to which the data will be populated
Note
This function also has an option to dump the data in a csv by a simple argument,
csvdump=True
>>> self.{risksenseobject}.application_findings.groupby_appfinding({filter},csvdump=True)
- get_count(search_filters, client_id=None)[source]¶
Gets a count of application findings identified using the provided filter(s).
- Parameters:
search_filters (
list
) – A list of dictionaries containing filter parameters.client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.
- Return type:
int
- Returns:
The number of application findings identified using the provided filter(s).
Example
An example to use get count function is as follows
>>> self.{risksenseobject}.application_findings.get_count([])
- add_tag(search_filters, tag_id, csvdump=False, client_id=None)[source]¶
Add a tag to application finding(s).
- Parameters:
search_filters (
list
) – A list of dictionaries containing filter parameters.tag_id (
int
) – ID of tag to tbe added to application findings(s).csvdump (
bool
) – dumps the data in csvclient_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.
- Return type:
int
- Returns:
The job ID is returned.
Example
An example to add a tag is
>>> self.{risksenseobject}.application_findings.add_tag([],1234)
Note
You can also dump the application findings from the search filters post the tag completion for more information by
csvdump=True
argument>>> self.{risksenseobject}.application_findings.add_tag([],1234,csvdump=True)
- remove_tag(search_filters, tag_id, csvdump=False, client_id=None)[source]¶
Remove a tag to application finding(s).
- Parameters:
search_filters (
list
) – A list of dictionaries containing filter parameters.tag_id (
int
) – ID of tag to be removed from application findings(s).client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, it will use the profile’s default Client ID.csvdump (
bool
) – dumps the data in csv
- Return type:
int
- Returns:
The job ID is returned.
Example
An example to use remove tag is
>>> self.{risksenseobject}.application_findings.remove_tag([],123)
Note
You can also dump the application findings which the tags will be removed from with a
csvdump=True
argument>>> self.{risksenseobject}.application_findings.remove_tag([],123,csvdump=True)
- assign(search_filters, user_ids, csvdump=False, client_id=None)[source]¶
Assign user(s) to application findings.
- Parameters:
search_filters (
list
) – A list of dictionaries containing filter parameters.user_ids (
list
) – A list of user IDs.csvdump (
bool
) – Dumps data in csvclient_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.
- Return type:
int
- Returns:
The job ID in the platform is returned.
Example
- Lets assign user 123 to application findings based on filter of patch id 123
>>> self.{risksenseobject}.application_findings.assign([{"field":"source_patch_ids","exclusive":False,"operator":"IN","value":"123"}],[123])
Note
You can also dump the application findings data before assigning them to users using
csvdump=True
argument>>> self.{risksenseobject}.application_findings.assign([{"field":"source_patch_ids","exclusive":False,"operator":"IN","value":"123"}],[123],csvdump=True)
- unassign(search_filters, user_ids, csvdump=False, client_id=None)[source]¶
Unassigns user(s) from application findings.
- Parameters:
search_filters (
list
) – A list of dictionaries containing filter parameters.user_ids (
list
) – A list of user IDs to which application findings to be unassigned.csvdump (
bool
) – Dumps data in csvclient_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.
- Return type:
int
- Returns:
The job ID in the platform is returned.
Example
Lets unassign user 123 from application findings based on filter of patch id 123
>>> self.{risksenseobject}.application_findings.unassign([{"field":"source_patch_ids","exclusive":False,"operator":"IN","value":"123"}],[123])
Note
You can also dump the application findings data before unassigning them from users using
csvdump=True
argument>>> self.{risksenseobject}.application_findings.unassign([{"field":"source_patch_ids","exclusive":False,"operator":"IN","value":"123"}],[123],csvdump=True)
- getdynamiccolumns(client_id=None)[source]¶
Gets Dynamic columns for the application findings.
- Parameters:
client_id (
typing.Optional
[int
]) – If an ID isn’t passed, will use the profile’s default Client ID.- Return type:
list
- Returns:
The Dynamic columns
Examples
>>> self.{risksenseobject}.application_findings.getdynamiccolumns()
- getexporttemplate(client_id=None)[source]¶
Gets configurable export template for application findings.
- Parameters:
client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.- Return type:
list
- Returns:
The Exportable fields
Example
An example to use getexporttemplate
>>> self.{risksenseobject}.application_findings.getexporttemplate()
This gets all the export templates for application findings
- getexporttemplatebyid(export_id=None, client_id=None)[source]¶
Gets configurable export template by id for application findings.
- Parameters:
client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.- Return type:
list
- Returns:
The Exportable fields
Example
An example to use getexporttemplate
>>> self.{risksenseobject}.application_findings.getexporttemplatebyid(id)
This gets the export template of the id for application findings
- Parameters:
export_id (
typing.Optional
[int
]) –
- getexporttemplates(client_id=None)[source]¶
Gets created existing export template for application findings.
- Parameters:
client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.- Return type:
list
- Returns:
The Exportable fields
Example
An example to use getexporttemplates
>>> self.{risksenseobject}.application_findings.getexporttemplates()
This gets all the export templates for application findings
- export(search_filters, file_name, row_count='All', file_type='CSV', export_id=None, client_id=None)[source]¶
Initiates an export job on the platform for application finding(s) based on the provided filter(s), by default fetches all the columns data.
- Parameters:
search_filters (
list
) – A list of dictionaries containing filter parameters.file_name (
str
) – The name to be used for the exported file.row_count (
str
) – No of rows to be exported. Available options ExportRowNumbers.ROW_10000, ExportRowNumbers.ROW_25000, ExportRowNumbers.ROW_50000, ExportRowNumbers.ROW_100000, ExportRowNumbers.ROW_ALLfile_type (
str
) – File type to export. ExportFileType.CSV, ExportFileType.JSON, or ExportFileType.XLSXclient_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.export_id (
typing.Optional
[int
]) – The export id of an existing export template to use
- Return type:
int
- Returns:
The job ID in the platform from is returned.
Example
An example to use export is
>>> self.{risksenseobject}.application_findings.export([],'testingexport')
You can change the filetype to any of the names above or even the other positional arguments as mentioned
>>> self.{risksenseobject}.application_findings.export([],'testingexport',file_type=ExportFileType.JSON)
- subscribe_new_open_ransomware_findings(client_id=None)[source]¶
Subscribes the user to new open ransomware findings
- Parameters:
client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.- Return type:
dict
- Returns:
The response to the subscription that was performed
Example
An example to use subscribe_new_open_ransomware_findings()
>>> self.{risksenseobject}.application_findings.subscribe_new_open_ransomware_findings()
This helps the user subscrive to new open ransomware findings
- unsubscribe_new_open_ransomware_findings(client_id=None)[source]¶
Unsubscribes the user from new open ransomware findings
- Parameters:
client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.- Return type:
dict
- Returns:
The response to the unsubscription that was performed
Example
An example to use unsubscribe_new_open_ransomware_findings()
>>> self.{risksenseobject}.application_findings.unsubscribe_new_open_ransomware_findings()
This helps the user unsubscribe from new open ransomware findings
- subscribe_new_open_critical_findings_vrr(client_id=None)[source]¶
Subscribes the user to new open critical findings based on vrr
- Parameters:
client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.- Return type:
dict
- Returns:
The response to the subscription that was performed
Example
An example to use subscribe_new_open_critical_findings_vrr()
>>> self.{risksenseobject}.application_findings.subscribe_new_open_critical_findings_vrr()
This helps the user subscribe to new open critical findings based on vrr.
- unsubscribe_new_open_critical_findings_vrr(client_id=None)[source]¶
Unsubscribes the user from new open critical findings
- Parameters:
client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.- Return type:
dict
- Returns:
The response to the subscription that was performed
Example
An example to use unsubscribe_new_open_critical_findings_vrr()
>>> self.{risksenseobject}.application_findings.unsubscribe_new_open_critical_findings_vrr()
This helps the user to unsubscribe from new open critical findings based on vrr.
- subscribe_new_open_critical_findings_severity(client_id=None)[source]¶
Subscribes the user to new open critical findings based on severity
- Parameters:
client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.- Return type:
dict
- Returns:
The response to the subscription that was performed
Example
An example to use subscribe_new_open_critical_findings_severity()
>>> self.{risksenseobject}.application_findings.subscribe_new_open_critical_findings_severity()
This helps the user subscribe to new open critical findings based on severity.
- unsubscribe_new_open_critical_findings_severity(client_id=None)[source]¶
Unsubscribes the user from new open critical findings based on severity
- Parameters:
client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.- Return type:
dict
- Returns:
The response to the subscription that was performed
Example
An example to use unsubscribe_new_open_critical_findings_severity()
>>> self.{risksenseobject}.application_findings.unsubscribe_new_open_critical_findings_severity()
This helps the user unsubscribe from new open critical findings based on severity.
- subscribe_new_open_high_findings_vrr(client_id=None)[source]¶
Subscribes the user to new open high findings based on vrr
- Parameters:
client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.- Return type:
dict
- Returns:
The response to the subscription that was performed
Example
An example to use subscribe_new_open_high_findings_vrr()
>>> self.{risksenseobject}.application_findings.subscribe_new_open_high_findings_vrr()
This helps the user subscribe to new open high findings based on vrr.
- unsubscribe_new_open_high_findings_vrr(client_id=None)[source]¶
Unsubscribe the user from new open high findings based on vrr
- Parameters:
client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.- Return type:
dict
- Returns:
The response to the subscription that was performed
Example
An example to use unsubscribe_new_open_high_findings_vrr()
>>> self.{risksenseobject}.application_findings.unsubscribe_new_open_high_findings_vrr()
This helps the user unsubscribe from new open high findings based on vrr.
- subscribe_new_open_high_findings_severity(client_id=None)[source]¶
Subscribes the user to new open high findings based on severity
- Parameters:
client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.- Return type:
dict
- Returns:
The response to the subscription that was performed
Example
An example to use subscribe_new_open_high_findings_severity()
>>> self.{risksenseobject}.application_findings.subscribe_new_open_high_findings_severity()
This helps the user subscribe to new open high findings based on severity.
- unsubscribe_new_open_high_findings_severity(client_id=None)[source]¶
Unsubscribes the user from new open high findings based on severity
- Parameters:
client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.- Return type:
dict
- Returns:
The response to the subscription that was performed
Example
An example to use unsubscribe_new_open_high_findings_severity()
>>> self.{risksenseobject}.application_findings.unsubscribe_new_open_high_findings_severity()
This helps the user unsubscribe from new open high findings based on severity.
- update_due_date(search_filters, due_date, csvdump=False, client_id=None)[source]¶
Update the due date for remediation of an application finding.
- Parameters:
search_filters (
list
) – A list of dictionaries containing filter parameters.due_date (
str
) – The due date to assign. Must be in “YYYY-MM-DD” format.csvdump (
bool
) – Dumps the data in csvclient_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.
- Return type:
int
- Returns:
The job ID in the platform is returned.
Example
Lets update an application finding id 1234 to due date 2022-08-11
>>> self.{risksenseobject}.application_findings.update_due_date([{"field":"id","exclusive":False,"operator":"IN","value":"1234"}],'2022-08-11')
Note
You can also dump the application findings data after updating their due date using
csvdump=True
argument>>> self.{risksenseobject}.application_findings.update_due_date([{"field":"id","exclusive":False,"operator":"IN","value":"1234"}],'2022-08-11',csvdump=True)
- self_assign(filterfields, userid, csvdump=False, client_id=None)[source]¶
The application findings fetched are assigned to the current user
- Parameters:
filterfields (
list
) – A list of dictionaries containing filter parameters.userid (
list
) – A list of user IDs to be assigned to application findings(s).client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.csvdump (
bool
) – dumps the data in csv
- Return type:
int
- Returns:
The job ID in the platform is returned.
Example
Lets assign user 123 to application finding 1234
>>> self.{risksenseobject}.application_finding.self_assign([{"field":"id","exclusive":False,"operator":"IN","value":"1234"}],[123])
Note
You can also dump the application findings data before assigning them to users using
csvdump=True
argument>>> self.{risksenseobject}.application_finding.self_assign([{"field":"id","exclusive":False,"operator":"IN","value":"1234"}],[123],csvdump=True)
- self_unassign(filterfields, userid, csvdump=False, client_id=None)[source]¶
The application findings fetched are unassigned from users
- Parameters:
filterfields (
list
) – A list of dictionaries containing filter parameters.userid (
list
) – A list of user IDs to be assigned to Application Findings(s).csvdump (
bool
) – dumps the data in csvclient_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.
- Return type:
int
- Returns:
The job ID in the platform is returned.
Example
To unassign user 123 from finding id 1234
>>> self.{risksenseobject}.application_findings.self_unassign([{"field":"id","exclusive":False,"operator":"IN","value":"1234"}],[123])
Note
You can also dump the application findings data before unassigning them from users using
csvdump=True
argument>>> self.{risksenseobject}.application_findings.self_unassign([{"field":"id","exclusive":False,"operator":"IN","value":"1234"}],[123],csvdump=True)
- add_note(search_filters, note, csvdump=False, client_id=None)[source]¶
Add a note to application finding(s).
- Parameters:
search_filters (
list
) – A list of dictionaries containing filter parameters.note (
str
) – A note to assign to the application findings.csvdump (
bool
) – dumps the data in csvclient_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.
- Return type:
int
- Returns:
The job ID in the platform is returned.
Example
To add a note ‘testing’ to application finding id 123
>>> self.{risksenseobject}.application_findings.add_note([{"field":"id","exclusive":False,"operator":"IN","value":"123"}],'testing')
Note
You can also dump the application findings data post adding a note using
csvdump=True
argument>>> self.{risksenseobject}.application_findings.add_note([{"field":"id","exclusive":False,"operator":"IN","value":"123"}],'testing',csvdump=True)
- add_ticket_tag(search_filters, tag_id, client_id=None)[source]¶
Adds a ticket tag to the application findings based on a search filter
- Parameters:
search_filters (
list
) – A list of dictionaries containing filter parameters.tag_id (
int
) – The tag idclient_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.
- Return type:
int
- Returns:
The job ID in the platform is returned.
Example
To add a ticket tag to application findings
>>> self.{risksenseobject}.application_findings.add_ticket_tag([],123)
- delete_manage_observations(applicationfindingid, vulnrequestid, csvdump=False, client_id=None)[source]¶
Delete manage observations
- Parameters:
applicationfindingid (
int
) – Application finding idvulnrequestid (
int
) – Vulnerability request idcsvdump (
bool
) – dumps the data in csvclient_id (
typing.Optional
[int
]) – Client id of user, if none gets default client id
- Return type:
bool
- Returns:
Success response
Example
To delete observation linked to application finding id 123 and vulnrequest id 1234
>>> self.{risksenseobject}.application_findings.delete_manage_observations(123,1234)
Note
You can also dump the application findings data before deleting the manage observation using
csvdump=True
argument>>> self.{risksenseobject}.application_findings.delete_manage_observations(123,1234,csvdump=True)
- delete(search_filters, csvdump=False, client_id=None)[source]¶
Delete application findings based on filter(s).
- Parameters:
search_filters (
list
) – A list of dictionaries containing filter parameters.csvdump (
bool
) – csvdump is a boolean which you can make true if you want to dump the data from system filters in a csv. Keep it false if its not needed.client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.
- Return type:
int
- Returns:
The job ID from the platform is returned.
Example
To delete application finding by id 12345
>>> self.{risksenseobject}.application_findings.delete([{"field":"id","exclusive":False,"operator":"IN","value":"12345"}])
Note
You can also dump the application findings data before deleting the application findings using
csvdump=True
argument>>> self.{risksenseobject}.application_findings.delete([{"field":"id","exclusive":False,"operator":"IN","value":"12345"}],csvdump=True)
- _tag(search_filters, tag_id, is_remove=False, client_id=None)[source]¶
Add/Remove a tag to application findings.
- Parameters:
search_filters (
list
) – A list of dictionaries containing filter parameters.tag_id (
int
) – The tag ID to apply.is_remove (
bool
) – remove tag? Mention true if need to be removed or false if to addclient_id (
typing.Optional
[int
]) – Client ID.
- Return type:
int
- Returns:
The job ID is returned.
Example
To add a tag
>>> self.{risksenseobject}.application_findings._tag([{"field":"id","exclusive":False,"operator":"IN","value":"12345"}],123,is_remove=False)
To delete a tag
>>> self.rs.application_findings._tag([{"field":"id","exclusive":False,"operator":"IN","value":"12345"}],123,is_remove=True)
- map_findings(filter_request, workflowtype, workflowuuid, csvdump=False, client_id=None)[source]¶
Maps findings to a worklow request based on workflow uuid.
- Parameters:
filter_request (
list
) – A list of dictionaries containing filter parameters.workflowtype (
str
) – Type of workflow, either falsePositive,remediation,acceptance,severityChange. Please use the exact names as above for workflow type.workflowuuid (
str
) – Uuid of the workflow.csvdump (
bool
) – csvdump is a boolean which you can make true if you want to dump the data from system filters in a csv. Keep it false if its not needed.client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.
- Return type:
bool
- Returns:
Whether success or not.
Example
To map a workflow ‘st1234’ to finding by id ‘123’ of type severitychange
>>> self.{risksenseobject}.application_findings.map_findings([{"field":"id","exclusive":False,"operator":"IN","orWithPrevious":False,"implicitFilters":[],"value":"123"}],'severityChange','st1234')
Note
You can also dump the application findings data post mapping the findings using
csvdump=True
argument>>> self.{risksenseobject}.application_findings.map_findings([{"field":"id","exclusive":False,"operator":"IN","orWithPrevious":False,"implicitFilters":[],"value":"123"}],'severityChange','st1234',csvdump=True)
- unmap_findings(filter_request, workflowtype, workflowuuid, csvdump=False, client_id=None)[source]¶
Unmaps findings from worklow request based on workflow uuid.
- Parameters:
filter_request (
list
) – A list of dictionaries containing filter parameters.workflowtype (
str
) – Type of workflow, either falsePositive,remediation,acceptance,severityChange. Please use the exact names as above for workflow type.workflowuuid (
str
) – Uuid of the workflow.csvdump (
bool
) – csvdump is a boolean which you can make true if you want to dump the data from system filters in a csv. Keep it false if its not needed.client_id (
typing.Optional
[int
]) – Client ID. If an ID isn’t passed, will use the profile’s default Client ID.
- Return type:
bool
- Returns:
Whether success or not.
Example
To unmap a workflow ‘st1234’ from finding by id ‘123’ of type severitychange
>>> self.{risksenseobject}.application_findings.unmap_findings([{"field":"id","exclusive":False,"operator":"IN","orWithPrevious":False,"implicitFilters":[],"value":"123"}],'severityChange','st1234')
Note
You can also dump the application findings data before unmapping the findings using
csvdump=True
argument>>> self.{risksenseobject}.application_findings.unmap_findings([{"field":"id","exclusive":False,"operator":"IN","orWithPrevious":False,"implicitFilters":[],"value":"123"}],'severityChange','st1234',csvdump=True)