UNPKG

137 kBTypeScriptView Raw
1import {Request} from '../lib/request';
2import {Response} from '../lib/response';
3import {AWSError} from '../lib/error';
4import {Service} from '../lib/service';
5import {ServiceConfigurationOptions} from '../lib/service';
6import {ConfigBase as Config} from '../lib/config';
7interface Blob {}
8declare class SecurityHub extends Service {
9 /**
10 * Constructs a service object. This object has one method for each API operation.
11 */
12 constructor(options?: SecurityHub.Types.ClientConfiguration)
13 config: Config & SecurityHub.Types.ClientConfiguration;
14 /**
15 * Accepts the invitation to be a member account and be monitored by the Security Hub master account that the invitation was sent from. When the member account accepts the invitation, permission is granted to the master account to view findings generated in the member account.
16 */
17 acceptInvitation(params: SecurityHub.Types.AcceptInvitationRequest, callback?: (err: AWSError, data: SecurityHub.Types.AcceptInvitationResponse) => void): Request<SecurityHub.Types.AcceptInvitationResponse, AWSError>;
18 /**
19 * Accepts the invitation to be a member account and be monitored by the Security Hub master account that the invitation was sent from. When the member account accepts the invitation, permission is granted to the master account to view findings generated in the member account.
20 */
21 acceptInvitation(callback?: (err: AWSError, data: SecurityHub.Types.AcceptInvitationResponse) => void): Request<SecurityHub.Types.AcceptInvitationResponse, AWSError>;
22 /**
23 * Disables the standards specified by the provided StandardsSubscriptionArns. For more information, see Security Standards section of the AWS Security Hub User Guide.
24 */
25 batchDisableStandards(params: SecurityHub.Types.BatchDisableStandardsRequest, callback?: (err: AWSError, data: SecurityHub.Types.BatchDisableStandardsResponse) => void): Request<SecurityHub.Types.BatchDisableStandardsResponse, AWSError>;
26 /**
27 * Disables the standards specified by the provided StandardsSubscriptionArns. For more information, see Security Standards section of the AWS Security Hub User Guide.
28 */
29 batchDisableStandards(callback?: (err: AWSError, data: SecurityHub.Types.BatchDisableStandardsResponse) => void): Request<SecurityHub.Types.BatchDisableStandardsResponse, AWSError>;
30 /**
31 * Enables the standards specified by the provided StandardsArn. To obtain the ARN for a standard, use the DescribeStandards operation. For more information, see the Security Standards section of the AWS Security Hub User Guide.
32 */
33 batchEnableStandards(params: SecurityHub.Types.BatchEnableStandardsRequest, callback?: (err: AWSError, data: SecurityHub.Types.BatchEnableStandardsResponse) => void): Request<SecurityHub.Types.BatchEnableStandardsResponse, AWSError>;
34 /**
35 * Enables the standards specified by the provided StandardsArn. To obtain the ARN for a standard, use the DescribeStandards operation. For more information, see the Security Standards section of the AWS Security Hub User Guide.
36 */
37 batchEnableStandards(callback?: (err: AWSError, data: SecurityHub.Types.BatchEnableStandardsResponse) => void): Request<SecurityHub.Types.BatchEnableStandardsResponse, AWSError>;
38 /**
39 * Imports security findings generated from an integrated third-party product into Security Hub. This action is requested by the integrated product to import its findings into Security Hub. The maximum allowed size for a finding is 240 Kb. An error is returned for any finding larger than 240 Kb.
40 */
41 batchImportFindings(params: SecurityHub.Types.BatchImportFindingsRequest, callback?: (err: AWSError, data: SecurityHub.Types.BatchImportFindingsResponse) => void): Request<SecurityHub.Types.BatchImportFindingsResponse, AWSError>;
42 /**
43 * Imports security findings generated from an integrated third-party product into Security Hub. This action is requested by the integrated product to import its findings into Security Hub. The maximum allowed size for a finding is 240 Kb. An error is returned for any finding larger than 240 Kb.
44 */
45 batchImportFindings(callback?: (err: AWSError, data: SecurityHub.Types.BatchImportFindingsResponse) => void): Request<SecurityHub.Types.BatchImportFindingsResponse, AWSError>;
46 /**
47 * Creates a custom action target in Security Hub. You can use custom actions on findings and insights in Security Hub to trigger target actions in Amazon CloudWatch Events.
48 */
49 createActionTarget(params: SecurityHub.Types.CreateActionTargetRequest, callback?: (err: AWSError, data: SecurityHub.Types.CreateActionTargetResponse) => void): Request<SecurityHub.Types.CreateActionTargetResponse, AWSError>;
50 /**
51 * Creates a custom action target in Security Hub. You can use custom actions on findings and insights in Security Hub to trigger target actions in Amazon CloudWatch Events.
52 */
53 createActionTarget(callback?: (err: AWSError, data: SecurityHub.Types.CreateActionTargetResponse) => void): Request<SecurityHub.Types.CreateActionTargetResponse, AWSError>;
54 /**
55 * Creates a custom insight in Security Hub. An insight is a consolidation of findings that relate to a security issue that requires attention or remediation. To group the related findings in the insight, use the GroupByAttribute.
56 */
57 createInsight(params: SecurityHub.Types.CreateInsightRequest, callback?: (err: AWSError, data: SecurityHub.Types.CreateInsightResponse) => void): Request<SecurityHub.Types.CreateInsightResponse, AWSError>;
58 /**
59 * Creates a custom insight in Security Hub. An insight is a consolidation of findings that relate to a security issue that requires attention or remediation. To group the related findings in the insight, use the GroupByAttribute.
60 */
61 createInsight(callback?: (err: AWSError, data: SecurityHub.Types.CreateInsightResponse) => void): Request<SecurityHub.Types.CreateInsightResponse, AWSError>;
62 /**
63 * Creates a member association in Security Hub between the specified accounts and the account used to make the request, which is the master account. To successfully create a member, you must use this action from an account that already has Security Hub enabled. To enable Security Hub, you can use the EnableSecurityHub operation. After you use CreateMembers to create member account associations in Security Hub, you must use the InviteMembers operation to invite the accounts to enable Security Hub and become member accounts in Security Hub. If the account owner accepts the invitation, the account becomes a member account in Security Hub, and a permission policy is added that permits the master account to view the findings generated in the member account. When Security Hub is enabled in the invited account, findings start to be sent to both the member and master accounts. To remove the association between the master and member accounts, use the DisassociateFromMasterAccount or DisassociateMembers operation.
64 */
65 createMembers(params: SecurityHub.Types.CreateMembersRequest, callback?: (err: AWSError, data: SecurityHub.Types.CreateMembersResponse) => void): Request<SecurityHub.Types.CreateMembersResponse, AWSError>;
66 /**
67 * Creates a member association in Security Hub between the specified accounts and the account used to make the request, which is the master account. To successfully create a member, you must use this action from an account that already has Security Hub enabled. To enable Security Hub, you can use the EnableSecurityHub operation. After you use CreateMembers to create member account associations in Security Hub, you must use the InviteMembers operation to invite the accounts to enable Security Hub and become member accounts in Security Hub. If the account owner accepts the invitation, the account becomes a member account in Security Hub, and a permission policy is added that permits the master account to view the findings generated in the member account. When Security Hub is enabled in the invited account, findings start to be sent to both the member and master accounts. To remove the association between the master and member accounts, use the DisassociateFromMasterAccount or DisassociateMembers operation.
68 */
69 createMembers(callback?: (err: AWSError, data: SecurityHub.Types.CreateMembersResponse) => void): Request<SecurityHub.Types.CreateMembersResponse, AWSError>;
70 /**
71 * Declines invitations to become a member account.
72 */
73 declineInvitations(params: SecurityHub.Types.DeclineInvitationsRequest, callback?: (err: AWSError, data: SecurityHub.Types.DeclineInvitationsResponse) => void): Request<SecurityHub.Types.DeclineInvitationsResponse, AWSError>;
74 /**
75 * Declines invitations to become a member account.
76 */
77 declineInvitations(callback?: (err: AWSError, data: SecurityHub.Types.DeclineInvitationsResponse) => void): Request<SecurityHub.Types.DeclineInvitationsResponse, AWSError>;
78 /**
79 * Deletes a custom action target from Security Hub. Deleting a custom action target does not affect any findings or insights that were already sent to Amazon CloudWatch Events using the custom action.
80 */
81 deleteActionTarget(params: SecurityHub.Types.DeleteActionTargetRequest, callback?: (err: AWSError, data: SecurityHub.Types.DeleteActionTargetResponse) => void): Request<SecurityHub.Types.DeleteActionTargetResponse, AWSError>;
82 /**
83 * Deletes a custom action target from Security Hub. Deleting a custom action target does not affect any findings or insights that were already sent to Amazon CloudWatch Events using the custom action.
84 */
85 deleteActionTarget(callback?: (err: AWSError, data: SecurityHub.Types.DeleteActionTargetResponse) => void): Request<SecurityHub.Types.DeleteActionTargetResponse, AWSError>;
86 /**
87 * Deletes the insight specified by the InsightArn.
88 */
89 deleteInsight(params: SecurityHub.Types.DeleteInsightRequest, callback?: (err: AWSError, data: SecurityHub.Types.DeleteInsightResponse) => void): Request<SecurityHub.Types.DeleteInsightResponse, AWSError>;
90 /**
91 * Deletes the insight specified by the InsightArn.
92 */
93 deleteInsight(callback?: (err: AWSError, data: SecurityHub.Types.DeleteInsightResponse) => void): Request<SecurityHub.Types.DeleteInsightResponse, AWSError>;
94 /**
95 * Deletes invitations received by the AWS account to become a member account.
96 */
97 deleteInvitations(params: SecurityHub.Types.DeleteInvitationsRequest, callback?: (err: AWSError, data: SecurityHub.Types.DeleteInvitationsResponse) => void): Request<SecurityHub.Types.DeleteInvitationsResponse, AWSError>;
98 /**
99 * Deletes invitations received by the AWS account to become a member account.
100 */
101 deleteInvitations(callback?: (err: AWSError, data: SecurityHub.Types.DeleteInvitationsResponse) => void): Request<SecurityHub.Types.DeleteInvitationsResponse, AWSError>;
102 /**
103 * Deletes the specified member accounts from Security Hub.
104 */
105 deleteMembers(params: SecurityHub.Types.DeleteMembersRequest, callback?: (err: AWSError, data: SecurityHub.Types.DeleteMembersResponse) => void): Request<SecurityHub.Types.DeleteMembersResponse, AWSError>;
106 /**
107 * Deletes the specified member accounts from Security Hub.
108 */
109 deleteMembers(callback?: (err: AWSError, data: SecurityHub.Types.DeleteMembersResponse) => void): Request<SecurityHub.Types.DeleteMembersResponse, AWSError>;
110 /**
111 * Returns a list of the custom action targets in Security Hub in your account.
112 */
113 describeActionTargets(params: SecurityHub.Types.DescribeActionTargetsRequest, callback?: (err: AWSError, data: SecurityHub.Types.DescribeActionTargetsResponse) => void): Request<SecurityHub.Types.DescribeActionTargetsResponse, AWSError>;
114 /**
115 * Returns a list of the custom action targets in Security Hub in your account.
116 */
117 describeActionTargets(callback?: (err: AWSError, data: SecurityHub.Types.DescribeActionTargetsResponse) => void): Request<SecurityHub.Types.DescribeActionTargetsResponse, AWSError>;
118 /**
119 * Returns details about the Hub resource in your account, including the HubArn and the time when you enabled Security Hub.
120 */
121 describeHub(params: SecurityHub.Types.DescribeHubRequest, callback?: (err: AWSError, data: SecurityHub.Types.DescribeHubResponse) => void): Request<SecurityHub.Types.DescribeHubResponse, AWSError>;
122 /**
123 * Returns details about the Hub resource in your account, including the HubArn and the time when you enabled Security Hub.
124 */
125 describeHub(callback?: (err: AWSError, data: SecurityHub.Types.DescribeHubResponse) => void): Request<SecurityHub.Types.DescribeHubResponse, AWSError>;
126 /**
127 * Returns information about the available products that you can subscribe to and integrate with Security Hub in order to consolidate findings.
128 */
129 describeProducts(params: SecurityHub.Types.DescribeProductsRequest, callback?: (err: AWSError, data: SecurityHub.Types.DescribeProductsResponse) => void): Request<SecurityHub.Types.DescribeProductsResponse, AWSError>;
130 /**
131 * Returns information about the available products that you can subscribe to and integrate with Security Hub in order to consolidate findings.
132 */
133 describeProducts(callback?: (err: AWSError, data: SecurityHub.Types.DescribeProductsResponse) => void): Request<SecurityHub.Types.DescribeProductsResponse, AWSError>;
134 /**
135 * Returns a list of the available standards in Security Hub. For each standard, the results include the standard ARN, the name, and a description.
136 */
137 describeStandards(params: SecurityHub.Types.DescribeStandardsRequest, callback?: (err: AWSError, data: SecurityHub.Types.DescribeStandardsResponse) => void): Request<SecurityHub.Types.DescribeStandardsResponse, AWSError>;
138 /**
139 * Returns a list of the available standards in Security Hub. For each standard, the results include the standard ARN, the name, and a description.
140 */
141 describeStandards(callback?: (err: AWSError, data: SecurityHub.Types.DescribeStandardsResponse) => void): Request<SecurityHub.Types.DescribeStandardsResponse, AWSError>;
142 /**
143 * Returns a list of security standards controls. For each control, the results include information about whether it is currently enabled, the severity, and a link to remediation information.
144 */
145 describeStandardsControls(params: SecurityHub.Types.DescribeStandardsControlsRequest, callback?: (err: AWSError, data: SecurityHub.Types.DescribeStandardsControlsResponse) => void): Request<SecurityHub.Types.DescribeStandardsControlsResponse, AWSError>;
146 /**
147 * Returns a list of security standards controls. For each control, the results include information about whether it is currently enabled, the severity, and a link to remediation information.
148 */
149 describeStandardsControls(callback?: (err: AWSError, data: SecurityHub.Types.DescribeStandardsControlsResponse) => void): Request<SecurityHub.Types.DescribeStandardsControlsResponse, AWSError>;
150 /**
151 * Disables the integration of the specified product with Security Hub. After the integration is disabled, findings from that product are no longer sent to Security Hub.
152 */
153 disableImportFindingsForProduct(params: SecurityHub.Types.DisableImportFindingsForProductRequest, callback?: (err: AWSError, data: SecurityHub.Types.DisableImportFindingsForProductResponse) => void): Request<SecurityHub.Types.DisableImportFindingsForProductResponse, AWSError>;
154 /**
155 * Disables the integration of the specified product with Security Hub. After the integration is disabled, findings from that product are no longer sent to Security Hub.
156 */
157 disableImportFindingsForProduct(callback?: (err: AWSError, data: SecurityHub.Types.DisableImportFindingsForProductResponse) => void): Request<SecurityHub.Types.DisableImportFindingsForProductResponse, AWSError>;
158 /**
159 * Disables Security Hub in your account only in the current Region. To disable Security Hub in all Regions, you must submit one request per Region where you have enabled Security Hub. When you disable Security Hub for a master account, it doesn't disable Security Hub for any associated member accounts. When you disable Security Hub, your existing findings and insights and any Security Hub configuration settings are deleted after 90 days and cannot be recovered. Any standards that were enabled are disabled, and your master and member account associations are removed. If you want to save your existing findings, you must export them before you disable Security Hub.
160 */
161 disableSecurityHub(params: SecurityHub.Types.DisableSecurityHubRequest, callback?: (err: AWSError, data: SecurityHub.Types.DisableSecurityHubResponse) => void): Request<SecurityHub.Types.DisableSecurityHubResponse, AWSError>;
162 /**
163 * Disables Security Hub in your account only in the current Region. To disable Security Hub in all Regions, you must submit one request per Region where you have enabled Security Hub. When you disable Security Hub for a master account, it doesn't disable Security Hub for any associated member accounts. When you disable Security Hub, your existing findings and insights and any Security Hub configuration settings are deleted after 90 days and cannot be recovered. Any standards that were enabled are disabled, and your master and member account associations are removed. If you want to save your existing findings, you must export them before you disable Security Hub.
164 */
165 disableSecurityHub(callback?: (err: AWSError, data: SecurityHub.Types.DisableSecurityHubResponse) => void): Request<SecurityHub.Types.DisableSecurityHubResponse, AWSError>;
166 /**
167 * Disassociates the current Security Hub member account from the associated master account.
168 */
169 disassociateFromMasterAccount(params: SecurityHub.Types.DisassociateFromMasterAccountRequest, callback?: (err: AWSError, data: SecurityHub.Types.DisassociateFromMasterAccountResponse) => void): Request<SecurityHub.Types.DisassociateFromMasterAccountResponse, AWSError>;
170 /**
171 * Disassociates the current Security Hub member account from the associated master account.
172 */
173 disassociateFromMasterAccount(callback?: (err: AWSError, data: SecurityHub.Types.DisassociateFromMasterAccountResponse) => void): Request<SecurityHub.Types.DisassociateFromMasterAccountResponse, AWSError>;
174 /**
175 * Disassociates the specified member accounts from the associated master account.
176 */
177 disassociateMembers(params: SecurityHub.Types.DisassociateMembersRequest, callback?: (err: AWSError, data: SecurityHub.Types.DisassociateMembersResponse) => void): Request<SecurityHub.Types.DisassociateMembersResponse, AWSError>;
178 /**
179 * Disassociates the specified member accounts from the associated master account.
180 */
181 disassociateMembers(callback?: (err: AWSError, data: SecurityHub.Types.DisassociateMembersResponse) => void): Request<SecurityHub.Types.DisassociateMembersResponse, AWSError>;
182 /**
183 * Enables the integration of a partner product with Security Hub. Integrated products send findings to Security Hub. When you enable a product integration, a permission policy that grants permission for the product to send findings to Security Hub is applied.
184 */
185 enableImportFindingsForProduct(params: SecurityHub.Types.EnableImportFindingsForProductRequest, callback?: (err: AWSError, data: SecurityHub.Types.EnableImportFindingsForProductResponse) => void): Request<SecurityHub.Types.EnableImportFindingsForProductResponse, AWSError>;
186 /**
187 * Enables the integration of a partner product with Security Hub. Integrated products send findings to Security Hub. When you enable a product integration, a permission policy that grants permission for the product to send findings to Security Hub is applied.
188 */
189 enableImportFindingsForProduct(callback?: (err: AWSError, data: SecurityHub.Types.EnableImportFindingsForProductResponse) => void): Request<SecurityHub.Types.EnableImportFindingsForProductResponse, AWSError>;
190 /**
191 * Enables Security Hub for your account in the current Region or the Region you specify in the request. When you enable Security Hub, you grant to Security Hub the permissions necessary to gather findings from other services that are integrated with Security Hub. When you use the EnableSecurityHub operation to enable Security Hub, you also automatically enable the CIS AWS Foundations standard. You do not enable the Payment Card Industry Data Security Standard (PCI DSS) standard. To not enable the CIS AWS Foundations standard, set EnableDefaultStandards to false. After you enable Security Hub, to enable a standard, use the BatchEnableStandards operation. To disable a standard, use the BatchDisableStandards operation. To learn more, see Setting Up AWS Security Hub in the AWS Security Hub User Guide.
192 */
193 enableSecurityHub(params: SecurityHub.Types.EnableSecurityHubRequest, callback?: (err: AWSError, data: SecurityHub.Types.EnableSecurityHubResponse) => void): Request<SecurityHub.Types.EnableSecurityHubResponse, AWSError>;
194 /**
195 * Enables Security Hub for your account in the current Region or the Region you specify in the request. When you enable Security Hub, you grant to Security Hub the permissions necessary to gather findings from other services that are integrated with Security Hub. When you use the EnableSecurityHub operation to enable Security Hub, you also automatically enable the CIS AWS Foundations standard. You do not enable the Payment Card Industry Data Security Standard (PCI DSS) standard. To not enable the CIS AWS Foundations standard, set EnableDefaultStandards to false. After you enable Security Hub, to enable a standard, use the BatchEnableStandards operation. To disable a standard, use the BatchDisableStandards operation. To learn more, see Setting Up AWS Security Hub in the AWS Security Hub User Guide.
196 */
197 enableSecurityHub(callback?: (err: AWSError, data: SecurityHub.Types.EnableSecurityHubResponse) => void): Request<SecurityHub.Types.EnableSecurityHubResponse, AWSError>;
198 /**
199 * Returns a list of the standards that are currently enabled.
200 */
201 getEnabledStandards(params: SecurityHub.Types.GetEnabledStandardsRequest, callback?: (err: AWSError, data: SecurityHub.Types.GetEnabledStandardsResponse) => void): Request<SecurityHub.Types.GetEnabledStandardsResponse, AWSError>;
202 /**
203 * Returns a list of the standards that are currently enabled.
204 */
205 getEnabledStandards(callback?: (err: AWSError, data: SecurityHub.Types.GetEnabledStandardsResponse) => void): Request<SecurityHub.Types.GetEnabledStandardsResponse, AWSError>;
206 /**
207 * Returns a list of findings that match the specified criteria.
208 */
209 getFindings(params: SecurityHub.Types.GetFindingsRequest, callback?: (err: AWSError, data: SecurityHub.Types.GetFindingsResponse) => void): Request<SecurityHub.Types.GetFindingsResponse, AWSError>;
210 /**
211 * Returns a list of findings that match the specified criteria.
212 */
213 getFindings(callback?: (err: AWSError, data: SecurityHub.Types.GetFindingsResponse) => void): Request<SecurityHub.Types.GetFindingsResponse, AWSError>;
214 /**
215 * Lists the results of the Security Hub insight specified by the insight ARN.
216 */
217 getInsightResults(params: SecurityHub.Types.GetInsightResultsRequest, callback?: (err: AWSError, data: SecurityHub.Types.GetInsightResultsResponse) => void): Request<SecurityHub.Types.GetInsightResultsResponse, AWSError>;
218 /**
219 * Lists the results of the Security Hub insight specified by the insight ARN.
220 */
221 getInsightResults(callback?: (err: AWSError, data: SecurityHub.Types.GetInsightResultsResponse) => void): Request<SecurityHub.Types.GetInsightResultsResponse, AWSError>;
222 /**
223 * Lists and describes insights for the specified insight ARNs.
224 */
225 getInsights(params: SecurityHub.Types.GetInsightsRequest, callback?: (err: AWSError, data: SecurityHub.Types.GetInsightsResponse) => void): Request<SecurityHub.Types.GetInsightsResponse, AWSError>;
226 /**
227 * Lists and describes insights for the specified insight ARNs.
228 */
229 getInsights(callback?: (err: AWSError, data: SecurityHub.Types.GetInsightsResponse) => void): Request<SecurityHub.Types.GetInsightsResponse, AWSError>;
230 /**
231 * Returns the count of all Security Hub membership invitations that were sent to the current member account, not including the currently accepted invitation.
232 */
233 getInvitationsCount(params: SecurityHub.Types.GetInvitationsCountRequest, callback?: (err: AWSError, data: SecurityHub.Types.GetInvitationsCountResponse) => void): Request<SecurityHub.Types.GetInvitationsCountResponse, AWSError>;
234 /**
235 * Returns the count of all Security Hub membership invitations that were sent to the current member account, not including the currently accepted invitation.
236 */
237 getInvitationsCount(callback?: (err: AWSError, data: SecurityHub.Types.GetInvitationsCountResponse) => void): Request<SecurityHub.Types.GetInvitationsCountResponse, AWSError>;
238 /**
239 * Provides the details for the Security Hub master account for the current member account.
240 */
241 getMasterAccount(params: SecurityHub.Types.GetMasterAccountRequest, callback?: (err: AWSError, data: SecurityHub.Types.GetMasterAccountResponse) => void): Request<SecurityHub.Types.GetMasterAccountResponse, AWSError>;
242 /**
243 * Provides the details for the Security Hub master account for the current member account.
244 */
245 getMasterAccount(callback?: (err: AWSError, data: SecurityHub.Types.GetMasterAccountResponse) => void): Request<SecurityHub.Types.GetMasterAccountResponse, AWSError>;
246 /**
247 * Returns the details for the Security Hub member accounts for the specified account IDs.
248 */
249 getMembers(params: SecurityHub.Types.GetMembersRequest, callback?: (err: AWSError, data: SecurityHub.Types.GetMembersResponse) => void): Request<SecurityHub.Types.GetMembersResponse, AWSError>;
250 /**
251 * Returns the details for the Security Hub member accounts for the specified account IDs.
252 */
253 getMembers(callback?: (err: AWSError, data: SecurityHub.Types.GetMembersResponse) => void): Request<SecurityHub.Types.GetMembersResponse, AWSError>;
254 /**
255 * Invites other AWS accounts to become member accounts for the Security Hub master account that the invitation is sent from. Before you can use this action to invite a member, you must first use the CreateMembers action to create the member account in Security Hub. When the account owner accepts the invitation to become a member account and enables Security Hub, the master account can view the findings generated from the member account.
256 */
257 inviteMembers(params: SecurityHub.Types.InviteMembersRequest, callback?: (err: AWSError, data: SecurityHub.Types.InviteMembersResponse) => void): Request<SecurityHub.Types.InviteMembersResponse, AWSError>;
258 /**
259 * Invites other AWS accounts to become member accounts for the Security Hub master account that the invitation is sent from. Before you can use this action to invite a member, you must first use the CreateMembers action to create the member account in Security Hub. When the account owner accepts the invitation to become a member account and enables Security Hub, the master account can view the findings generated from the member account.
260 */
261 inviteMembers(callback?: (err: AWSError, data: SecurityHub.Types.InviteMembersResponse) => void): Request<SecurityHub.Types.InviteMembersResponse, AWSError>;
262 /**
263 * Lists all findings-generating solutions (products) that you are subscribed to receive findings from in Security Hub.
264 */
265 listEnabledProductsForImport(params: SecurityHub.Types.ListEnabledProductsForImportRequest, callback?: (err: AWSError, data: SecurityHub.Types.ListEnabledProductsForImportResponse) => void): Request<SecurityHub.Types.ListEnabledProductsForImportResponse, AWSError>;
266 /**
267 * Lists all findings-generating solutions (products) that you are subscribed to receive findings from in Security Hub.
268 */
269 listEnabledProductsForImport(callback?: (err: AWSError, data: SecurityHub.Types.ListEnabledProductsForImportResponse) => void): Request<SecurityHub.Types.ListEnabledProductsForImportResponse, AWSError>;
270 /**
271 * Lists all Security Hub membership invitations that were sent to the current AWS account.
272 */
273 listInvitations(params: SecurityHub.Types.ListInvitationsRequest, callback?: (err: AWSError, data: SecurityHub.Types.ListInvitationsResponse) => void): Request<SecurityHub.Types.ListInvitationsResponse, AWSError>;
274 /**
275 * Lists all Security Hub membership invitations that were sent to the current AWS account.
276 */
277 listInvitations(callback?: (err: AWSError, data: SecurityHub.Types.ListInvitationsResponse) => void): Request<SecurityHub.Types.ListInvitationsResponse, AWSError>;
278 /**
279 * Lists details about all member accounts for the current Security Hub master account.
280 */
281 listMembers(params: SecurityHub.Types.ListMembersRequest, callback?: (err: AWSError, data: SecurityHub.Types.ListMembersResponse) => void): Request<SecurityHub.Types.ListMembersResponse, AWSError>;
282 /**
283 * Lists details about all member accounts for the current Security Hub master account.
284 */
285 listMembers(callback?: (err: AWSError, data: SecurityHub.Types.ListMembersResponse) => void): Request<SecurityHub.Types.ListMembersResponse, AWSError>;
286 /**
287 * Returns a list of tags associated with a resource.
288 */
289 listTagsForResource(params: SecurityHub.Types.ListTagsForResourceRequest, callback?: (err: AWSError, data: SecurityHub.Types.ListTagsForResourceResponse) => void): Request<SecurityHub.Types.ListTagsForResourceResponse, AWSError>;
290 /**
291 * Returns a list of tags associated with a resource.
292 */
293 listTagsForResource(callback?: (err: AWSError, data: SecurityHub.Types.ListTagsForResourceResponse) => void): Request<SecurityHub.Types.ListTagsForResourceResponse, AWSError>;
294 /**
295 * Adds one or more tags to a resource.
296 */
297 tagResource(params: SecurityHub.Types.TagResourceRequest, callback?: (err: AWSError, data: SecurityHub.Types.TagResourceResponse) => void): Request<SecurityHub.Types.TagResourceResponse, AWSError>;
298 /**
299 * Adds one or more tags to a resource.
300 */
301 tagResource(callback?: (err: AWSError, data: SecurityHub.Types.TagResourceResponse) => void): Request<SecurityHub.Types.TagResourceResponse, AWSError>;
302 /**
303 * Removes one or more tags from a resource.
304 */
305 untagResource(params: SecurityHub.Types.UntagResourceRequest, callback?: (err: AWSError, data: SecurityHub.Types.UntagResourceResponse) => void): Request<SecurityHub.Types.UntagResourceResponse, AWSError>;
306 /**
307 * Removes one or more tags from a resource.
308 */
309 untagResource(callback?: (err: AWSError, data: SecurityHub.Types.UntagResourceResponse) => void): Request<SecurityHub.Types.UntagResourceResponse, AWSError>;
310 /**
311 * Updates the name and description of a custom action target in Security Hub.
312 */
313 updateActionTarget(params: SecurityHub.Types.UpdateActionTargetRequest, callback?: (err: AWSError, data: SecurityHub.Types.UpdateActionTargetResponse) => void): Request<SecurityHub.Types.UpdateActionTargetResponse, AWSError>;
314 /**
315 * Updates the name and description of a custom action target in Security Hub.
316 */
317 updateActionTarget(callback?: (err: AWSError, data: SecurityHub.Types.UpdateActionTargetResponse) => void): Request<SecurityHub.Types.UpdateActionTargetResponse, AWSError>;
318 /**
319 * Updates the Note and RecordState of the Security Hub-aggregated findings that the filter attributes specify. Any member account that can view the finding also sees the update to the finding.
320 */
321 updateFindings(params: SecurityHub.Types.UpdateFindingsRequest, callback?: (err: AWSError, data: SecurityHub.Types.UpdateFindingsResponse) => void): Request<SecurityHub.Types.UpdateFindingsResponse, AWSError>;
322 /**
323 * Updates the Note and RecordState of the Security Hub-aggregated findings that the filter attributes specify. Any member account that can view the finding also sees the update to the finding.
324 */
325 updateFindings(callback?: (err: AWSError, data: SecurityHub.Types.UpdateFindingsResponse) => void): Request<SecurityHub.Types.UpdateFindingsResponse, AWSError>;
326 /**
327 * Updates the Security Hub insight identified by the specified insight ARN.
328 */
329 updateInsight(params: SecurityHub.Types.UpdateInsightRequest, callback?: (err: AWSError, data: SecurityHub.Types.UpdateInsightResponse) => void): Request<SecurityHub.Types.UpdateInsightResponse, AWSError>;
330 /**
331 * Updates the Security Hub insight identified by the specified insight ARN.
332 */
333 updateInsight(callback?: (err: AWSError, data: SecurityHub.Types.UpdateInsightResponse) => void): Request<SecurityHub.Types.UpdateInsightResponse, AWSError>;
334 /**
335 * Used to control whether an individual security standard control is enabled or disabled.
336 */
337 updateStandardsControl(params: SecurityHub.Types.UpdateStandardsControlRequest, callback?: (err: AWSError, data: SecurityHub.Types.UpdateStandardsControlResponse) => void): Request<SecurityHub.Types.UpdateStandardsControlResponse, AWSError>;
338 /**
339 * Used to control whether an individual security standard control is enabled or disabled.
340 */
341 updateStandardsControl(callback?: (err: AWSError, data: SecurityHub.Types.UpdateStandardsControlResponse) => void): Request<SecurityHub.Types.UpdateStandardsControlResponse, AWSError>;
342}
343declare namespace SecurityHub {
344 export interface AcceptInvitationRequest {
345 /**
346 * The account ID of the Security Hub master account that sent the invitation.
347 */
348 MasterId: NonEmptyString;
349 /**
350 * The ID of the invitation sent from the Security Hub master account.
351 */
352 InvitationId: NonEmptyString;
353 }
354 export interface AcceptInvitationResponse {
355 }
356 export interface AccountDetails {
357 /**
358 * The ID of an AWS account.
359 */
360 AccountId?: AccountId;
361 /**
362 * The email of an AWS account.
363 */
364 Email?: NonEmptyString;
365 }
366 export type AccountDetailsList = AccountDetails[];
367 export type AccountId = string;
368 export type AccountIdList = NonEmptyString[];
369 export interface ActionTarget {
370 /**
371 * The ARN for the target action.
372 */
373 ActionTargetArn: NonEmptyString;
374 /**
375 * The name of the action target.
376 */
377 Name: NonEmptyString;
378 /**
379 * The description of the target action.
380 */
381 Description: NonEmptyString;
382 }
383 export type ActionTargetList = ActionTarget[];
384 export type ArnList = NonEmptyString[];
385 export interface AvailabilityZone {
386 /**
387 * The name of the Availability Zone.
388 */
389 ZoneName?: NonEmptyString;
390 /**
391 * The ID of the subnet. You can specify one subnet per Availability Zone.
392 */
393 SubnetId?: NonEmptyString;
394 }
395 export type AvailabilityZones = AvailabilityZone[];
396 export interface AwsCloudFrontDistributionDetails {
397 /**
398 * The domain name corresponding to the distribution.
399 */
400 DomainName?: NonEmptyString;
401 /**
402 * The entity tag is a hash of the object.
403 */
404 ETag?: NonEmptyString;
405 /**
406 * The date and time that the distribution was last modified.
407 */
408 LastModifiedTime?: NonEmptyString;
409 /**
410 * A complex type that controls whether access logs are written for the distribution.
411 */
412 Logging?: AwsCloudFrontDistributionLogging;
413 /**
414 * A complex type that contains information about origins for this distribution.
415 */
416 Origins?: AwsCloudFrontDistributionOrigins;
417 /**
418 * Indicates the current status of the distribution.
419 */
420 Status?: NonEmptyString;
421 /**
422 * A unique identifier that specifies the AWS WAF web ACL, if any, to associate with this distribution.
423 */
424 WebAclId?: NonEmptyString;
425 }
426 export interface AwsCloudFrontDistributionLogging {
427 /**
428 * The Amazon S3 bucket to store the access logs in.
429 */
430 Bucket?: NonEmptyString;
431 /**
432 * With this field, you can enable or disable the selected distribution.
433 */
434 Enabled?: Boolean;
435 /**
436 * Specifies whether you want CloudFront to include cookies in access logs.
437 */
438 IncludeCookies?: Boolean;
439 /**
440 * An optional string that you want CloudFront to use as a prefix to the access log filenames for this distribution.
441 */
442 Prefix?: NonEmptyString;
443 }
444 export interface AwsCloudFrontDistributionOriginItem {
445 /**
446 * Amazon S3 origins: The DNS name of the Amazon S3 bucket from which you want CloudFront to get objects for this origin.
447 */
448 DomainName?: NonEmptyString;
449 /**
450 * A unique identifier for the origin or origin group.
451 */
452 Id?: NonEmptyString;
453 /**
454 * An optional element that causes CloudFront to request your content from a directory in your Amazon S3 bucket or your custom origin.
455 */
456 OriginPath?: NonEmptyString;
457 }
458 export type AwsCloudFrontDistributionOriginItemList = AwsCloudFrontDistributionOriginItem[];
459 export interface AwsCloudFrontDistributionOrigins {
460 /**
461 * A complex type that contains origins or origin groups for this distribution.
462 */
463 Items?: AwsCloudFrontDistributionOriginItemList;
464 }
465 export interface AwsCodeBuildProjectDetails {
466 /**
467 * The AWS Key Management Service (AWS KMS) customer master key (CMK) used to encrypt the build output artifacts. You can specify either the Amazon Resource Name (ARN) of the CMK or, if available, the CMK alias (using the format alias/alias-name).
468 */
469 EncryptionKey?: NonEmptyString;
470 /**
471 * Information about the build environment for this build project.
472 */
473 Environment?: AwsCodeBuildProjectEnvironment;
474 /**
475 * The name of the build project.
476 */
477 Name?: NonEmptyString;
478 /**
479 * Information about the build input source code for this build project.
480 */
481 Source?: AwsCodeBuildProjectSource;
482 /**
483 * The ARN of the IAM role that enables AWS CodeBuild to interact with dependent AWS services on behalf of the AWS account.
484 */
485 ServiceRole?: NonEmptyString;
486 /**
487 * Information about the VPC configuration that AWS CodeBuild accesses.
488 */
489 VpcConfig?: AwsCodeBuildProjectVpcConfig;
490 }
491 export interface AwsCodeBuildProjectEnvironment {
492 /**
493 * The certificate to use with this build project.
494 */
495 Certificate?: NonEmptyString;
496 /**
497 * The type of credentials AWS CodeBuild uses to pull images in your build. Valid values: CODEBUILD specifies that AWS CodeBuild uses its own credentials. This requires that you modify your ECR repository policy to trust the AWS CodeBuild service principal. SERVICE_ROLE specifies that AWS CodeBuild uses your build project's service role. When you use a cross-account or private registry image, you must use SERVICE_ROLE credentials. When you use an AWS CodeBuild curated image, you must use CODEBUILD credentials.
498 */
499 ImagePullCredentialsType?: NonEmptyString;
500 /**
501 * The credentials for access to a private registry.
502 */
503 RegistryCredential?: AwsCodeBuildProjectEnvironmentRegistryCredential;
504 /**
505 * The type of build environment to use for related builds. The environment type ARM_CONTAINER is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), Europe (Ireland), Asia Pacific (Mumbai), Asia Pacific (Tokyo), Asia Pacific (Sydney), and Europe (Frankfurt). The environment type LINUX_CONTAINER with compute type build.general1.2xlarge is available only in regions US East (N. Virginia), US East (N. Virginia), US West (Oregon), Canada (Central), Europe (Ireland), Europe (London), Europe (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia Pacific (Singapore), Asia Pacific (Sydney), China (Beijing), and China (Ningxia). The environment type LINUX_GPU_CONTAINER is available only in regions US East (N. Virginia), US East (N. Virginia), US West (Oregon), Canada (Central), Europe (Ireland), Europe (London), Europe (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia Pacific (Singapore), Asia Pacific (Sydney) , China (Beijing), and China (Ningxia). Valid values: WINDOWS_CONTAINER | LINUX_CONTAINER | LINUX_GPU_CONTAINER | ARM_CONTAINER
506 */
507 Type?: NonEmptyString;
508 }
509 export interface AwsCodeBuildProjectEnvironmentRegistryCredential {
510 /**
511 * The Amazon Resource Name (ARN) or name of credentials created using AWS Secrets Manager. The credential can use the name of the credentials only if they exist in your current AWS Region.
512 */
513 Credential?: NonEmptyString;
514 /**
515 * The service that created the credentials to access a private Docker registry. The valid value, SECRETS_MANAGER, is for AWS Secrets Manager.
516 */
517 CredentialProvider?: NonEmptyString;
518 }
519 export interface AwsCodeBuildProjectSource {
520 /**
521 * The type of repository that contains the source code to be built. Valid values are: BITBUCKET - The source code is in a Bitbucket repository. CODECOMMIT - The source code is in an AWS CodeCommit repository. CODEPIPELINE - The source code settings are specified in the source action of a pipeline in AWS CodePipeline. GITHUB - The source code is in a GitHub repository. GITHUB_ENTERPRISE - The source code is in a GitHub Enterprise repository. NO_SOURCE - The project does not have input source code. S3 - The source code is in an S3 input bucket.
522 */
523 Type?: NonEmptyString;
524 /**
525 * Information about the location of the source code to be built. Valid values include: For source code settings that are specified in the source action of a pipeline in AWS CodePipeline, location should not be specified. If it is specified, AWS CodePipeline ignores it. This is because AWS CodePipeline uses the settings in a pipeline's source action instead of this value. For source code in an AWS CodeCommit repository, the HTTPS clone URL to the repository that contains the source code and the buildspec file (for example, https://git-codecommit.region-ID.amazonaws.com/v1/repos/repo-name ). For source code in an S3 input bucket, one of the following. The path to the ZIP file that contains the source code (for example, bucket-name/path/to/object-name.zip). The path to the folder that contains the source code (for example, bucket-name/path/to/source-code/folder/). For source code in a GitHub repository, the HTTPS clone URL to the repository that contains the source and the buildspec file. For source code in a Bitbucket repository, the HTTPS clone URL to the repository that contains the source and the buildspec file.
526 */
527 Location?: NonEmptyString;
528 /**
529 * Information about the Git clone depth for the build project.
530 */
531 GitCloneDepth?: Integer;
532 /**
533 * Whether to ignore SSL warnings while connecting to the project source code.
534 */
535 InsecureSsl?: Boolean;
536 }
537 export interface AwsCodeBuildProjectVpcConfig {
538 /**
539 * The ID of the VPC.
540 */
541 VpcId?: NonEmptyString;
542 /**
543 * A list of one or more subnet IDs in your Amazon VPC.
544 */
545 Subnets?: NonEmptyStringList;
546 /**
547 * A list of one or more security group IDs in your Amazon VPC.
548 */
549 SecurityGroupIds?: NonEmptyStringList;
550 }
551 export interface AwsEc2InstanceDetails {
552 /**
553 * The instance type of the instance.
554 */
555 Type?: NonEmptyString;
556 /**
557 * The Amazon Machine Image (AMI) ID of the instance.
558 */
559 ImageId?: NonEmptyString;
560 /**
561 * The IPv4 addresses associated with the instance.
562 */
563 IpV4Addresses?: StringList;
564 /**
565 * The IPv6 addresses associated with the instance.
566 */
567 IpV6Addresses?: StringList;
568 /**
569 * The key name associated with the instance.
570 */
571 KeyName?: NonEmptyString;
572 /**
573 * The IAM profile ARN of the instance.
574 */
575 IamInstanceProfileArn?: NonEmptyString;
576 /**
577 * The identifier of the VPC that the instance was launched in.
578 */
579 VpcId?: NonEmptyString;
580 /**
581 * The identifier of the subnet that the instance was launched in.
582 */
583 SubnetId?: NonEmptyString;
584 /**
585 * The date/time the instance was launched.
586 */
587 LaunchedAt?: NonEmptyString;
588 }
589 export interface AwsEc2NetworkInterfaceAttachment {
590 /**
591 * The timestamp indicating when the attachment initiated.
592 */
593 AttachTime?: NonEmptyString;
594 /**
595 * The identifier of the network interface attachment
596 */
597 AttachmentId?: NonEmptyString;
598 /**
599 * Indicates whether the network interface is deleted when the instance is terminated.
600 */
601 DeleteOnTermination?: Boolean;
602 /**
603 * The device index of the network interface attachment on the instance.
604 */
605 DeviceIndex?: Integer;
606 /**
607 * The ID of the instance.
608 */
609 InstanceId?: NonEmptyString;
610 /**
611 * The AWS account ID of the owner of the instance.
612 */
613 InstanceOwnerId?: NonEmptyString;
614 /**
615 * The attachment state. Valid values: attaching | attached | detaching | detached
616 */
617 Status?: NonEmptyString;
618 }
619 export interface AwsEc2NetworkInterfaceDetails {
620 /**
621 * The network interface attachment.
622 */
623 Attachment?: AwsEc2NetworkInterfaceAttachment;
624 /**
625 * The ID of the network interface.
626 */
627 NetworkInterfaceId?: NonEmptyString;
628 /**
629 * Security groups for the network interface.
630 */
631 SecurityGroups?: AwsEc2NetworkInterfaceSecurityGroupList;
632 /**
633 * Indicates whether traffic to or from the instance is validated.
634 */
635 SourceDestCheck?: Boolean;
636 }
637 export interface AwsEc2NetworkInterfaceSecurityGroup {
638 /**
639 * The name of the security group.
640 */
641 GroupName?: NonEmptyString;
642 /**
643 * The ID of the security group.
644 */
645 GroupId?: NonEmptyString;
646 }
647 export type AwsEc2NetworkInterfaceSecurityGroupList = AwsEc2NetworkInterfaceSecurityGroup[];
648 export interface AwsEc2SecurityGroupDetails {
649 /**
650 * The name of the security group.
651 */
652 GroupName?: NonEmptyString;
653 /**
654 * The ID of the security group.
655 */
656 GroupId?: NonEmptyString;
657 /**
658 * The AWS account ID of the owner of the security group.
659 */
660 OwnerId?: NonEmptyString;
661 /**
662 * [VPC only] The ID of the VPC for the security group.
663 */
664 VpcId?: NonEmptyString;
665 /**
666 * The inbound rules associated with the security group.
667 */
668 IpPermissions?: AwsEc2SecurityGroupIpPermissionList;
669 /**
670 * [VPC only] The outbound rules associated with the security group.
671 */
672 IpPermissionsEgress?: AwsEc2SecurityGroupIpPermissionList;
673 }
674 export interface AwsEc2SecurityGroupIpPermission {
675 /**
676 * The IP protocol name (tcp, udp, icmp, icmpv6) or number. [VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional. If you omit the port range, traffic for all types and codes is allowed.
677 */
678 IpProtocol?: NonEmptyString;
679 /**
680 * The start of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes.
681 */
682 FromPort?: Integer;
683 /**
684 * The end of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes.
685 */
686 ToPort?: Integer;
687 /**
688 * The security group and AWS account ID pairs.
689 */
690 UserIdGroupPairs?: AwsEc2SecurityGroupUserIdGroupPairList;
691 /**
692 * The IPv4 ranges.
693 */
694 IpRanges?: AwsEc2SecurityGroupIpRangeList;
695 /**
696 * The IPv6 ranges.
697 */
698 Ipv6Ranges?: AwsEc2SecurityGroupIpv6RangeList;
699 /**
700 * [VPC only] The prefix list IDs for an AWS service. With outbound rules, this is the AWS service to access through a VPC endpoint from instances associated with the security group.
701 */
702 PrefixListIds?: AwsEc2SecurityGroupPrefixListIdList;
703 }
704 export type AwsEc2SecurityGroupIpPermissionList = AwsEc2SecurityGroupIpPermission[];
705 export interface AwsEc2SecurityGroupIpRange {
706 /**
707 * The IPv4 CIDR range. You can either specify either a CIDR range or a source security group, but not both. To specify a single IPv4 address, use the /32 prefix length.
708 */
709 CidrIp?: NonEmptyString;
710 }
711 export type AwsEc2SecurityGroupIpRangeList = AwsEc2SecurityGroupIpRange[];
712 export interface AwsEc2SecurityGroupIpv6Range {
713 /**
714 * The IPv6 CIDR range. You can either specify either a CIDR range or a source security group, but not both. To specify a single IPv6 address, use the /128 prefix length.
715 */
716 CidrIpv6?: NonEmptyString;
717 }
718 export type AwsEc2SecurityGroupIpv6RangeList = AwsEc2SecurityGroupIpv6Range[];
719 export interface AwsEc2SecurityGroupPrefixListId {
720 /**
721 * The ID of the prefix.
722 */
723 PrefixListId?: NonEmptyString;
724 }
725 export type AwsEc2SecurityGroupPrefixListIdList = AwsEc2SecurityGroupPrefixListId[];
726 export interface AwsEc2SecurityGroupUserIdGroupPair {
727 /**
728 * The ID of the security group.
729 */
730 GroupId?: NonEmptyString;
731 /**
732 * The name of the security group.
733 */
734 GroupName?: NonEmptyString;
735 /**
736 * The status of a VPC peering connection, if applicable.
737 */
738 PeeringStatus?: NonEmptyString;
739 /**
740 * The ID of an AWS account. For a referenced security group in another VPC, the account ID of the referenced security group is returned in the response. If the referenced security group is deleted, this value is not returned. [EC2-Classic] Required when adding or removing rules that reference a security group in another AWS.
741 */
742 UserId?: NonEmptyString;
743 /**
744 * The ID of the VPC for the referenced security group, if applicable.
745 */
746 VpcId?: NonEmptyString;
747 /**
748 * The ID of the VPC peering connection, if applicable.
749 */
750 VpcPeeringConnectionId?: NonEmptyString;
751 }
752 export type AwsEc2SecurityGroupUserIdGroupPairList = AwsEc2SecurityGroupUserIdGroupPair[];
753 export interface AwsElasticsearchDomainDetails {
754 /**
755 * IAM policy document specifying the access policies for the new Amazon ES domain.
756 */
757 AccessPolicies?: NonEmptyString;
758 /**
759 * Additional options for the domain endpoint.
760 */
761 DomainEndpointOptions?: AwsElasticsearchDomainDomainEndpointOptions;
762 /**
763 * Unique identifier for an Amazon ES domain.
764 */
765 DomainId?: NonEmptyString;
766 /**
767 * Name of an Amazon ES domain. Domain names are unique across all domains owned by the same account within an AWS Region. Domain names must start with a lowercase letter and must be between 3 and 28 characters. Valid characters are a-z (lowercase only), 0-9, and – (hyphen).
768 */
769 DomainName?: NonEmptyString;
770 /**
771 * Domain-specific endpoint used to submit index, search, and data upload requests to an Amazon ES domain. The endpoint is a service URL.
772 */
773 Endpoint?: NonEmptyString;
774 /**
775 * The key-value pair that exists if the Amazon ES domain uses VPC endpoints.
776 */
777 Endpoints?: FieldMap;
778 /**
779 * Elasticsearch version.
780 */
781 ElasticsearchVersion?: NonEmptyString;
782 /**
783 * Details about the configuration for encryption at rest.
784 */
785 EncryptionAtRestOptions?: AwsElasticsearchDomainEncryptionAtRestOptions;
786 /**
787 * Details about the configuration for node-to-node encryption.
788 */
789 NodeToNodeEncryptionOptions?: AwsElasticsearchDomainNodeToNodeEncryptionOptions;
790 /**
791 * Information that Amazon ES derives based on VPCOptions for the domain.
792 */
793 VPCOptions?: AwsElasticsearchDomainVPCOptions;
794 }
795 export interface AwsElasticsearchDomainDomainEndpointOptions {
796 /**
797 * Whether to require that all traffic to the domain arrive over HTTPS.
798 */
799 EnforceHTTPS?: Boolean;
800 /**
801 * The TLS security policy to apply to the HTTPS endpoint of the Elasticsearch domain. Valid values: Policy-Min-TLS-1-0-2019-07, which supports TLSv1.0 and higher Policy-Min-TLS-1-2-2019-07, which only supports TLSv1.2
802 */
803 TLSSecurityPolicy?: NonEmptyString;
804 }
805 export interface AwsElasticsearchDomainEncryptionAtRestOptions {
806 /**
807 * Whether encryption at rest is enabled.
808 */
809 Enabled?: Boolean;
810 /**
811 * The KMS key ID. Takes the form 1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a.
812 */
813 KmsKeyId?: NonEmptyString;
814 }
815 export interface AwsElasticsearchDomainNodeToNodeEncryptionOptions {
816 /**
817 * Whether node-to-node encryption is enabled.
818 */
819 Enabled?: Boolean;
820 }
821 export interface AwsElasticsearchDomainVPCOptions {
822 /**
823 * The list of Availability Zones associated with the VPC subnets.
824 */
825 AvailabilityZones?: NonEmptyStringList;
826 /**
827 * The list of security group IDs associated with the VPC endpoints for the domain.
828 */
829 SecurityGroupIds?: NonEmptyStringList;
830 /**
831 * A list of subnet IDs associated with the VPC endpoints for the domain.
832 */
833 SubnetIds?: NonEmptyStringList;
834 /**
835 * ID for the VPC.
836 */
837 VPCId?: NonEmptyString;
838 }
839 export interface AwsElbv2LoadBalancerDetails {
840 /**
841 * The Availability Zones for the load balancer.
842 */
843 AvailabilityZones?: AvailabilityZones;
844 /**
845 * The ID of the Amazon Route 53 hosted zone associated with the load balancer.
846 */
847 CanonicalHostedZoneId?: NonEmptyString;
848 /**
849 * The date and time the load balancer was created.
850 */
851 CreatedTime?: NonEmptyString;
852 /**
853 * The public DNS name of the load balancer.
854 */
855 DNSName?: NonEmptyString;
856 /**
857 * The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and IPv6 addresses).
858 */
859 IpAddressType?: NonEmptyString;
860 /**
861 * The nodes of an Internet-facing load balancer have public IP addresses.
862 */
863 Scheme?: NonEmptyString;
864 /**
865 * The IDs of the security groups for the load balancer.
866 */
867 SecurityGroups?: SecurityGroups;
868 /**
869 * The state of the load balancer.
870 */
871 State?: LoadBalancerState;
872 /**
873 * The type of load balancer.
874 */
875 Type?: NonEmptyString;
876 /**
877 * The ID of the VPC for the load balancer.
878 */
879 VpcId?: NonEmptyString;
880 }
881 export interface AwsIamAccessKeyDetails {
882 /**
883 * The user associated with the IAM access key related to a finding. The UserName parameter has been replaced with the PrincipalName parameter because access keys can also be assigned to principals that are not IAM users.
884 */
885 UserName?: NonEmptyString;
886 /**
887 * The status of the IAM access key related to a finding.
888 */
889 Status?: AwsIamAccessKeyStatus;
890 /**
891 * The creation date/time of the IAM access key related to a finding.
892 */
893 CreatedAt?: NonEmptyString;
894 /**
895 * The ID of the principal associated with an access key.
896 */
897 PrincipalId?: NonEmptyString;
898 /**
899 * The type of principal associated with an access key.
900 */
901 PrincipalType?: NonEmptyString;
902 /**
903 * The name of the principal.
904 */
905 PrincipalName?: NonEmptyString;
906 }
907 export type AwsIamAccessKeyStatus = "Active"|"Inactive"|string;
908 export type AwsIamRoleAssumeRolePolicyDocument = string;
909 export interface AwsIamRoleDetails {
910 /**
911 * The trust policy that grants permission to assume the role.
912 */
913 AssumeRolePolicyDocument?: AwsIamRoleAssumeRolePolicyDocument;
914 /**
915 * The date and time, in ISO 8601 date-time format, when the role was created.
916 */
917 CreateDate?: NonEmptyString;
918 /**
919 * The stable and unique string identifying the role.
920 */
921 RoleId?: NonEmptyString;
922 /**
923 * The friendly name that identifies the role.
924 */
925 RoleName?: NonEmptyString;
926 /**
927 * The maximum session duration (in seconds) that you want to set for the specified role.
928 */
929 MaxSessionDuration?: Integer;
930 /**
931 * The path to the role.
932 */
933 Path?: NonEmptyString;
934 }
935 export interface AwsKmsKeyDetails {
936 /**
937 * The twelve-digit account ID of the AWS account that owns the CMK.
938 */
939 AWSAccountId?: NonEmptyString;
940 /**
941 * The date and time when the CMK was created.
942 */
943 CreationDate?: Double;
944 /**
945 * The globally unique identifier for the CMK.
946 */
947 KeyId?: NonEmptyString;
948 /**
949 * The manager of the CMK. CMKs in your AWS account are either customer managed or AWS managed.
950 */
951 KeyManager?: NonEmptyString;
952 /**
953 * The state of the CMK.
954 */
955 KeyState?: NonEmptyString;
956 /**
957 * The source of the CMK's key material. When this value is AWS_KMS, AWS KMS created the key material. When this value is EXTERNAL, the key material was imported from your existing key management infrastructure or the CMK lacks key material. When this value is AWS_CLOUDHSM, the key material was created in the AWS CloudHSM cluster associated with a custom key store.
958 */
959 Origin?: NonEmptyString;
960 }
961 export interface AwsLambdaFunctionCode {
962 /**
963 * An Amazon S3 bucket in the same AWS Region as your function. The bucket can be in a different AWS account.
964 */
965 S3Bucket?: NonEmptyString;
966 /**
967 * The Amazon S3 key of the deployment package.
968 */
969 S3Key?: NonEmptyString;
970 /**
971 * For versioned objects, the version of the deployment package object to use.
972 */
973 S3ObjectVersion?: NonEmptyString;
974 /**
975 * The base64-encoded contents of the deployment package. AWS SDK and AWS CLI clients handle the encoding for you.
976 */
977 ZipFile?: NonEmptyString;
978 }
979 export interface AwsLambdaFunctionDeadLetterConfig {
980 /**
981 * The Amazon Resource Name (ARN) of an Amazon SQS queue or Amazon SNS topic.
982 */
983 TargetArn?: NonEmptyString;
984 }
985 export interface AwsLambdaFunctionDetails {
986 /**
987 * An AwsLambdaFunctionCode object.
988 */
989 Code?: AwsLambdaFunctionCode;
990 /**
991 * The SHA256 hash of the function's deployment package.
992 */
993 CodeSha256?: NonEmptyString;
994 /**
995 * The function's dead letter queue.
996 */
997 DeadLetterConfig?: AwsLambdaFunctionDeadLetterConfig;
998 /**
999 * The function's environment variables.
1000 */
1001 Environment?: AwsLambdaFunctionEnvironment;
1002 /**
1003 * The name of the function.
1004 */
1005 FunctionName?: NonEmptyString;
1006 /**
1007 * The function that Lambda calls to begin executing your function.
1008 */
1009 Handler?: NonEmptyString;
1010 /**
1011 * The KMS key that's used to encrypt the function's environment variables. This key is only returned if you've configured a customer managed CMK.
1012 */
1013 KmsKeyArn?: NonEmptyString;
1014 /**
1015 * The date and time that the function was last updated, in ISO-8601 format (YYYY-MM-DDThh:mm:ss.sTZD).
1016 */
1017 LastModified?: NonEmptyString;
1018 /**
1019 * The function's layers.
1020 */
1021 Layers?: AwsLambdaFunctionLayerList;
1022 /**
1023 * For Lambda@Edge functions, the ARN of the master function.
1024 */
1025 MasterArn?: NonEmptyString;
1026 /**
1027 * The memory that's allocated to the function.
1028 */
1029 MemorySize?: Integer;
1030 /**
1031 * The latest updated revision of the function or alias.
1032 */
1033 RevisionId?: NonEmptyString;
1034 /**
1035 * The function's execution role.
1036 */
1037 Role?: NonEmptyString;
1038 /**
1039 * The runtime environment for the Lambda function.
1040 */
1041 Runtime?: NonEmptyString;
1042 /**
1043 * The amount of time that Lambda allows a function to run before stopping it.
1044 */
1045 Timeout?: Integer;
1046 /**
1047 * The function's AWS X-Ray tracing configuration.
1048 */
1049 TracingConfig?: AwsLambdaFunctionTracingConfig;
1050 /**
1051 * The function's networking configuration.
1052 */
1053 VpcConfig?: AwsLambdaFunctionVpcConfig;
1054 /**
1055 * The version of the Lambda function.
1056 */
1057 Version?: NonEmptyString;
1058 }
1059 export interface AwsLambdaFunctionEnvironment {
1060 /**
1061 * Environment variable key-value pairs.
1062 */
1063 Variables?: FieldMap;
1064 /**
1065 * An AwsLambdaFunctionEnvironmentError object.
1066 */
1067 Error?: AwsLambdaFunctionEnvironmentError;
1068 }
1069 export interface AwsLambdaFunctionEnvironmentError {
1070 /**
1071 * The error code.
1072 */
1073 ErrorCode?: NonEmptyString;
1074 /**
1075 * The error message.
1076 */
1077 Message?: NonEmptyString;
1078 }
1079 export interface AwsLambdaFunctionLayer {
1080 /**
1081 * The Amazon Resource Name (ARN) of the function layer.
1082 */
1083 Arn?: NonEmptyString;
1084 /**
1085 * The size of the layer archive in bytes.
1086 */
1087 CodeSize?: Integer;
1088 }
1089 export type AwsLambdaFunctionLayerList = AwsLambdaFunctionLayer[];
1090 export interface AwsLambdaFunctionTracingConfig {
1091 /**
1092 * The tracing mode.
1093 */
1094 Mode?: NonEmptyString;
1095 }
1096 export interface AwsLambdaFunctionVpcConfig {
1097 /**
1098 * A list of VPC security groups IDs.
1099 */
1100 SecurityGroupIds?: NonEmptyStringList;
1101 /**
1102 * A list of VPC subnet IDs.
1103 */
1104 SubnetIds?: NonEmptyStringList;
1105 /**
1106 * The ID of the VPC.
1107 */
1108 VpcId?: NonEmptyString;
1109 }
1110 export interface AwsLambdaLayerVersionDetails {
1111 /**
1112 * The version number.
1113 */
1114 Version?: AwsLambdaLayerVersionNumber;
1115 /**
1116 * The layer's compatible runtimes. Maximum number of 5 items. Valid values: nodejs10.x | nodejs12.x | java8 | java11 | python2.7 | python3.6 | python3.7 | python3.8 | dotnetcore1.0 | dotnetcore2.1 | go1.x | ruby2.5 | provided
1117 */
1118 CompatibleRuntimes?: NonEmptyStringList;
1119 /**
1120 * The date that the version was created, in ISO 8601 format. For example, 2018-11-27T15:10:45.123+0000.
1121 */
1122 CreatedDate?: NonEmptyString;
1123 }
1124 export type AwsLambdaLayerVersionNumber = number;
1125 export interface AwsRdsDbInstanceAssociatedRole {
1126 /**
1127 * The Amazon Resource Name (ARN) of the IAM role that is associated with the DB instance.
1128 */
1129 RoleArn?: NonEmptyString;
1130 /**
1131 * The name of the feature associated with the IAM)role.
1132 */
1133 FeatureName?: NonEmptyString;
1134 /**
1135 * Describes the state of the association between the IAM role and the DB instance. The Status property returns one of the following values: ACTIVE - the IAM role ARN is associated with the DB instance and can be used to access other AWS services on your behalf. PENDING - the IAM role ARN is being associated with the DB instance. INVALID - the IAM role ARN is associated with the DB instance, but the DB instance is unable to assume the IAM role in order to access other AWS services on your behalf.
1136 */
1137 Status?: NonEmptyString;
1138 }
1139 export type AwsRdsDbInstanceAssociatedRoles = AwsRdsDbInstanceAssociatedRole[];
1140 export interface AwsRdsDbInstanceDetails {
1141 /**
1142 * The AWS Identity and Access Management (IAM) roles associated with the DB instance.
1143 */
1144 AssociatedRoles?: AwsRdsDbInstanceAssociatedRoles;
1145 /**
1146 * The identifier of the CA certificate for this DB instance.
1147 */
1148 CACertificateIdentifier?: NonEmptyString;
1149 /**
1150 * If the DB instance is a member of a DB cluster, contains the name of the DB cluster that the DB instance is a member of.
1151 */
1152 DBClusterIdentifier?: NonEmptyString;
1153 /**
1154 * Contains a user-supplied database identifier. This identifier is the unique key that identifies a DB instance.
1155 */
1156 DBInstanceIdentifier?: NonEmptyString;
1157 /**
1158 * Contains the name of the compute and memory capacity class of the DB instance.
1159 */
1160 DBInstanceClass?: NonEmptyString;
1161 /**
1162 * Specifies the port that the DB instance listens on. If the DB instance is part of a DB cluster, this can be a different port than the DB cluster port.
1163 */
1164 DbInstancePort?: Integer;
1165 /**
1166 * The AWS Region-unique, immutable identifier for the DB instance. This identifier is found in AWS CloudTrail log entries whenever the AWS KMS key for the DB instance is accessed.
1167 */
1168 DbiResourceId?: NonEmptyString;
1169 /**
1170 * The meaning of this parameter differs according to the database engine you use. MySQL, MariaDB, SQL Server, PostgreSQL Contains the name of the initial database of this instance that was provided at create time, if one was specified when the DB instance was created. This same name is returned for the life of the DB instance. Oracle Contains the Oracle System ID (SID) of the created DB instance. Not shown when the returned parameters do not apply to an Oracle DB instance.
1171 */
1172 DBName?: NonEmptyString;
1173 /**
1174 * Indicates whether the DB instance has deletion protection enabled. When deletion protection is enabled, the database cannot be deleted.
1175 */
1176 DeletionProtection?: Boolean;
1177 /**
1178 * Specifies the connection endpoint.
1179 */
1180 Endpoint?: AwsRdsDbInstanceEndpoint;
1181 /**
1182 * Provides the name of the database engine to use for this DB instance.
1183 */
1184 Engine?: NonEmptyString;
1185 /**
1186 * Indicates the database engine version.
1187 */
1188 EngineVersion?: NonEmptyString;
1189 /**
1190 * True if mapping of AWS Identity and Access Management (IAM) accounts to database accounts is enabled, and otherwise false. IAM database authentication can be enabled for the following database engines. For MySQL 5.6, minor version 5.6.34 or higher For MySQL 5.7, minor version 5.7.16 or higher Aurora 5.6 or higher
1191 */
1192 IAMDatabaseAuthenticationEnabled?: Boolean;
1193 /**
1194 * Provides the date and time the DB instance was created.
1195 */
1196 InstanceCreateTime?: NonEmptyString;
1197 /**
1198 * If StorageEncrypted is true, the AWS KMS key identifier for the encrypted DB instance.
1199 */
1200 KmsKeyId?: NonEmptyString;
1201 /**
1202 * Specifies the accessibility options for the DB instance. A value of true specifies an Internet-facing instance with a publicly resolvable DNS name, which resolves to a public IP address. A value of false specifies an internal instance with a DNS name that resolves to a private IP address.
1203 */
1204 PubliclyAccessible?: Boolean;
1205 /**
1206 * Specifies whether the DB instance is encrypted.
1207 */
1208 StorageEncrypted?: Boolean;
1209 /**
1210 * The ARN from the key store with which the instance is associated for TDE encryption.
1211 */
1212 TdeCredentialArn?: NonEmptyString;
1213 /**
1214 * A list of VPC security groups that the DB instance belongs to.
1215 */
1216 VpcSecurityGroups?: AwsRdsDbInstanceVpcSecurityGroups;
1217 }
1218 export interface AwsRdsDbInstanceEndpoint {
1219 /**
1220 * Specifies the DNS address of the DB instance.
1221 */
1222 Address?: NonEmptyString;
1223 /**
1224 * Specifies the port that the database engine is listening on.
1225 */
1226 Port?: Integer;
1227 /**
1228 * Specifies the ID that Amazon Route 53 assigns when you create a hosted zone.
1229 */
1230 HostedZoneId?: NonEmptyString;
1231 }
1232 export interface AwsRdsDbInstanceVpcSecurityGroup {
1233 /**
1234 * The name of the VPC security group.
1235 */
1236 VpcSecurityGroupId?: NonEmptyString;
1237 /**
1238 * The status of the VPC security group.
1239 */
1240 Status?: NonEmptyString;
1241 }
1242 export type AwsRdsDbInstanceVpcSecurityGroups = AwsRdsDbInstanceVpcSecurityGroup[];
1243 export interface AwsS3BucketDetails {
1244 /**
1245 * The canonical user ID of the owner of the S3 bucket.
1246 */
1247 OwnerId?: NonEmptyString;
1248 /**
1249 * The display name of the owner of the S3 bucket.
1250 */
1251 OwnerName?: NonEmptyString;
1252 /**
1253 * The date and time when the S3 bucket was created.
1254 */
1255 CreatedAt?: NonEmptyString;
1256 /**
1257 * The encryption rules that are applied to the S3 bucket.
1258 */
1259 ServerSideEncryptionConfiguration?: AwsS3BucketServerSideEncryptionConfiguration;
1260 }
1261 export interface AwsS3BucketServerSideEncryptionByDefault {
1262 /**
1263 * Server-side encryption algorithm to use for the default encryption.
1264 */
1265 SSEAlgorithm?: NonEmptyString;
1266 /**
1267 * AWS KMS customer master key (CMK) ID to use for the default encryption.
1268 */
1269 KMSMasterKeyID?: NonEmptyString;
1270 }
1271 export interface AwsS3BucketServerSideEncryptionConfiguration {
1272 /**
1273 * The encryption rules that are applied to the S3 bucket.
1274 */
1275 Rules?: AwsS3BucketServerSideEncryptionRules;
1276 }
1277 export interface AwsS3BucketServerSideEncryptionRule {
1278 /**
1279 * Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption is applied.
1280 */
1281 ApplyServerSideEncryptionByDefault?: AwsS3BucketServerSideEncryptionByDefault;
1282 }
1283 export type AwsS3BucketServerSideEncryptionRules = AwsS3BucketServerSideEncryptionRule[];
1284 export interface AwsS3ObjectDetails {
1285 /**
1286 * The date and time when the object was last modified.
1287 */
1288 LastModified?: NonEmptyString;
1289 /**
1290 * The opaque identifier assigned by a web server to a specific version of a resource found at a URL.
1291 */
1292 ETag?: NonEmptyString;
1293 /**
1294 * The version of the object.
1295 */
1296 VersionId?: NonEmptyString;
1297 /**
1298 * A standard MIME type describing the format of the object data.
1299 */
1300 ContentType?: NonEmptyString;
1301 /**
1302 * If the object is stored using server-side encryption, the value of the server-side encryption algorithm used when storing this object in Amazon S3.
1303 */
1304 ServerSideEncryption?: NonEmptyString;
1305 /**
1306 * The identifier of the AWS Key Management Service (AWS KMS) symmetric customer managed customer master key (CMK) that was used for the object.
1307 */
1308 SSEKMSKeyId?: NonEmptyString;
1309 }
1310 export interface AwsSecurityFinding {
1311 /**
1312 * The schema version that a finding is formatted for.
1313 */
1314 SchemaVersion: NonEmptyString;
1315 /**
1316 * The security findings provider-specific identifier for a finding.
1317 */
1318 Id: NonEmptyString;
1319 /**
1320 * The ARN generated by Security Hub that uniquely identifies a product that generates findings. This can be the ARN for a third-party product that is integrated with Security Hub, or the ARN for a custom integration.
1321 */
1322 ProductArn: NonEmptyString;
1323 /**
1324 * The identifier for the solution-specific component (a discrete unit of logic) that generated a finding. In various security-findings providers' solutions, this generator can be called a rule, a check, a detector, a plug-in, etc.
1325 */
1326 GeneratorId: NonEmptyString;
1327 /**
1328 * The AWS account ID that a finding is generated in.
1329 */
1330 AwsAccountId: NonEmptyString;
1331 /**
1332 * One or more finding types in the format of namespace/category/classifier that classify a finding. Valid namespace values are: Software and Configuration Checks | TTPs | Effects | Unusual Behaviors | Sensitive Data Identifications
1333 */
1334 Types: TypeList;
1335 /**
1336 * An ISO8601-formatted timestamp that indicates when the security-findings provider first observed the potential security issue that a finding captured.
1337 */
1338 FirstObservedAt?: NonEmptyString;
1339 /**
1340 * An ISO8601-formatted timestamp that indicates when the security-findings provider most recently observed the potential security issue that a finding captured.
1341 */
1342 LastObservedAt?: NonEmptyString;
1343 /**
1344 * An ISO8601-formatted timestamp that indicates when the security-findings provider created the potential security issue that a finding captured.
1345 */
1346 CreatedAt: NonEmptyString;
1347 /**
1348 * An ISO8601-formatted timestamp that indicates when the security-findings provider last updated the finding record.
1349 */
1350 UpdatedAt: NonEmptyString;
1351 /**
1352 * A finding's severity.
1353 */
1354 Severity: Severity;
1355 /**
1356 * A finding's 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.
1357 */
1358 Confidence?: Integer;
1359 /**
1360 * The level of importance assigned to the resources associated with the finding. A score of 0 means that the underlying resources have no criticality, and a score of 100 is reserved for the most critical resources.
1361 */
1362 Criticality?: Integer;
1363 /**
1364 * A finding's title. In this release, Title is a required property.
1365 */
1366 Title: NonEmptyString;
1367 /**
1368 * A finding's description. In this release, Description is a required property.
1369 */
1370 Description: NonEmptyString;
1371 /**
1372 * A data type that describes the remediation options for a finding.
1373 */
1374 Remediation?: Remediation;
1375 /**
1376 * A URL that links to a page about the current finding in the security-findings provider's solution.
1377 */
1378 SourceUrl?: NonEmptyString;
1379 /**
1380 * A data type where security-findings providers can include additional solution-specific details that aren't part of the defined AwsSecurityFinding format.
1381 */
1382 ProductFields?: FieldMap;
1383 /**
1384 * A list of name/value string pairs associated with the finding. These are custom, user-defined fields added to a finding.
1385 */
1386 UserDefinedFields?: FieldMap;
1387 /**
1388 * A list of malware related to a finding.
1389 */
1390 Malware?: MalwareList;
1391 /**
1392 * The details of network-related information about a finding.
1393 */
1394 Network?: Network;
1395 /**
1396 * The details of process-related information about a finding.
1397 */
1398 Process?: ProcessDetails;
1399 /**
1400 * Threat intelligence details related to a finding.
1401 */
1402 ThreatIntelIndicators?: ThreatIntelIndicatorList;
1403 /**
1404 * A set of resource data types that describe the resources that the finding refers to.
1405 */
1406 Resources: ResourceList;
1407 /**
1408 * This data type is exclusive to findings that are generated as the result of a check run against a specific rule in a supported security standard, such as CIS AWS Foundations. Contains security standard-related finding details.
1409 */
1410 Compliance?: Compliance;
1411 /**
1412 * Indicates the veracity of a finding.
1413 */
1414 VerificationState?: VerificationState;
1415 /**
1416 * The workflow state of a finding.
1417 */
1418 WorkflowState?: WorkflowState;
1419 /**
1420 * Provides information about the status of the investigation into a finding.
1421 */
1422 Workflow?: Workflow;
1423 /**
1424 * The record state of a finding.
1425 */
1426 RecordState?: RecordState;
1427 /**
1428 * A list of related findings.
1429 */
1430 RelatedFindings?: RelatedFindingList;
1431 /**
1432 * A user-defined note added to a finding.
1433 */
1434 Note?: Note;
1435 }
1436 export interface AwsSecurityFindingFilters {
1437 /**
1438 * The ARN generated by Security Hub that uniquely identifies a third-party company (security findings provider) after this provider's product (solution that generates findings) is registered with Security Hub.
1439 */
1440 ProductArn?: StringFilterList;
1441 /**
1442 * The AWS account ID that a finding is generated in.
1443 */
1444 AwsAccountId?: StringFilterList;
1445 /**
1446 * The security findings provider-specific identifier for a finding.
1447 */
1448 Id?: StringFilterList;
1449 /**
1450 * The identifier for the solution-specific component (a discrete unit of logic) that generated a finding. In various security-findings providers' solutions, this generator can be called a rule, a check, a detector, a plug-in, etc.
1451 */
1452 GeneratorId?: StringFilterList;
1453 /**
1454 * A finding type in the format of namespace/category/classifier that classifies a finding.
1455 */
1456 Type?: StringFilterList;
1457 /**
1458 * An ISO8601-formatted timestamp that indicates when the security-findings provider first observed the potential security issue that a finding captured.
1459 */
1460 FirstObservedAt?: DateFilterList;
1461 /**
1462 * An ISO8601-formatted timestamp that indicates when the security-findings provider most recently observed the potential security issue that a finding captured.
1463 */
1464 LastObservedAt?: DateFilterList;
1465 /**
1466 * An ISO8601-formatted timestamp that indicates when the security-findings provider captured the potential security issue that a finding captured.
1467 */
1468 CreatedAt?: DateFilterList;
1469 /**
1470 * An ISO8601-formatted timestamp that indicates when the security-findings provider last updated the finding record.
1471 */
1472 UpdatedAt?: DateFilterList;
1473 /**
1474 * The native severity as defined by the security-findings provider's solution that generated the finding.
1475 */
1476 SeverityProduct?: NumberFilterList;
1477 /**
1478 * The normalized severity of a finding.
1479 */
1480 SeverityNormalized?: NumberFilterList;
1481 /**
1482 * The label of a finding's severity.
1483 */
1484 SeverityLabel?: StringFilterList;
1485 /**
1486 * A finding's 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.
1487 */
1488 Confidence?: NumberFilterList;
1489 /**
1490 * The level of importance assigned to the resources associated with the finding. A score of 0 means that the underlying resources have no criticality, and a score of 100 is reserved for the most critical resources.
1491 */
1492 Criticality?: NumberFilterList;
1493 /**
1494 * A finding's title.
1495 */
1496 Title?: StringFilterList;
1497 /**
1498 * A finding's description.
1499 */
1500 Description?: StringFilterList;
1501 /**
1502 * The recommendation of what to do about the issue described in a finding.
1503 */
1504 RecommendationText?: StringFilterList;
1505 /**
1506 * A URL that links to a page about the current finding in the security-findings provider's solution.
1507 */
1508 SourceUrl?: StringFilterList;
1509 /**
1510 * A data type where security-findings providers can include additional solution-specific details that aren't part of the defined AwsSecurityFinding format.
1511 */
1512 ProductFields?: MapFilterList;
1513 /**
1514 * The name of the solution (product) that generates findings.
1515 */
1516 ProductName?: StringFilterList;
1517 /**
1518 * The name of the findings provider (company) that owns the solution (product) that generates findings.
1519 */
1520 CompanyName?: StringFilterList;
1521 /**
1522 * A list of name/value string pairs associated with the finding. These are custom, user-defined fields added to a finding.
1523 */
1524 UserDefinedFields?: MapFilterList;
1525 /**
1526 * The name of the malware that was observed.
1527 */
1528 MalwareName?: StringFilterList;
1529 /**
1530 * The type of the malware that was observed.
1531 */
1532 MalwareType?: StringFilterList;
1533 /**
1534 * The filesystem path of the malware that was observed.
1535 */
1536 MalwarePath?: StringFilterList;
1537 /**
1538 * The state of the malware that was observed.
1539 */
1540 MalwareState?: StringFilterList;
1541 /**
1542 * Indicates the direction of network traffic associated with a finding.
1543 */
1544 NetworkDirection?: StringFilterList;
1545 /**
1546 * The protocol of network-related information about a finding.
1547 */
1548 NetworkProtocol?: StringFilterList;
1549 /**
1550 * The source IPv4 address of network-related information about a finding.
1551 */
1552 NetworkSourceIpV4?: IpFilterList;
1553 /**
1554 * The source IPv6 address of network-related information about a finding.
1555 */
1556 NetworkSourceIpV6?: IpFilterList;
1557 /**
1558 * The source port of network-related information about a finding.
1559 */
1560 NetworkSourcePort?: NumberFilterList;
1561 /**
1562 * The source domain of network-related information about a finding.
1563 */
1564 NetworkSourceDomain?: StringFilterList;
1565 /**
1566 * The source media access control (MAC) address of network-related information about a finding.
1567 */
1568 NetworkSourceMac?: StringFilterList;
1569 /**
1570 * The destination IPv4 address of network-related information about a finding.
1571 */
1572 NetworkDestinationIpV4?: IpFilterList;
1573 /**
1574 * The destination IPv6 address of network-related information about a finding.
1575 */
1576 NetworkDestinationIpV6?: IpFilterList;
1577 /**
1578 * The destination port of network-related information about a finding.
1579 */
1580 NetworkDestinationPort?: NumberFilterList;
1581 /**
1582 * The destination domain of network-related information about a finding.
1583 */
1584 NetworkDestinationDomain?: StringFilterList;
1585 /**
1586 * The name of the process.
1587 */
1588 ProcessName?: StringFilterList;
1589 /**
1590 * The path to the process executable.
1591 */
1592 ProcessPath?: StringFilterList;
1593 /**
1594 * The process ID.
1595 */
1596 ProcessPid?: NumberFilterList;
1597 /**
1598 * The parent process ID.
1599 */
1600 ProcessParentPid?: NumberFilterList;
1601 /**
1602 * The date/time that the process was launched.
1603 */
1604 ProcessLaunchedAt?: DateFilterList;
1605 /**
1606 * The date/time that the process was terminated.
1607 */
1608 ProcessTerminatedAt?: DateFilterList;
1609 /**
1610 * The type of a threat intelligence indicator.
1611 */
1612 ThreatIntelIndicatorType?: StringFilterList;
1613 /**
1614 * The value of a threat intelligence indicator.
1615 */
1616 ThreatIntelIndicatorValue?: StringFilterList;
1617 /**
1618 * The category of a threat intelligence indicator.
1619 */
1620 ThreatIntelIndicatorCategory?: StringFilterList;
1621 /**
1622 * The date/time of the last observation of a threat intelligence indicator.
1623 */
1624 ThreatIntelIndicatorLastObservedAt?: DateFilterList;
1625 /**
1626 * The source of the threat intelligence.
1627 */
1628 ThreatIntelIndicatorSource?: StringFilterList;
1629 /**
1630 * The URL for more details from the source of the threat intelligence.
1631 */
1632 ThreatIntelIndicatorSourceUrl?: StringFilterList;
1633 /**
1634 * Specifies the type of the resource that details are provided for.
1635 */
1636 ResourceType?: StringFilterList;
1637 /**
1638 * The canonical identifier for the given resource type.
1639 */
1640 ResourceId?: StringFilterList;
1641 /**
1642 * The canonical AWS partition name that the Region is assigned to.
1643 */
1644 ResourcePartition?: StringFilterList;
1645 /**
1646 * The canonical AWS external Region name where this resource is located.
1647 */
1648 ResourceRegion?: StringFilterList;
1649 /**
1650 * A list of AWS tags associated with a resource at the time the finding was processed.
1651 */
1652 ResourceTags?: MapFilterList;
1653 /**
1654 * The instance type of the instance.
1655 */
1656 ResourceAwsEc2InstanceType?: StringFilterList;
1657 /**
1658 * The Amazon Machine Image (AMI) ID of the instance.
1659 */
1660 ResourceAwsEc2InstanceImageId?: StringFilterList;
1661 /**
1662 * The IPv4 addresses associated with the instance.
1663 */
1664 ResourceAwsEc2InstanceIpV4Addresses?: IpFilterList;
1665 /**
1666 * The IPv6 addresses associated with the instance.
1667 */
1668 ResourceAwsEc2InstanceIpV6Addresses?: IpFilterList;
1669 /**
1670 * The key name associated with the instance.
1671 */
1672 ResourceAwsEc2InstanceKeyName?: StringFilterList;
1673 /**
1674 * The IAM profile ARN of the instance.
1675 */
1676 ResourceAwsEc2InstanceIamInstanceProfileArn?: StringFilterList;
1677 /**
1678 * The identifier of the VPC that the instance was launched in.
1679 */
1680 ResourceAwsEc2InstanceVpcId?: StringFilterList;
1681 /**
1682 * The identifier of the subnet that the instance was launched in.
1683 */
1684 ResourceAwsEc2InstanceSubnetId?: StringFilterList;
1685 /**
1686 * The date and time the instance was launched.
1687 */
1688 ResourceAwsEc2InstanceLaunchedAt?: DateFilterList;
1689 /**
1690 * The canonical user ID of the owner of the S3 bucket.
1691 */
1692 ResourceAwsS3BucketOwnerId?: StringFilterList;
1693 /**
1694 * The display name of the owner of the S3 bucket.
1695 */
1696 ResourceAwsS3BucketOwnerName?: StringFilterList;
1697 /**
1698 * The user associated with the IAM access key related to a finding.
1699 */
1700 ResourceAwsIamAccessKeyUserName?: StringFilterList;
1701 /**
1702 * The status of the IAM access key related to a finding.
1703 */
1704 ResourceAwsIamAccessKeyStatus?: StringFilterList;
1705 /**
1706 * The creation date/time of the IAM access key related to a finding.
1707 */
1708 ResourceAwsIamAccessKeyCreatedAt?: DateFilterList;
1709 /**
1710 * The name of the container related to a finding.
1711 */
1712 ResourceContainerName?: StringFilterList;
1713 /**
1714 * The identifier of the image related to a finding.
1715 */
1716 ResourceContainerImageId?: StringFilterList;
1717 /**
1718 * The name of the image related to a finding.
1719 */
1720 ResourceContainerImageName?: StringFilterList;
1721 /**
1722 * The date/time that the container was started.
1723 */
1724 ResourceContainerLaunchedAt?: DateFilterList;
1725 /**
1726 * The details of a resource that doesn't have a specific subfield for the resource type defined.
1727 */
1728 ResourceDetailsOther?: MapFilterList;
1729 /**
1730 * Exclusive to findings that are generated as the result of a check run against a specific rule in a supported standard, such as CIS AWS Foundations. Contains security standard-related finding details.
1731 */
1732 ComplianceStatus?: StringFilterList;
1733 /**
1734 * The veracity of a finding.
1735 */
1736 VerificationState?: StringFilterList;
1737 /**
1738 * The workflow state of a finding.
1739 */
1740 WorkflowState?: StringFilterList;
1741 /**
1742 * The status of the investigation into a finding. Allowed values are the following. NEW - The initial state of a finding, before it is reviewed. NOTIFIED - Indicates that the resource owner has been notified about the security issue. Used when the initial reviewer is not the resource owner, and needs intervention from the resource owner. SUPPRESSED - The finding will not be reviewed again and will not be acted upon. RESOLVED - The finding was reviewed and remediated and is now considered resolved.
1743 */
1744 WorkflowStatus?: StringFilterList;
1745 /**
1746 * The updated record state for the finding.
1747 */
1748 RecordState?: StringFilterList;
1749 /**
1750 * The ARN of the solution that generated a related finding.
1751 */
1752 RelatedFindingsProductArn?: StringFilterList;
1753 /**
1754 * The solution-generated identifier for a related finding.
1755 */
1756 RelatedFindingsId?: StringFilterList;
1757 /**
1758 * The text of a note.
1759 */
1760 NoteText?: StringFilterList;
1761 /**
1762 * The timestamp of when the note was updated.
1763 */
1764 NoteUpdatedAt?: DateFilterList;
1765 /**
1766 * The principal that created a note.
1767 */
1768 NoteUpdatedBy?: StringFilterList;
1769 /**
1770 * A keyword for a finding.
1771 */
1772 Keyword?: KeywordFilterList;
1773 }
1774 export type AwsSecurityFindingList = AwsSecurityFinding[];
1775 export interface AwsSnsTopicDetails {
1776 /**
1777 * The ID of an AWS-managed customer master key (CMK) for Amazon SNS or a custom CMK.
1778 */
1779 KmsMasterKeyId?: NonEmptyString;
1780 /**
1781 * Subscription is an embedded property that describes the subscription endpoints of an Amazon SNS topic.
1782 */
1783 Subscription?: AwsSnsTopicSubscriptionList;
1784 /**
1785 * The name of the topic.
1786 */
1787 TopicName?: NonEmptyString;
1788 /**
1789 * The subscription's owner.
1790 */
1791 Owner?: NonEmptyString;
1792 }
1793 export interface AwsSnsTopicSubscription {
1794 /**
1795 * The subscription's endpoint (format depends on the protocol).
1796 */
1797 Endpoint?: NonEmptyString;
1798 /**
1799 * The subscription's protocol.
1800 */
1801 Protocol?: NonEmptyString;
1802 }
1803 export type AwsSnsTopicSubscriptionList = AwsSnsTopicSubscription[];
1804 export interface AwsSqsQueueDetails {
1805 /**
1806 * The length of time, in seconds, for which Amazon SQS can reuse a data key to encrypt or decrypt messages before calling AWS KMS again.
1807 */
1808 KmsDataKeyReusePeriodSeconds?: Integer;
1809 /**
1810 * The ID of an AWS-managed customer master key (CMK) for Amazon SQS or a custom CMK.
1811 */
1812 KmsMasterKeyId?: NonEmptyString;
1813 /**
1814 * The name of the new queue.
1815 */
1816 QueueName?: NonEmptyString;
1817 /**
1818 * The Amazon Resource Name (ARN) of the dead-letter queue to which Amazon SQS moves messages after the value of maxReceiveCount is exceeded.
1819 */
1820 DeadLetterTargetArn?: NonEmptyString;
1821 }
1822 export interface AwsWafWebAclDetails {
1823 /**
1824 * A friendly name or description of the WebACL. You can't change the name of a WebACL after you create it.
1825 */
1826 Name?: NonEmptyString;
1827 /**
1828 * The action to perform if none of the Rules contained in the WebACL match.
1829 */
1830 DefaultAction?: NonEmptyString;
1831 /**
1832 * An array that contains the action for each rule in a WebACL, the priority of the rule, and the ID of the rule.
1833 */
1834 Rules?: AwsWafWebAclRuleList;
1835 /**
1836 * A unique identifier for a WebACL.
1837 */
1838 WebAclId?: NonEmptyString;
1839 }
1840 export interface AwsWafWebAclRule {
1841 /**
1842 * Specifies the action that CloudFront or AWS WAF takes when a web request matches the conditions in the Rule.
1843 */
1844 Action?: WafAction;
1845 /**
1846 * Rules to exclude from a rule group.
1847 */
1848 ExcludedRules?: WafExcludedRuleList;
1849 /**
1850 * Use the OverrideAction to test your RuleGroup. Any rule in a RuleGroup can potentially block a request. If you set the OverrideAction to None, the RuleGroup blocks a request if any individual rule in the RuleGroup matches the request and is configured to block that request. However, if you first want to test the RuleGroup, set the OverrideAction to Count. The RuleGroup then overrides any block action specified by individual rules contained within the group. Instead of blocking matching requests, those requests are counted. ActivatedRule|OverrideAction applies only when updating or adding a RuleGroup to a WebACL. In this case you do not use ActivatedRule|Action. For all other update requests, ActivatedRule|Action is used instead of ActivatedRule|OverrideAction.
1851 */
1852 OverrideAction?: WafOverrideAction;
1853 /**
1854 * Specifies the order in which the Rules in a WebACL are evaluated. Rules with a lower value for Priority are evaluated before Rules with a higher value. The value must be a unique integer. If you add multiple Rules to a WebACL, the values do not need to be consecutive.
1855 */
1856 Priority?: Integer;
1857 /**
1858 * The identifier for a Rule.
1859 */
1860 RuleId?: NonEmptyString;
1861 /**
1862 * The rule type. Valid values: REGULAR | RATE_BASED | GROUP The default is REGULAR.
1863 */
1864 Type?: NonEmptyString;
1865 }
1866 export type AwsWafWebAclRuleList = AwsWafWebAclRule[];
1867 export interface BatchDisableStandardsRequest {
1868 /**
1869 * The ARNs of the standards subscriptions to disable.
1870 */
1871 StandardsSubscriptionArns: StandardsSubscriptionArns;
1872 }
1873 export interface BatchDisableStandardsResponse {
1874 /**
1875 * The details of the standards subscriptions that were disabled.
1876 */
1877 StandardsSubscriptions?: StandardsSubscriptions;
1878 }
1879 export interface BatchEnableStandardsRequest {
1880 /**
1881 * The list of standards checks to enable.
1882 */
1883 StandardsSubscriptionRequests: StandardsSubscriptionRequests;
1884 }
1885 export interface BatchEnableStandardsResponse {
1886 /**
1887 * The details of the standards subscriptions that were enabled.
1888 */
1889 StandardsSubscriptions?: StandardsSubscriptions;
1890 }
1891 export interface BatchImportFindingsRequest {
1892 /**
1893 * A list of findings to import. To successfully import a finding, it must follow the AWS Security Finding Format. Maximum of 100 findings per request.
1894 */
1895 Findings: AwsSecurityFindingList;
1896 }
1897 export interface BatchImportFindingsResponse {
1898 /**
1899 * The number of findings that failed to import.
1900 */
1901 FailedCount: Integer;
1902 /**
1903 * The number of findings that were successfully imported.
1904 */
1905 SuccessCount: Integer;
1906 /**
1907 * The list of findings that failed to import.
1908 */
1909 FailedFindings?: ImportFindingsErrorList;
1910 }
1911 export type Boolean = boolean;
1912 export type CategoryList = NonEmptyString[];
1913 export interface Compliance {
1914 /**
1915 * The result of a standards check.
1916 */
1917 Status?: ComplianceStatus;
1918 /**
1919 * List of requirements that are related to a standards control.
1920 */
1921 RelatedRequirements?: RelatedRequirementsList;
1922 }
1923 export type ComplianceStatus = "PASSED"|"WARNING"|"FAILED"|"NOT_AVAILABLE"|string;
1924 export interface ContainerDetails {
1925 /**
1926 * The name of the container related to a finding.
1927 */
1928 Name?: NonEmptyString;
1929 /**
1930 * The identifier of the image related to a finding.
1931 */
1932 ImageId?: NonEmptyString;
1933 /**
1934 * The name of the image related to a finding.
1935 */
1936 ImageName?: NonEmptyString;
1937 /**
1938 * The date and time when the container started.
1939 */
1940 LaunchedAt?: NonEmptyString;
1941 }
1942 export type ControlStatus = "ENABLED"|"DISABLED"|string;
1943 export interface CreateActionTargetRequest {
1944 /**
1945 * The name of the custom action target.
1946 */
1947 Name: NonEmptyString;
1948 /**
1949 * The description for the custom action target.
1950 */
1951 Description: NonEmptyString;
1952 /**
1953 * The ID for the custom action target.
1954 */
1955 Id: NonEmptyString;
1956 }
1957 export interface CreateActionTargetResponse {
1958 /**
1959 * The ARN for the custom action target.
1960 */
1961 ActionTargetArn: NonEmptyString;
1962 }
1963 export interface CreateInsightRequest {
1964 /**
1965 * The name of the custom insight to create.
1966 */
1967 Name: NonEmptyString;
1968 /**
1969 * One or more attributes used to filter the findings included in the insight. The insight only includes findings that match the criteria defined in the filters.
1970 */
1971 Filters: AwsSecurityFindingFilters;
1972 /**
1973 * The attribute used to group the findings for the insight. The grouping attribute identifies the type of item that the insight applies to. For example, if an insight is grouped by resource identifier, then the insight produces a list of resource identifiers.
1974 */
1975 GroupByAttribute: NonEmptyString;
1976 }
1977 export interface CreateInsightResponse {
1978 /**
1979 * The ARN of the insight created.
1980 */
1981 InsightArn: NonEmptyString;
1982 }
1983 export interface CreateMembersRequest {
1984 /**
1985 * The list of accounts to associate with the Security Hub master account. For each account, the list includes the account ID and the email address.
1986 */
1987 AccountDetails?: AccountDetailsList;
1988 }
1989 export interface CreateMembersResponse {
1990 /**
1991 * The list of AWS accounts that were not processed. For each account, the list includes the account ID and the email address.
1992 */
1993 UnprocessedAccounts?: ResultList;
1994 }
1995 export interface DateFilter {
1996 /**
1997 * A start date for the date filter.
1998 */
1999 Start?: NonEmptyString;
2000 /**
2001 * An end date for the date filter.
2002 */
2003 End?: NonEmptyString;
2004 /**
2005 * A date range for the date filter.
2006 */
2007 DateRange?: DateRange;
2008 }
2009 export type DateFilterList = DateFilter[];
2010 export interface DateRange {
2011 /**
2012 * A date range value for the date filter.
2013 */
2014 Value?: Integer;
2015 /**
2016 * A date range unit for the date filter.
2017 */
2018 Unit?: DateRangeUnit;
2019 }
2020 export type DateRangeUnit = "DAYS"|string;
2021 export interface DeclineInvitationsRequest {
2022 /**
2023 * The list of account IDs for the accounts from which to decline the invitations to Security Hub.
2024 */
2025 AccountIds: AccountIdList;
2026 }
2027 export interface DeclineInvitationsResponse {
2028 /**
2029 * The list of AWS accounts that were not processed. For each account, the list includes the account ID and the email address.
2030 */
2031 UnprocessedAccounts?: ResultList;
2032 }
2033 export interface DeleteActionTargetRequest {
2034 /**
2035 * The ARN of the custom action target to delete.
2036 */
2037 ActionTargetArn: NonEmptyString;
2038 }
2039 export interface DeleteActionTargetResponse {
2040 /**
2041 * The ARN of the custom action target that was deleted.
2042 */
2043 ActionTargetArn: NonEmptyString;
2044 }
2045 export interface DeleteInsightRequest {
2046 /**
2047 * The ARN of the insight to delete.
2048 */
2049 InsightArn: NonEmptyString;
2050 }
2051 export interface DeleteInsightResponse {
2052 /**
2053 * The ARN of the insight that was deleted.
2054 */
2055 InsightArn: NonEmptyString;
2056 }
2057 export interface DeleteInvitationsRequest {
2058 /**
2059 * The list of the account IDs that sent the invitations to delete.
2060 */
2061 AccountIds: AccountIdList;
2062 }
2063 export interface DeleteInvitationsResponse {
2064 /**
2065 * The list of AWS accounts for which the invitations were not deleted. For each account, the list includes the account ID and the email address.
2066 */
2067 UnprocessedAccounts?: ResultList;
2068 }
2069 export interface DeleteMembersRequest {
2070 /**
2071 * The list of account IDs for the member accounts to delete.
2072 */
2073 AccountIds?: AccountIdList;
2074 }
2075 export interface DeleteMembersResponse {
2076 /**
2077 * The list of AWS accounts that were not deleted. For each account, the list includes the account ID and the email address.
2078 */
2079 UnprocessedAccounts?: ResultList;
2080 }
2081 export interface DescribeActionTargetsRequest {
2082 /**
2083 * A list of custom action target ARNs for the custom action targets to retrieve.
2084 */
2085 ActionTargetArns?: ArnList;
2086 /**
2087 * The token that is required for pagination. On your first call to the DescribeActionTargets operation, set the value of this parameter to NULL. For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
2088 */
2089 NextToken?: NextToken;
2090 /**
2091 * The maximum number of results to return.
2092 */
2093 MaxResults?: MaxResults;
2094 }
2095 export interface DescribeActionTargetsResponse {
2096 /**
2097 * A list of ActionTarget objects. Each object includes the ActionTargetArn, Description, and Name of a custom action target available in Security Hub.
2098 */
2099 ActionTargets: ActionTargetList;
2100 /**
2101 * The pagination token to use to request the next page of results.
2102 */
2103 NextToken?: NextToken;
2104 }
2105 export interface DescribeHubRequest {
2106 /**
2107 * The ARN of the Hub resource to retrieve.
2108 */
2109 HubArn?: NonEmptyString;
2110 }
2111 export interface DescribeHubResponse {
2112 /**
2113 * The ARN of the Hub resource that was retrieved.
2114 */
2115 HubArn?: NonEmptyString;
2116 /**
2117 * The date and time when Security Hub was enabled in the account.
2118 */
2119 SubscribedAt?: NonEmptyString;
2120 }
2121 export interface DescribeProductsRequest {
2122 /**
2123 * The token that is required for pagination. On your first call to the DescribeProducts operation, set the value of this parameter to NULL. For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
2124 */
2125 NextToken?: NextToken;
2126 /**
2127 * The maximum number of results to return.
2128 */
2129 MaxResults?: MaxResults;
2130 }
2131 export interface DescribeProductsResponse {
2132 /**
2133 * A list of products, including details for each product.
2134 */
2135 Products: ProductsList;
2136 /**
2137 * The pagination token to use to request the next page of results.
2138 */
2139 NextToken?: NextToken;
2140 }
2141 export interface DescribeStandardsControlsRequest {
2142 /**
2143 * The ARN of a resource that represents your subscription to a supported standard.
2144 */
2145 StandardsSubscriptionArn: NonEmptyString;
2146 /**
2147 * The token that is required for pagination. On your first call to the DescribeStandardsControls operation, set the value of this parameter to NULL. For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
2148 */
2149 NextToken?: NextToken;
2150 /**
2151 * The maximum number of security standard controls to return.
2152 */
2153 MaxResults?: MaxResults;
2154 }
2155 export interface DescribeStandardsControlsResponse {
2156 /**
2157 * A list of security standards controls.
2158 */
2159 Controls?: StandardsControls;
2160 /**
2161 * The pagination token to use to request the next page of results.
2162 */
2163 NextToken?: NextToken;
2164 }
2165 export interface DescribeStandardsRequest {
2166 /**
2167 * The token that is required for pagination. On your first call to the DescribeStandards operation, set the value of this parameter to NULL. For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
2168 */
2169 NextToken?: NextToken;
2170 /**
2171 * The maximum number of standards to return.
2172 */
2173 MaxResults?: MaxResults;
2174 }
2175 export interface DescribeStandardsResponse {
2176 /**
2177 * A list of available standards.
2178 */
2179 Standards?: Standards;
2180 /**
2181 * The pagination token to use to request the next page of results.
2182 */
2183 NextToken?: NextToken;
2184 }
2185 export interface DisableImportFindingsForProductRequest {
2186 /**
2187 * The ARN of the integrated product to disable the integration for.
2188 */
2189 ProductSubscriptionArn: NonEmptyString;
2190 }
2191 export interface DisableImportFindingsForProductResponse {
2192 }
2193 export interface DisableSecurityHubRequest {
2194 }
2195 export interface DisableSecurityHubResponse {
2196 }
2197 export interface DisassociateFromMasterAccountRequest {
2198 }
2199 export interface DisassociateFromMasterAccountResponse {
2200 }
2201 export interface DisassociateMembersRequest {
2202 /**
2203 * The account IDs of the member accounts to disassociate from the master account.
2204 */
2205 AccountIds?: AccountIdList;
2206 }
2207 export interface DisassociateMembersResponse {
2208 }
2209 export type Double = number;
2210 export interface EnableImportFindingsForProductRequest {
2211 /**
2212 * The ARN of the product to enable the integration for.
2213 */
2214 ProductArn: NonEmptyString;
2215 }
2216 export interface EnableImportFindingsForProductResponse {
2217 /**
2218 * The ARN of your subscription to the product to enable integrations for.
2219 */
2220 ProductSubscriptionArn?: NonEmptyString;
2221 }
2222 export interface EnableSecurityHubRequest {
2223 /**
2224 * The tags to add to the Hub resource when you enable Security Hub.
2225 */
2226 Tags?: TagMap;
2227 /**
2228 * Whether to enable the security standards that Security Hub has designated as automatically enabled. If you do not provide a value for EnableDefaultStandards, it is set to true. To not enable the automatically enabled standards, set EnableDefaultStandards to false.
2229 */
2230 EnableDefaultStandards?: Boolean;
2231 }
2232 export interface EnableSecurityHubResponse {
2233 }
2234 export type FieldMap = {[key: string]: NonEmptyString};
2235 export interface GetEnabledStandardsRequest {
2236 /**
2237 * The list of the standards subscription ARNs for the standards to retrieve.
2238 */
2239 StandardsSubscriptionArns?: StandardsSubscriptionArns;
2240 /**
2241 * The token that is required for pagination. On your first call to the GetEnabledStandards operation, set the value of this parameter to NULL. For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
2242 */
2243 NextToken?: NextToken;
2244 /**
2245 * The maximum number of results to return in the response.
2246 */
2247 MaxResults?: MaxResults;
2248 }
2249 export interface GetEnabledStandardsResponse {
2250 /**
2251 * The list of StandardsSubscriptions objects that include information about the enabled standards.
2252 */
2253 StandardsSubscriptions?: StandardsSubscriptions;
2254 /**
2255 * The pagination token to use to request the next page of results.
2256 */
2257 NextToken?: NextToken;
2258 }
2259 export interface GetFindingsRequest {
2260 /**
2261 * The finding attributes used to define a condition to filter the returned findings.
2262 */
2263 Filters?: AwsSecurityFindingFilters;
2264 /**
2265 * The finding attributes used to sort the list of returned findings.
2266 */
2267 SortCriteria?: SortCriteria;
2268 /**
2269 * The token that is required for pagination. On your first call to the GetFindings operation, set the value of this parameter to NULL. For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
2270 */
2271 NextToken?: NextToken;
2272 /**
2273 * The maximum number of findings to return.
2274 */
2275 MaxResults?: MaxResults;
2276 }
2277 export interface GetFindingsResponse {
2278 /**
2279 * The findings that matched the filters specified in the request.
2280 */
2281 Findings: AwsSecurityFindingList;
2282 /**
2283 * The pagination token to use to request the next page of results.
2284 */
2285 NextToken?: NextToken;
2286 }
2287 export interface GetInsightResultsRequest {
2288 /**
2289 * The ARN of the insight for which to return results.
2290 */
2291 InsightArn: NonEmptyString;
2292 }
2293 export interface GetInsightResultsResponse {
2294 /**
2295 * The insight results returned by the operation.
2296 */
2297 InsightResults: InsightResults;
2298 }
2299 export interface GetInsightsRequest {
2300 /**
2301 * The ARNs of the insights to describe. If you do not provide any insight ARNs, then GetInsights returns all of your custom insights. It does not return any managed insights.
2302 */
2303 InsightArns?: ArnList;
2304 /**
2305 * The token that is required for pagination. On your first call to the GetInsights operation, set the value of this parameter to NULL. For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
2306 */
2307 NextToken?: NextToken;
2308 /**
2309 * The maximum number of items to return in the response.
2310 */
2311 MaxResults?: MaxResults;
2312 }
2313 export interface GetInsightsResponse {
2314 /**
2315 * The insights returned by the operation.
2316 */
2317 Insights: InsightList;
2318 /**
2319 * The pagination token to use to request the next page of results.
2320 */
2321 NextToken?: NextToken;
2322 }
2323 export interface GetInvitationsCountRequest {
2324 }
2325 export interface GetInvitationsCountResponse {
2326 /**
2327 * The number of all membership invitations sent to this Security Hub member account, not including the currently accepted invitation.
2328 */
2329 InvitationsCount?: Integer;
2330 }
2331 export interface GetMasterAccountRequest {
2332 }
2333 export interface GetMasterAccountResponse {
2334 /**
2335 * A list of details about the Security Hub master account for the current member account.
2336 */
2337 Master?: Invitation;
2338 }
2339 export interface GetMembersRequest {
2340 /**
2341 * The list of account IDs for the Security Hub member accounts to return the details for.
2342 */
2343 AccountIds: AccountIdList;
2344 }
2345 export interface GetMembersResponse {
2346 /**
2347 * The list of details about the Security Hub member accounts.
2348 */
2349 Members?: MemberList;
2350 /**
2351 * The list of AWS accounts that could not be processed. For each account, the list includes the account ID and the email address.
2352 */
2353 UnprocessedAccounts?: ResultList;
2354 }
2355 export interface ImportFindingsError {
2356 /**
2357 * The identifier of the finding that could not be updated.
2358 */
2359 Id: NonEmptyString;
2360 /**
2361 * The code of the error returned by the BatchImportFindings operation.
2362 */
2363 ErrorCode: NonEmptyString;
2364 /**
2365 * The message of the error returned by the BatchImportFindings operation.
2366 */
2367 ErrorMessage: NonEmptyString;
2368 }
2369 export type ImportFindingsErrorList = ImportFindingsError[];
2370 export interface Insight {
2371 /**
2372 * The ARN of a Security Hub insight.
2373 */
2374 InsightArn: NonEmptyString;
2375 /**
2376 * The name of a Security Hub insight.
2377 */
2378 Name: NonEmptyString;
2379 /**
2380 * One or more attributes used to filter the findings included in the insight. The insight only includes findings that match the criteria defined in the filters.
2381 */
2382 Filters: AwsSecurityFindingFilters;
2383 /**
2384 * The grouping attribute for the insight's findings. Indicates how to group the matching findings, and identifies the type of item that the insight applies to. For example, if an insight is grouped by resource identifier, then the insight produces a list of resource identifiers.
2385 */
2386 GroupByAttribute: NonEmptyString;
2387 }
2388 export type InsightList = Insight[];
2389 export interface InsightResultValue {
2390 /**
2391 * The value of the attribute that the findings are grouped by for the insight whose results are returned by the GetInsightResults operation.
2392 */
2393 GroupByAttributeValue: NonEmptyString;
2394 /**
2395 * The number of findings returned for each GroupByAttributeValue.
2396 */
2397 Count: Integer;
2398 }
2399 export type InsightResultValueList = InsightResultValue[];
2400 export interface InsightResults {
2401 /**
2402 * The ARN of the insight whose results are returned by the GetInsightResults operation.
2403 */
2404 InsightArn: NonEmptyString;
2405 /**
2406 * The attribute that the findings are grouped by for the insight whose results are returned by the GetInsightResults operation.
2407 */
2408 GroupByAttribute: NonEmptyString;
2409 /**
2410 * The list of insight result values returned by the GetInsightResults operation.
2411 */
2412 ResultValues: InsightResultValueList;
2413 }
2414 export type Integer = number;
2415 export type IntegrationType = "SEND_FINDINGS_TO_SECURITY_HUB"|"RECEIVE_FINDINGS_FROM_SECURITY_HUB"|string;
2416 export type IntegrationTypeList = IntegrationType[];
2417 export interface Invitation {
2418 /**
2419 * The account ID of the Security Hub master account that the invitation was sent from.
2420 */
2421 AccountId?: AccountId;
2422 /**
2423 * The ID of the invitation sent to the member account.
2424 */
2425 InvitationId?: NonEmptyString;
2426 /**
2427 * The timestamp of when the invitation was sent.
2428 */
2429 InvitedAt?: Timestamp;
2430 /**
2431 * The current status of the association between the member and master accounts.
2432 */
2433 MemberStatus?: NonEmptyString;
2434 }
2435 export type InvitationList = Invitation[];
2436 export interface InviteMembersRequest {
2437 /**
2438 * The list of account IDs of the AWS accounts to invite to Security Hub as members.
2439 */
2440 AccountIds?: AccountIdList;
2441 }
2442 export interface InviteMembersResponse {
2443 /**
2444 * The list of AWS accounts that could not be processed. For each account, the list includes the account ID and the email address.
2445 */
2446 UnprocessedAccounts?: ResultList;
2447 }
2448 export interface IpFilter {
2449 /**
2450 * A finding's CIDR value.
2451 */
2452 Cidr?: NonEmptyString;
2453 }
2454 export type IpFilterList = IpFilter[];
2455 export interface KeywordFilter {
2456 /**
2457 * A value for the keyword.
2458 */
2459 Value?: NonEmptyString;
2460 }
2461 export type KeywordFilterList = KeywordFilter[];
2462 export interface ListEnabledProductsForImportRequest {
2463 /**
2464 * The token that is required for pagination. On your first call to the ListEnabledProductsForImport operation, set the value of this parameter to NULL. For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
2465 */
2466 NextToken?: NextToken;
2467 /**
2468 * The maximum number of items to return in the response.
2469 */
2470 MaxResults?: MaxResults;
2471 }
2472 export interface ListEnabledProductsForImportResponse {
2473 /**
2474 * The list of ARNs for the resources that represent your subscriptions to products.
2475 */
2476 ProductSubscriptions?: ProductSubscriptionArnList;
2477 /**
2478 * The pagination token to use to request the next page of results.
2479 */
2480 NextToken?: NextToken;
2481 }
2482 export interface ListInvitationsRequest {
2483 /**
2484 * The maximum number of items to return in the response.
2485 */
2486 MaxResults?: MaxResults;
2487 /**
2488 * The token that is required for pagination. On your first call to the ListInvitations operation, set the value of this parameter to NULL. For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
2489 */
2490 NextToken?: NextToken;
2491 }
2492 export interface ListInvitationsResponse {
2493 /**
2494 * The details of the invitations returned by the operation.
2495 */
2496 Invitations?: InvitationList;
2497 /**
2498 * The pagination token to use to request the next page of results.
2499 */
2500 NextToken?: NonEmptyString;
2501 }
2502 export interface ListMembersRequest {
2503 /**
2504 * Specifies which member accounts to include in the response based on their relationship status with the master account. The default value is TRUE. If OnlyAssociated is set to TRUE, the response includes member accounts whose relationship status with the master is set to ENABLED or DISABLED. If OnlyAssociated is set to FALSE, the response includes all existing member accounts.
2505 */
2506 OnlyAssociated?: Boolean;
2507 /**
2508 * The maximum number of items to return in the response.
2509 */
2510 MaxResults?: MaxResults;
2511 /**
2512 * The token that is required for pagination. On your first call to the ListMembers operation, set the value of this parameter to NULL. For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
2513 */
2514 NextToken?: NextToken;
2515 }
2516 export interface ListMembersResponse {
2517 /**
2518 * Member details returned by the operation.
2519 */
2520 Members?: MemberList;
2521 /**
2522 * The pagination token to use to request the next page of results.
2523 */
2524 NextToken?: NonEmptyString;
2525 }
2526 export interface ListTagsForResourceRequest {
2527 /**
2528 * The ARN of the resource to retrieve tags for.
2529 */
2530 ResourceArn: ResourceArn;
2531 }
2532 export interface ListTagsForResourceResponse {
2533 /**
2534 * The tags associated with a resource.
2535 */
2536 Tags?: TagMap;
2537 }
2538 export interface LoadBalancerState {
2539 /**
2540 * The state code. The initial state of the load balancer is provisioning. After the load balancer is fully set up and ready to route traffic, its state is active. If the load balancer could not be set up, its state is failed.
2541 */
2542 Code?: NonEmptyString;
2543 /**
2544 * A description of the state.
2545 */
2546 Reason?: NonEmptyString;
2547 }
2548 export interface Malware {
2549 /**
2550 * The name of the malware that was observed.
2551 */
2552 Name: NonEmptyString;
2553 /**
2554 * The type of the malware that was observed.
2555 */
2556 Type?: MalwareType;
2557 /**
2558 * The file system path of the malware that was observed.
2559 */
2560 Path?: NonEmptyString;
2561 /**
2562 * The state of the malware that was observed.
2563 */
2564 State?: MalwareState;
2565 }
2566 export type MalwareList = Malware[];
2567 export type MalwareState = "OBSERVED"|"REMOVAL_FAILED"|"REMOVED"|string;
2568 export type MalwareType = "ADWARE"|"BLENDED_THREAT"|"BOTNET_AGENT"|"COIN_MINER"|"EXPLOIT_KIT"|"KEYLOGGER"|"MACRO"|"POTENTIALLY_UNWANTED"|"SPYWARE"|"RANSOMWARE"|"REMOTE_ACCESS"|"ROOTKIT"|"TROJAN"|"VIRUS"|"WORM"|string;
2569 export interface MapFilter {
2570 /**
2571 * The key of the map filter.
2572 */
2573 Key?: NonEmptyString;
2574 /**
2575 * The value for the key in the map filter.
2576 */
2577 Value?: NonEmptyString;
2578 /**
2579 * The condition to apply to a key value when querying for findings with a map filter.
2580 */
2581 Comparison?: MapFilterComparison;
2582 }
2583 export type MapFilterComparison = "EQUALS"|string;
2584 export type MapFilterList = MapFilter[];
2585 export type MaxResults = number;
2586 export interface Member {
2587 /**
2588 * The AWS account ID of the member account.
2589 */
2590 AccountId?: AccountId;
2591 /**
2592 * The email address of the member account.
2593 */
2594 Email?: NonEmptyString;
2595 /**
2596 * The AWS account ID of the Security Hub master account associated with this member account.
2597 */
2598 MasterId?: NonEmptyString;
2599 /**
2600 * The status of the relationship between the member account and its master account.
2601 */
2602 MemberStatus?: NonEmptyString;
2603 /**
2604 * A timestamp for the date and time when the invitation was sent to the member account.
2605 */
2606 InvitedAt?: Timestamp;
2607 /**
2608 * The timestamp for the date and time when the member account was updated.
2609 */
2610 UpdatedAt?: Timestamp;
2611 }
2612 export type MemberList = Member[];
2613 export interface Network {
2614 /**
2615 * The direction of network traffic associated with a finding.
2616 */
2617 Direction?: NetworkDirection;
2618 /**
2619 * The protocol of network-related information about a finding.
2620 */
2621 Protocol?: NonEmptyString;
2622 /**
2623 * The source IPv4 address of network-related information about a finding.
2624 */
2625 SourceIpV4?: NonEmptyString;
2626 /**
2627 * The source IPv6 address of network-related information about a finding.
2628 */
2629 SourceIpV6?: NonEmptyString;
2630 /**
2631 * The source port of network-related information about a finding.
2632 */
2633 SourcePort?: Integer;
2634 /**
2635 * The source domain of network-related information about a finding.
2636 */
2637 SourceDomain?: NonEmptyString;
2638 /**
2639 * The source media access control (MAC) address of network-related information about a finding.
2640 */
2641 SourceMac?: NonEmptyString;
2642 /**
2643 * The destination IPv4 address of network-related information about a finding.
2644 */
2645 DestinationIpV4?: NonEmptyString;
2646 /**
2647 * The destination IPv6 address of network-related information about a finding.
2648 */
2649 DestinationIpV6?: NonEmptyString;
2650 /**
2651 * The destination port of network-related information about a finding.
2652 */
2653 DestinationPort?: Integer;
2654 /**
2655 * The destination domain of network-related information about a finding.
2656 */
2657 DestinationDomain?: NonEmptyString;
2658 }
2659 export type NetworkDirection = "IN"|"OUT"|string;
2660 export type NextToken = string;
2661 export type NonEmptyString = string;
2662 export type NonEmptyStringList = NonEmptyString[];
2663 export interface Note {
2664 /**
2665 * The text of a note.
2666 */
2667 Text: NonEmptyString;
2668 /**
2669 * The principal that created a note.
2670 */
2671 UpdatedBy: NonEmptyString;
2672 /**
2673 * The timestamp of when the note was updated.
2674 */
2675 UpdatedAt: NonEmptyString;
2676 }
2677 export interface NoteUpdate {
2678 /**
2679 * The updated note text.
2680 */
2681 Text: NonEmptyString;
2682 /**
2683 * The principal that updated the note.
2684 */
2685 UpdatedBy: NonEmptyString;
2686 }
2687 export interface NumberFilter {
2688 /**
2689 * The greater-than-equal condition to be applied to a single field when querying for findings.
2690 */
2691 Gte?: Double;
2692 /**
2693 * The less-than-equal condition to be applied to a single field when querying for findings.
2694 */
2695 Lte?: Double;
2696 /**
2697 * The equal-to condition to be applied to a single field when querying for findings.
2698 */
2699 Eq?: Double;
2700 }
2701 export type NumberFilterList = NumberFilter[];
2702 export type Partition = "aws"|"aws-cn"|"aws-us-gov"|string;
2703 export interface ProcessDetails {
2704 /**
2705 * The name of the process.
2706 */
2707 Name?: NonEmptyString;
2708 /**
2709 * The path to the process executable.
2710 */
2711 Path?: NonEmptyString;
2712 /**
2713 * The process ID.
2714 */
2715 Pid?: Integer;
2716 /**
2717 * The parent process ID.
2718 */
2719 ParentPid?: Integer;
2720 /**
2721 * The date/time that the process was launched.
2722 */
2723 LaunchedAt?: NonEmptyString;
2724 /**
2725 * The date and time when the process was terminated.
2726 */
2727 TerminatedAt?: NonEmptyString;
2728 }
2729 export interface Product {
2730 /**
2731 * The ARN assigned to the product.
2732 */
2733 ProductArn: NonEmptyString;
2734 /**
2735 * The name of the product.
2736 */
2737 ProductName?: NonEmptyString;
2738 /**
2739 * The name of the company that provides the product.
2740 */
2741 CompanyName?: NonEmptyString;
2742 /**
2743 * A description of the product.
2744 */
2745 Description?: NonEmptyString;
2746 /**
2747 * The categories assigned to the product.
2748 */
2749 Categories?: CategoryList;
2750 /**
2751 * The types of integration that the product supports. Available values are the following. SEND_FINDINGS_TO_SECURITY_HUB - Indicates that the integration sends findings to Security Hub. RECEIVE_FINDINGS_FROM_SECURITY_HUB - Indicates that the integration receives findings from Security Hub.
2752 */
2753 IntegrationTypes?: IntegrationTypeList;
2754 /**
2755 * The URL for the page that contains more information about the product.
2756 */
2757 MarketplaceUrl?: NonEmptyString;
2758 /**
2759 * The URL used to activate the product.
2760 */
2761 ActivationUrl?: NonEmptyString;
2762 /**
2763 * The resource policy associated with the product.
2764 */
2765 ProductSubscriptionResourcePolicy?: NonEmptyString;
2766 }
2767 export type ProductSubscriptionArnList = NonEmptyString[];
2768 export type ProductsList = Product[];
2769 export interface Recommendation {
2770 /**
2771 * Describes the recommended steps to take to remediate an issue identified in a finding.
2772 */
2773 Text?: NonEmptyString;
2774 /**
2775 * A URL to a page or site that contains information about how to remediate a finding.
2776 */
2777 Url?: NonEmptyString;
2778 }
2779 export type RecordState = "ACTIVE"|"ARCHIVED"|string;
2780 export interface RelatedFinding {
2781 /**
2782 * The ARN of the product that generated a related finding.
2783 */
2784 ProductArn: NonEmptyString;
2785 /**
2786 * The product-generated identifier for a related finding.
2787 */
2788 Id: NonEmptyString;
2789 }
2790 export type RelatedFindingList = RelatedFinding[];
2791 export type RelatedRequirementsList = NonEmptyString[];
2792 export interface Remediation {
2793 /**
2794 * A recommendation on the steps to take to remediate the issue identified by a finding.
2795 */
2796 Recommendation?: Recommendation;
2797 }
2798 export interface Resource {
2799 /**
2800 * The type of the resource that details are provided for. If possible, set Type to one of the supported resource types. For example, if the resource is an EC2 instance, then set Type to AwsEc2Instance. If the resource does not match any of the provided types, then set Type to Other.
2801 */
2802 Type: NonEmptyString;
2803 /**
2804 * The canonical identifier for the given resource type.
2805 */
2806 Id: NonEmptyString;
2807 /**
2808 * The canonical AWS partition name that the Region is assigned to.
2809 */
2810 Partition?: Partition;
2811 /**
2812 * The canonical AWS external Region name where this resource is located.
2813 */
2814 Region?: NonEmptyString;
2815 /**
2816 * A list of AWS tags associated with a resource at the time the finding was processed.
2817 */
2818 Tags?: FieldMap;
2819 /**
2820 * Additional details about the resource related to a finding.
2821 */
2822 Details?: ResourceDetails;
2823 }
2824 export type ResourceArn = string;
2825 export interface ResourceDetails {
2826 /**
2827 * Details for an AWS CodeBuild project.
2828 */
2829 AwsCodeBuildProject?: AwsCodeBuildProjectDetails;
2830 /**
2831 * Details about a CloudFront distribution.
2832 */
2833 AwsCloudFrontDistribution?: AwsCloudFrontDistributionDetails;
2834 /**
2835 * Details about an Amazon EC2 instance related to a finding.
2836 */
2837 AwsEc2Instance?: AwsEc2InstanceDetails;
2838 /**
2839 * Details for an AWS EC2 network interface.
2840 */
2841 AwsEc2NetworkInterface?: AwsEc2NetworkInterfaceDetails;
2842 /**
2843 * Details for an EC2 security group.
2844 */
2845 AwsEc2SecurityGroup?: AwsEc2SecurityGroupDetails;
2846 /**
2847 * Details about a load balancer.
2848 */
2849 AwsElbv2LoadBalancer?: AwsElbv2LoadBalancerDetails;
2850 /**
2851 * Details for an Elasticsearch domain.
2852 */
2853 AwsElasticsearchDomain?: AwsElasticsearchDomainDetails;
2854 /**
2855 * Details about an Amazon S3 Bucket related to a finding.
2856 */
2857 AwsS3Bucket?: AwsS3BucketDetails;
2858 /**
2859 * Details about an Amazon S3 object related to a finding.
2860 */
2861 AwsS3Object?: AwsS3ObjectDetails;
2862 /**
2863 * Details about an IAM access key related to a finding.
2864 */
2865 AwsIamAccessKey?: AwsIamAccessKeyDetails;
2866 /**
2867 * Details about an IAM role.
2868 */
2869 AwsIamRole?: AwsIamRoleDetails;
2870 /**
2871 * Details about a KMS key.
2872 */
2873 AwsKmsKey?: AwsKmsKeyDetails;
2874 /**
2875 * Details about a Lambda function.
2876 */
2877 AwsLambdaFunction?: AwsLambdaFunctionDetails;
2878 /**
2879 * Details for a Lambda layer version.
2880 */
2881 AwsLambdaLayerVersion?: AwsLambdaLayerVersionDetails;
2882 /**
2883 * Details for an RDS database instance.
2884 */
2885 AwsRdsDbInstance?: AwsRdsDbInstanceDetails;
2886 /**
2887 * Details about an SNS topic.
2888 */
2889 AwsSnsTopic?: AwsSnsTopicDetails;
2890 /**
2891 * Details about an SQS queue.
2892 */
2893 AwsSqsQueue?: AwsSqsQueueDetails;
2894 /**
2895 * Details for a WAF WebACL.
2896 */
2897 AwsWafWebAcl?: AwsWafWebAclDetails;
2898 /**
2899 * Details about a container resource related to a finding.
2900 */
2901 Container?: ContainerDetails;
2902 /**
2903 * Details about a resource that are not available in a type-specific details object. Use the Other object in the following cases. The type-specific object does not contain all of the fields that you want to populate. In this case, first use the type-specific object to populate those fields. Use the Other object to populate the fields that are missing from the type-specific object. The resource type does not have a corresponding object. This includes resources for which the type is Other.
2904 */
2905 Other?: FieldMap;
2906 }
2907 export type ResourceList = Resource[];
2908 export interface Result {
2909 /**
2910 * An AWS account ID of the account that was not processed.
2911 */
2912 AccountId?: AccountId;
2913 /**
2914 * The reason that the account was not processed.
2915 */
2916 ProcessingResult?: NonEmptyString;
2917 }
2918 export type ResultList = Result[];
2919 export type SecurityGroups = NonEmptyString[];
2920 export interface Severity {
2921 /**
2922 * The native severity as defined by the AWS service or integrated partner product that generated the finding.
2923 */
2924 Product?: Double;
2925 /**
2926 * The severity value of the finding. The allowed values are the following. INFORMATIONAL - No issue was found. LOW - The issue does not require action on its own. MEDIUM - The issue must be addressed but not urgently. HIGH - The issue must be addressed as a priority. CRITICAL - The issue must be remediated immediately to avoid it escalating.
2927 */
2928 Label?: SeverityLabel;
2929 /**
2930 * Deprecated. This attribute is being deprecated. Instead of providing Normalized, provide Label. If you provide Normalized and do not provide Label, Label is set automatically as follows. 0 - INFORMATIONAL 1–39 - LOW 40–69 - MEDIUM 70–89 - HIGH 90–100 - CRITICAL
2931 */
2932 Normalized?: Integer;
2933 }
2934 export type SeverityLabel = "INFORMATIONAL"|"LOW"|"MEDIUM"|"HIGH"|"CRITICAL"|string;
2935 export type SeverityRating = "LOW"|"MEDIUM"|"HIGH"|"CRITICAL"|string;
2936 export type SortCriteria = SortCriterion[];
2937 export interface SortCriterion {
2938 /**
2939 * The finding attribute used to sort findings.
2940 */
2941 Field?: NonEmptyString;
2942 /**
2943 * The order used to sort findings.
2944 */
2945 SortOrder?: SortOrder;
2946 }
2947 export type SortOrder = "asc"|"desc"|string;
2948 export interface Standard {
2949 /**
2950 * The ARN of a standard.
2951 */
2952 StandardsArn?: NonEmptyString;
2953 /**
2954 * The name of the standard.
2955 */
2956 Name?: NonEmptyString;
2957 /**
2958 * A description of the standard.
2959 */
2960 Description?: NonEmptyString;
2961 /**
2962 * Whether the standard is enabled by default. When Security Hub is enabled from the console, if a standard is enabled by default, the check box for that standard is selected by default. When Security Hub is enabled using the EnableSecurityHub API operation, the standard is enabled by default unless EnableDefaultStandards is set to false.
2963 */
2964 EnabledByDefault?: Boolean;
2965 }
2966 export type Standards = Standard[];
2967 export interface StandardsControl {
2968 /**
2969 * The ARN of the security standard control.
2970 */
2971 StandardsControlArn?: NonEmptyString;
2972 /**
2973 * The current status of the security standard control. Indicates whether the control is enabled or disabled. Security Hub does not check against disabled controls.
2974 */
2975 ControlStatus?: ControlStatus;
2976 /**
2977 * The reason provided for the most recent change in status for the control.
2978 */
2979 DisabledReason?: NonEmptyString;
2980 /**
2981 * The date and time that the status of the security standard control was most recently updated.
2982 */
2983 ControlStatusUpdatedAt?: Timestamp;
2984 /**
2985 * The identifier of the security standard control.
2986 */
2987 ControlId?: NonEmptyString;
2988 /**
2989 * The title of the security standard control.
2990 */
2991 Title?: NonEmptyString;
2992 /**
2993 * The longer description of the security standard control. Provides information about what the control is checking for.
2994 */
2995 Description?: NonEmptyString;
2996 /**
2997 * A link to remediation information for the control in the Security Hub user documentation.
2998 */
2999 RemediationUrl?: NonEmptyString;
3000 /**
3001 * The severity of findings generated from this security standard control. The finding severity is based on an assessment of how easy it would be to compromise AWS resources if the issue is detected.
3002 */
3003 SeverityRating?: SeverityRating;
3004 /**
3005 * The list of requirements that are related to this control.
3006 */
3007 RelatedRequirements?: RelatedRequirementsList;
3008 }
3009 export type StandardsControls = StandardsControl[];
3010 export type StandardsInputParameterMap = {[key: string]: NonEmptyString};
3011 export type StandardsStatus = "PENDING"|"READY"|"FAILED"|"DELETING"|"INCOMPLETE"|string;
3012 export interface StandardsSubscription {
3013 /**
3014 * The ARN of a resource that represents your subscription to a supported standard.
3015 */
3016 StandardsSubscriptionArn: NonEmptyString;
3017 /**
3018 * The ARN of a standard.
3019 */
3020 StandardsArn: NonEmptyString;
3021 /**
3022 * A key-value pair of input for the standard.
3023 */
3024 StandardsInput: StandardsInputParameterMap;
3025 /**
3026 * The status of the standards subscription.
3027 */
3028 StandardsStatus: StandardsStatus;
3029 }
3030 export type StandardsSubscriptionArns = NonEmptyString[];
3031 export interface StandardsSubscriptionRequest {
3032 /**
3033 * The ARN of the standard that you want to enable. To view the list of available standards and their ARNs, use the DescribeStandards operation.
3034 */
3035 StandardsArn: NonEmptyString;
3036 /**
3037 * A key-value pair of input for the standard.
3038 */
3039 StandardsInput?: StandardsInputParameterMap;
3040 }
3041 export type StandardsSubscriptionRequests = StandardsSubscriptionRequest[];
3042 export type StandardsSubscriptions = StandardsSubscription[];
3043 export interface StringFilter {
3044 /**
3045 * The string filter value.
3046 */
3047 Value?: NonEmptyString;
3048 /**
3049 * The condition to be applied to a string value when querying for findings.
3050 */
3051 Comparison?: StringFilterComparison;
3052 }
3053 export type StringFilterComparison = "EQUALS"|"PREFIX"|string;
3054 export type StringFilterList = StringFilter[];
3055 export type StringList = NonEmptyString[];
3056 export type TagKey = string;
3057 export type TagKeyList = TagKey[];
3058 export type TagMap = {[key: string]: TagValue};
3059 export interface TagResourceRequest {
3060 /**
3061 * The ARN of the resource to apply the tags to.
3062 */
3063 ResourceArn: ResourceArn;
3064 /**
3065 * The tags to add to the resource.
3066 */
3067 Tags: TagMap;
3068 }
3069 export interface TagResourceResponse {
3070 }
3071 export type TagValue = string;
3072 export interface ThreatIntelIndicator {
3073 /**
3074 * The type of threat intelligence indicator.
3075 */
3076 Type?: ThreatIntelIndicatorType;
3077 /**
3078 * The value of a threat intelligence indicator.
3079 */
3080 Value?: NonEmptyString;
3081 /**
3082 * The category of a threat intelligence indicator.
3083 */
3084 Category?: ThreatIntelIndicatorCategory;
3085 /**
3086 * The date and time when the most recent instance of a threat intelligence indicator was observed.
3087 */
3088 LastObservedAt?: NonEmptyString;
3089 /**
3090 * The source of the threat intelligence indicator.
3091 */
3092 Source?: NonEmptyString;
3093 /**
3094 * The URL to the page or site where you can get more information about the threat intelligence indicator.
3095 */
3096 SourceUrl?: NonEmptyString;
3097 }
3098 export type ThreatIntelIndicatorCategory = "BACKDOOR"|"CARD_STEALER"|"COMMAND_AND_CONTROL"|"DROP_SITE"|"EXPLOIT_SITE"|"KEYLOGGER"|string;
3099 export type ThreatIntelIndicatorList = ThreatIntelIndicator[];
3100 export type ThreatIntelIndicatorType = "DOMAIN"|"EMAIL_ADDRESS"|"HASH_MD5"|"HASH_SHA1"|"HASH_SHA256"|"HASH_SHA512"|"IPV4_ADDRESS"|"IPV6_ADDRESS"|"MUTEX"|"PROCESS"|"URL"|string;
3101 export type Timestamp = Date;
3102 export type TypeList = NonEmptyString[];
3103 export interface UntagResourceRequest {
3104 /**
3105 * The ARN of the resource to remove the tags from.
3106 */
3107 ResourceArn: ResourceArn;
3108 /**
3109 * The tag keys associated with the tags to remove from the resource.
3110 */
3111 TagKeys: TagKeyList;
3112 }
3113 export interface UntagResourceResponse {
3114 }
3115 export interface UpdateActionTargetRequest {
3116 /**
3117 * The ARN of the custom action target to update.
3118 */
3119 ActionTargetArn: NonEmptyString;
3120 /**
3121 * The updated name of the custom action target.
3122 */
3123 Name?: NonEmptyString;
3124 /**
3125 * The updated description for the custom action target.
3126 */
3127 Description?: NonEmptyString;
3128 }
3129 export interface UpdateActionTargetResponse {
3130 }
3131 export interface UpdateFindingsRequest {
3132 /**
3133 * A collection of attributes that specify which findings you want to update.
3134 */
3135 Filters: AwsSecurityFindingFilters;
3136 /**
3137 * The updated note for the finding.
3138 */
3139 Note?: NoteUpdate;
3140 /**
3141 * The updated record state for the finding.
3142 */
3143 RecordState?: RecordState;
3144 }
3145 export interface UpdateFindingsResponse {
3146 }
3147 export interface UpdateInsightRequest {
3148 /**
3149 * The ARN of the insight that you want to update.
3150 */
3151 InsightArn: NonEmptyString;
3152 /**
3153 * The updated name for the insight.
3154 */
3155 Name?: NonEmptyString;
3156 /**
3157 * The updated filters that define this insight.
3158 */
3159 Filters?: AwsSecurityFindingFilters;
3160 /**
3161 * The updated GroupBy attribute that defines this insight.
3162 */
3163 GroupByAttribute?: NonEmptyString;
3164 }
3165 export interface UpdateInsightResponse {
3166 }
3167 export interface UpdateStandardsControlRequest {
3168 /**
3169 * The ARN of the security standard control to enable or disable.
3170 */
3171 StandardsControlArn: NonEmptyString;
3172 /**
3173 * The updated status of the security standard control.
3174 */
3175 ControlStatus?: ControlStatus;
3176 /**
3177 * A description of the reason why you are disabling a security standard control.
3178 */
3179 DisabledReason?: NonEmptyString;
3180 }
3181 export interface UpdateStandardsControlResponse {
3182 }
3183 export type VerificationState = "UNKNOWN"|"TRUE_POSITIVE"|"FALSE_POSITIVE"|"BENIGN_POSITIVE"|string;
3184 export interface WafAction {
3185 /**
3186 * Specifies how you want AWS WAF to respond to requests that match the settings in a Rule. Valid settings include the following: ALLOW - AWS WAF allows requests BLOCK - AWS WAF blocks requests COUNT - AWS WAF increments a counter of the requests that match all of the conditions in the rule. AWS WAF then continues to inspect the web request based on the remaining rules in the web ACL. You can't specify COUNT for the default action for a WebACL.
3187 */
3188 Type?: NonEmptyString;
3189 }
3190 export interface WafExcludedRule {
3191 /**
3192 * The unique identifier for the rule to exclude from the rule group.
3193 */
3194 RuleId?: NonEmptyString;
3195 }
3196 export type WafExcludedRuleList = WafExcludedRule[];
3197 export interface WafOverrideAction {
3198 /**
3199 * COUNT overrides the action specified by the individual rule within a RuleGroup . If set to NONE, the rule's action takes place.
3200 */
3201 Type?: NonEmptyString;
3202 }
3203 export interface Workflow {
3204 /**
3205 * The status of the investigation into the finding. The allowed values are the following. NEW - The initial state of a finding, before it is reviewed. NOTIFIED - Indicates that you notified the resource owner about the security issue. Used when the initial reviewer is not the resource owner, and needs intervention from the resource owner. SUPPRESSED - The finding will not be reviewed again and will not be acted upon. RESOLVED - The finding was reviewed and remediated and is now considered resolved.
3206 */
3207 Status?: WorkflowStatus;
3208 }
3209 export type WorkflowState = "NEW"|"ASSIGNED"|"IN_PROGRESS"|"DEFERRED"|"RESOLVED"|string;
3210 export type WorkflowStatus = "NEW"|"NOTIFIED"|"RESOLVED"|"SUPPRESSED"|string;
3211 /**
3212 * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version.
3213 */
3214 export type apiVersion = "2018-10-26"|"latest"|string;
3215 export interface ClientApiVersions {
3216 /**
3217 * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version.
3218 */
3219 apiVersion?: apiVersion;
3220 }
3221 export type ClientConfiguration = ServiceConfigurationOptions & ClientApiVersions;
3222 /**
3223 * Contains interfaces for use with the SecurityHub client.
3224 */
3225 export import Types = SecurityHub;
3226}
3227export = SecurityHub;