1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
6 #pragma once
7 #include <aws/macie2/Macie2_EXPORTS.h>
8 
9 namespace Aws
10 {
11 namespace Utils
12 {
13 namespace Json
14 {
15   class JsonValue;
16   class JsonView;
17 } // namespace Json
18 } // namespace Utils
19 namespace Macie2
20 {
21 namespace Model
22 {
23 
24   /**
25    * <p>Specifies configuration settings that determine which findings are published
26    * to Security Hub automatically. For information about how Macie publishes
27    * findings to Security Hub, see <a
28    * href="https://docs.aws.amazon.com/macie/latest/user/securityhub-integration.html">Amazon
29    * Macie integration with Security Hub</a> in the <i>Amazon Macie User
30    * Guide</i>.</p><p><h3>See Also:</h3>   <a
31    * href="http://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/SecurityHubConfiguration">AWS
32    * API Reference</a></p>
33    */
34   class AWS_MACIE2_API SecurityHubConfiguration
35   {
36   public:
37     SecurityHubConfiguration();
38     SecurityHubConfiguration(Aws::Utils::Json::JsonView jsonValue);
39     SecurityHubConfiguration& operator=(Aws::Utils::Json::JsonView jsonValue);
40     Aws::Utils::Json::JsonValue Jsonize() const;
41 
42 
43     /**
44      * <p>Specifies whether to publish sensitive data findings to Security Hub. If you
45      * set this value to true, Amazon Macie automatically publishes all sensitive data
46      * findings that weren't suppressed by a findings filter. The default value is
47      * false.</p>
48      */
GetPublishClassificationFindings()49     inline bool GetPublishClassificationFindings() const{ return m_publishClassificationFindings; }
50 
51     /**
52      * <p>Specifies whether to publish sensitive data findings to Security Hub. If you
53      * set this value to true, Amazon Macie automatically publishes all sensitive data
54      * findings that weren't suppressed by a findings filter. The default value is
55      * false.</p>
56      */
PublishClassificationFindingsHasBeenSet()57     inline bool PublishClassificationFindingsHasBeenSet() const { return m_publishClassificationFindingsHasBeenSet; }
58 
59     /**
60      * <p>Specifies whether to publish sensitive data findings to Security Hub. If you
61      * set this value to true, Amazon Macie automatically publishes all sensitive data
62      * findings that weren't suppressed by a findings filter. The default value is
63      * false.</p>
64      */
SetPublishClassificationFindings(bool value)65     inline void SetPublishClassificationFindings(bool value) { m_publishClassificationFindingsHasBeenSet = true; m_publishClassificationFindings = value; }
66 
67     /**
68      * <p>Specifies whether to publish sensitive data findings to Security Hub. If you
69      * set this value to true, Amazon Macie automatically publishes all sensitive data
70      * findings that weren't suppressed by a findings filter. The default value is
71      * false.</p>
72      */
WithPublishClassificationFindings(bool value)73     inline SecurityHubConfiguration& WithPublishClassificationFindings(bool value) { SetPublishClassificationFindings(value); return *this;}
74 
75 
76     /**
77      * <p>Specifies whether to publish policy findings to Security Hub. If you set this
78      * value to true, Amazon Macie automatically publishes all new and updated policy
79      * findings that weren't suppressed by a findings filter. The default value is
80      * true.</p>
81      */
GetPublishPolicyFindings()82     inline bool GetPublishPolicyFindings() const{ return m_publishPolicyFindings; }
83 
84     /**
85      * <p>Specifies whether to publish policy findings to Security Hub. If you set this
86      * value to true, Amazon Macie automatically publishes all new and updated policy
87      * findings that weren't suppressed by a findings filter. The default value is
88      * true.</p>
89      */
PublishPolicyFindingsHasBeenSet()90     inline bool PublishPolicyFindingsHasBeenSet() const { return m_publishPolicyFindingsHasBeenSet; }
91 
92     /**
93      * <p>Specifies whether to publish policy findings to Security Hub. If you set this
94      * value to true, Amazon Macie automatically publishes all new and updated policy
95      * findings that weren't suppressed by a findings filter. The default value is
96      * true.</p>
97      */
SetPublishPolicyFindings(bool value)98     inline void SetPublishPolicyFindings(bool value) { m_publishPolicyFindingsHasBeenSet = true; m_publishPolicyFindings = value; }
99 
100     /**
101      * <p>Specifies whether to publish policy findings to Security Hub. If you set this
102      * value to true, Amazon Macie automatically publishes all new and updated policy
103      * findings that weren't suppressed by a findings filter. The default value is
104      * true.</p>
105      */
WithPublishPolicyFindings(bool value)106     inline SecurityHubConfiguration& WithPublishPolicyFindings(bool value) { SetPublishPolicyFindings(value); return *this;}
107 
108   private:
109 
110     bool m_publishClassificationFindings;
111     bool m_publishClassificationFindingsHasBeenSet;
112 
113     bool m_publishPolicyFindings;
114     bool m_publishPolicyFindingsHasBeenSet;
115   };
116 
117 } // namespace Model
118 } // namespace Macie2
119 } // namespace Aws
120