/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the securityhub-2018-10-26.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.SecurityHub.Model
{
///
/// Container for the parameters to the BatchUpdateFindings operation.
/// Used by Security Hub customers to update information about their investigation into
/// a finding. Requested by administrator accounts or member accounts. Administrator accounts
/// can update findings for their account and their member accounts. Member accounts can
/// update findings for their account.
///
///
///
/// Updates from BatchUpdateFindings
do not affect the value of UpdatedAt
/// for a finding.
///
///
///
/// Administrator and member accounts can use BatchUpdateFindings
to update
/// the following finding fields and objects.
///
/// -
///
///
Confidence
///
/// -
///
///
Criticality
///
/// -
///
///
Note
///
/// -
///
///
RelatedFindings
///
/// -
///
///
Severity
///
/// -
///
///
Types
///
/// -
///
///
UserDefinedFields
///
/// -
///
///
VerificationState
///
/// -
///
///
Workflow
///
///
///
/// You can configure IAM policies to restrict access to fields and field values. For
/// example, you might not want member accounts to be able to suppress findings or change
/// the finding severity. See Configuring
/// access to BatchUpdateFindings in the Security Hub User Guide.
///
///
public partial class BatchUpdateFindingsRequest : AmazonSecurityHubRequest
{
private int? _confidence;
private int? _criticality;
private List _findingIdentifiers = new List();
private NoteUpdate _note;
private List _relatedFindings = new List();
private SeverityUpdate _severity;
private List _types = new List();
private Dictionary _userDefinedFields = new Dictionary();
private VerificationState _verificationState;
private WorkflowUpdate _workflow;
///
/// Gets and sets the property Confidence.
///
/// The updated value for the finding confidence. Confidence is defined as the likelihood
/// that a finding accurately identifies the behavior or issue that it was intended to
/// identify.
///
///
///
/// Confidence is scored on a 0-100 basis using a ratio scale, where 0 means zero percent
/// confidence and 100 means 100 percent confidence.
///
///
[AWSProperty(Min=0, Max=100)]
public int Confidence
{
get { return this._confidence.GetValueOrDefault(); }
set { this._confidence = value; }
}
// Check to see if Confidence property is set
internal bool IsSetConfidence()
{
return this._confidence.HasValue;
}
///
/// Gets and sets the property Criticality.
///
/// The updated value for the level of importance assigned to the resources associated
/// with the findings.
///
///
///
/// A score of 0 means that the underlying resources have no criticality, and a score
/// of 100 is reserved for the most critical resources.
///
///
[AWSProperty(Min=0, Max=100)]
public int Criticality
{
get { return this._criticality.GetValueOrDefault(); }
set { this._criticality = value; }
}
// Check to see if Criticality property is set
internal bool IsSetCriticality()
{
return this._criticality.HasValue;
}
///
/// Gets and sets the property FindingIdentifiers.
///
/// The list of findings to update. BatchUpdateFindings
can be used to update
/// up to 100 findings at a time.
///
///
///
/// For each finding, the list provides the finding identifier and the ARN of the finding
/// provider.
///
///
[AWSProperty(Required=true)]
public List FindingIdentifiers
{
get { return this._findingIdentifiers; }
set { this._findingIdentifiers = value; }
}
// Check to see if FindingIdentifiers property is set
internal bool IsSetFindingIdentifiers()
{
return this._findingIdentifiers != null && this._findingIdentifiers.Count > 0;
}
///
/// Gets and sets the property Note.
///
public NoteUpdate Note
{
get { return this._note; }
set { this._note = value; }
}
// Check to see if Note property is set
internal bool IsSetNote()
{
return this._note != null;
}
///
/// Gets and sets the property RelatedFindings.
///
/// A list of findings that are related to the updated findings.
///
///
public List RelatedFindings
{
get { return this._relatedFindings; }
set { this._relatedFindings = value; }
}
// Check to see if RelatedFindings property is set
internal bool IsSetRelatedFindings()
{
return this._relatedFindings != null && this._relatedFindings.Count > 0;
}
///
/// Gets and sets the property Severity.
///
/// Used to update the finding severity.
///
///
public SeverityUpdate Severity
{
get { return this._severity; }
set { this._severity = value; }
}
// Check to see if Severity property is set
internal bool IsSetSeverity()
{
return this._severity != null;
}
///
/// Gets and sets the property Types.
///
/// One or more finding types in the format of namespace/category/classifier that classify
/// a finding.
///
///
///
/// Valid namespace values are as follows.
///
/// -
///
/// Software and Configuration Checks
///
///
-
///
/// TTPs
///
///
-
///
/// Effects
///
///
-
///
/// Unusual Behaviors
///
///
-
///
/// Sensitive Data Identifications
///
///
///
public List Types
{
get { return this._types; }
set { this._types = value; }
}
// Check to see if Types property is set
internal bool IsSetTypes()
{
return this._types != null && this._types.Count > 0;
}
///
/// Gets and sets the property UserDefinedFields.
///
/// A list of name/value string pairs associated with the finding. These are custom, user-defined
/// fields added to a finding.
///
///
public Dictionary UserDefinedFields
{
get { return this._userDefinedFields; }
set { this._userDefinedFields = value; }
}
// Check to see if UserDefinedFields property is set
internal bool IsSetUserDefinedFields()
{
return this._userDefinedFields != null && this._userDefinedFields.Count > 0;
}
///
/// Gets and sets the property VerificationState.
///
/// Indicates the veracity of a finding.
///
///
///
/// The available values for VerificationState
are as follows.
///
/// -
///
///
UNKNOWN
– The default disposition of a security finding
///
/// -
///
///
TRUE_POSITIVE
– The security finding is confirmed
///
/// -
///
///
FALSE_POSITIVE
– The security finding was determined to be a false alarm
///
/// -
///
///
BENIGN_POSITIVE
– A special case of TRUE_POSITIVE
where
/// the finding doesn't pose any threat, is expected, or both
///
///
///
public VerificationState VerificationState
{
get { return this._verificationState; }
set { this._verificationState = value; }
}
// Check to see if VerificationState property is set
internal bool IsSetVerificationState()
{
return this._verificationState != null;
}
///
/// Gets and sets the property Workflow.
///
/// Used to update the workflow status of a finding.
///
///
///
/// The workflow status indicates the progress of the investigation into the finding.
///
///
///
public WorkflowUpdate Workflow
{
get { return this._workflow; }
set { this._workflow = value; }
}
// Check to see if Workflow property is set
internal bool IsSetWorkflow()
{
return this._workflow != null;
}
}
}