@aws-sdk/client-guardduty 3.48.0 → 3.52.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -334,6 +334,7 @@ export interface AwsApiCallAction {
334
334
  * <p>The error code of the failed Amazon Web Services API action.</p>
335
335
  */
336
336
  ErrorCode?: string;
337
+ UserAgent?: string;
337
338
  /**
338
339
  * <p>The remote IP information of the connection that initiated the Amazon Web Services API call.</p>
339
340
  */
@@ -368,6 +369,45 @@ export declare namespace DnsRequestAction {
368
369
  */
369
370
  const filterSensitiveLog: (obj: DnsRequestAction) => any;
370
371
  }
372
+ /**
373
+ * <p>Information about the Kubernetes API call action described in this finding.</p>
374
+ */
375
+ export interface KubernetesApiCallAction {
376
+ /**
377
+ * <p>The Kubernetes API request URI.</p>
378
+ */
379
+ RequestUri?: string;
380
+ /**
381
+ * <p>The Kubernetes API request HTTP verb.</p>
382
+ */
383
+ Verb?: string;
384
+ /**
385
+ * <p>The IP of the Kubernetes API caller and the IPs of any proxies or load balancers between the caller and the API endpoint.</p>
386
+ */
387
+ SourceIps?: string[];
388
+ /**
389
+ * <p>The user agent of the caller of the Kubernetes API.</p>
390
+ */
391
+ UserAgent?: string;
392
+ /**
393
+ * <p>Contains information about the remote IP address of the connection.</p>
394
+ */
395
+ RemoteIpDetails?: RemoteIpDetails;
396
+ /**
397
+ * <p>The resulting HTTP response code of the Kubernetes API call action.</p>
398
+ */
399
+ StatusCode?: number;
400
+ /**
401
+ * <p>Parameters related to the Kubernetes API call action.</p>
402
+ */
403
+ Parameters?: string;
404
+ }
405
+ export declare namespace KubernetesApiCallAction {
406
+ /**
407
+ * @internal
408
+ */
409
+ const filterSensitiveLog: (obj: KubernetesApiCallAction) => any;
410
+ }
371
411
  /**
372
412
  * <p>Contains information about the local IP address of the connection.</p>
373
413
  */
@@ -526,6 +566,10 @@ export interface Action {
526
566
  * <p>Information about the PORT_PROBE action described in this finding.</p>
527
567
  */
528
568
  PortProbeAction?: PortProbeAction;
569
+ /**
570
+ * <p>Information about the Kubernetes API call action described in this finding.</p>
571
+ */
572
+ KubernetesApiCallAction?: KubernetesApiCallAction;
529
573
  }
530
574
  export declare namespace Action {
531
575
  /**
@@ -731,6 +775,109 @@ export declare namespace Condition {
731
775
  */
732
776
  const filterSensitiveLog: (obj: Condition) => any;
733
777
  }
778
+ /**
779
+ * <p>Container security context.</p>
780
+ */
781
+ export interface SecurityContext {
782
+ /**
783
+ * <p>Whether the container is privileged.</p>
784
+ */
785
+ Privileged?: boolean;
786
+ }
787
+ export declare namespace SecurityContext {
788
+ /**
789
+ * @internal
790
+ */
791
+ const filterSensitiveLog: (obj: SecurityContext) => any;
792
+ }
793
+ /**
794
+ * <p>Container volume mount.</p>
795
+ */
796
+ export interface VolumeMount {
797
+ /**
798
+ * <p>Volume mount name.</p>
799
+ */
800
+ Name?: string;
801
+ /**
802
+ * <p>Volume mount path.</p>
803
+ */
804
+ MountPath?: string;
805
+ }
806
+ export declare namespace VolumeMount {
807
+ /**
808
+ * @internal
809
+ */
810
+ const filterSensitiveLog: (obj: VolumeMount) => any;
811
+ }
812
+ /**
813
+ * <p>Details of a container.</p>
814
+ */
815
+ export interface Container {
816
+ /**
817
+ * <p>The container runtime (such as, Docker or containerd) used to run the container.</p>
818
+ */
819
+ ContainerRuntime?: string;
820
+ /**
821
+ * <p>Container ID.</p>
822
+ */
823
+ Id?: string;
824
+ /**
825
+ * <p>Container name.</p>
826
+ */
827
+ Name?: string;
828
+ /**
829
+ * <p>Container image.</p>
830
+ */
831
+ Image?: string;
832
+ /**
833
+ * <p>Part of the image name before the last slash. For example, imagePrefix for public.ecr.aws/amazonlinux/amazonlinux:latest would be public.ecr.aws/amazonlinux. If the image name is relative and does not have a slash, this field is empty.</p>
834
+ */
835
+ ImagePrefix?: string;
836
+ /**
837
+ * <p>Container volume mounts.</p>
838
+ */
839
+ VolumeMounts?: VolumeMount[];
840
+ /**
841
+ * <p>Container security context.</p>
842
+ */
843
+ SecurityContext?: SecurityContext;
844
+ }
845
+ export declare namespace Container {
846
+ /**
847
+ * @internal
848
+ */
849
+ const filterSensitiveLog: (obj: Container) => any;
850
+ }
851
+ /**
852
+ * <p>Describes whether Kubernetes audit logs are enabled as a data source.</p>
853
+ */
854
+ export interface KubernetesAuditLogsConfiguration {
855
+ /**
856
+ * <p>The status of Kubernetes audit logs as a data source.</p>
857
+ */
858
+ Enable: boolean | undefined;
859
+ }
860
+ export declare namespace KubernetesAuditLogsConfiguration {
861
+ /**
862
+ * @internal
863
+ */
864
+ const filterSensitiveLog: (obj: KubernetesAuditLogsConfiguration) => any;
865
+ }
866
+ /**
867
+ * <p>Describes whether any Kubernetes data sources are enabled.</p>
868
+ */
869
+ export interface KubernetesConfiguration {
870
+ /**
871
+ * <p>The status of Kubernetes audit logs as a data source.</p>
872
+ */
873
+ AuditLogs: KubernetesAuditLogsConfiguration | undefined;
874
+ }
875
+ export declare namespace KubernetesConfiguration {
876
+ /**
877
+ * @internal
878
+ */
879
+ const filterSensitiveLog: (obj: KubernetesConfiguration) => any;
880
+ }
734
881
  /**
735
882
  * <p>Describes whether S3 data event logs will be enabled as a data source.</p>
736
883
  */
@@ -754,6 +901,10 @@ export interface DataSourceConfigurations {
754
901
  * <p>Describes whether S3 data event logs are enabled as a data source.</p>
755
902
  */
756
903
  S3Logs?: S3LogsConfiguration;
904
+ /**
905
+ * <p>Describes whether any Kubernetes logs are enabled as data sources.</p>
906
+ */
907
+ Kubernetes?: KubernetesConfiguration;
757
908
  }
758
909
  export declare namespace DataSourceConfigurations {
759
910
  /**
@@ -1326,6 +1477,7 @@ export declare enum DataSource {
1326
1477
  CLOUD_TRAIL = "CLOUD_TRAIL",
1327
1478
  DNS_LOGS = "DNS_LOGS",
1328
1479
  FLOW_LOGS = "FLOW_LOGS",
1480
+ KUBERNETES_AUDIT_LOGS = "KUBERNETES_AUDIT_LOGS",
1329
1481
  S3_LOGS = "S3_LOGS"
1330
1482
  }
1331
1483
  /**
@@ -1358,6 +1510,36 @@ export declare namespace FlowLogsConfigurationResult {
1358
1510
  */
1359
1511
  const filterSensitiveLog: (obj: FlowLogsConfigurationResult) => any;
1360
1512
  }
1513
+ /**
1514
+ * <p>Describes whether Kubernetes audit logs are enabled as a data source.</p>
1515
+ */
1516
+ export interface KubernetesAuditLogsConfigurationResult {
1517
+ /**
1518
+ * <p>A value that describes whether Kubernetes audit logs are enabled as a data source.</p>
1519
+ */
1520
+ Status: DataSourceStatus | string | undefined;
1521
+ }
1522
+ export declare namespace KubernetesAuditLogsConfigurationResult {
1523
+ /**
1524
+ * @internal
1525
+ */
1526
+ const filterSensitiveLog: (obj: KubernetesAuditLogsConfigurationResult) => any;
1527
+ }
1528
+ /**
1529
+ * <p>Describes whether any Kubernetes logs will be enabled as a data source.</p>
1530
+ */
1531
+ export interface KubernetesConfigurationResult {
1532
+ /**
1533
+ * <p>Describes whether Kubernetes audit logs are enabled as a data source.</p>
1534
+ */
1535
+ AuditLogs: KubernetesAuditLogsConfigurationResult | undefined;
1536
+ }
1537
+ export declare namespace KubernetesConfigurationResult {
1538
+ /**
1539
+ * @internal
1540
+ */
1541
+ const filterSensitiveLog: (obj: KubernetesConfigurationResult) => any;
1542
+ }
1361
1543
  /**
1362
1544
  * <p>Describes whether S3 data event logs will be enabled as a data source.</p>
1363
1545
  */
@@ -1396,6 +1578,10 @@ export interface DataSourceConfigurationsResult {
1396
1578
  * source.</p>
1397
1579
  */
1398
1580
  S3Logs: S3LogsConfigurationResult | undefined;
1581
+ /**
1582
+ * <p>An object that contains information on the status of all Kubernetes data sources.</p>
1583
+ */
1584
+ Kubernetes?: KubernetesConfigurationResult;
1399
1585
  }
1400
1586
  export declare namespace DataSourceConfigurationsResult {
1401
1587
  /**
@@ -1635,6 +1821,36 @@ export declare namespace DescribeOrganizationConfigurationRequest {
1635
1821
  */
1636
1822
  const filterSensitiveLog: (obj: DescribeOrganizationConfigurationRequest) => any;
1637
1823
  }
1824
+ /**
1825
+ * <p>The current configuration of Kubernetes audit logs as a data source for the organization.</p>
1826
+ */
1827
+ export interface OrganizationKubernetesAuditLogsConfigurationResult {
1828
+ /**
1829
+ * <p>Whether Kubernetes audit logs data source should be auto-enabled for new members joining the organization.</p>
1830
+ */
1831
+ AutoEnable: boolean | undefined;
1832
+ }
1833
+ export declare namespace OrganizationKubernetesAuditLogsConfigurationResult {
1834
+ /**
1835
+ * @internal
1836
+ */
1837
+ const filterSensitiveLog: (obj: OrganizationKubernetesAuditLogsConfigurationResult) => any;
1838
+ }
1839
+ /**
1840
+ * <p>The current configuration of all Kubernetes data sources for the organization.</p>
1841
+ */
1842
+ export interface OrganizationKubernetesConfigurationResult {
1843
+ /**
1844
+ * <p>The current configuration of Kubernetes audit logs as a data source for the organization.</p>
1845
+ */
1846
+ AuditLogs: OrganizationKubernetesAuditLogsConfigurationResult | undefined;
1847
+ }
1848
+ export declare namespace OrganizationKubernetesConfigurationResult {
1849
+ /**
1850
+ * @internal
1851
+ */
1852
+ const filterSensitiveLog: (obj: OrganizationKubernetesConfigurationResult) => any;
1853
+ }
1638
1854
  /**
1639
1855
  * <p>The current configuration of S3 data event logs as a data source for the
1640
1856
  * organization.</p>
@@ -1661,6 +1877,10 @@ export interface OrganizationDataSourceConfigurationsResult {
1661
1877
  * <p>Describes whether S3 data event logs are enabled as a data source.</p>
1662
1878
  */
1663
1879
  S3Logs: OrganizationS3LogsConfigurationResult | undefined;
1880
+ /**
1881
+ * <p>Describes the configuration of Kubernetes data sources.</p>
1882
+ */
1883
+ Kubernetes?: OrganizationKubernetesConfigurationResult;
1664
1884
  }
1665
1885
  export declare namespace OrganizationDataSourceConfigurationsResult {
1666
1886
  /**
@@ -1846,6 +2066,60 @@ export declare namespace DisassociateMembersResponse {
1846
2066
  */
1847
2067
  const filterSensitiveLog: (obj: DisassociateMembersResponse) => any;
1848
2068
  }
2069
+ /**
2070
+ * <p>Contains information about a tag associated with the EC2 instance.</p>
2071
+ */
2072
+ export interface Tag {
2073
+ /**
2074
+ * <p>The EC2 instance tag key.</p>
2075
+ */
2076
+ Key?: string;
2077
+ /**
2078
+ * <p>The EC2 instance tag value.</p>
2079
+ */
2080
+ Value?: string;
2081
+ }
2082
+ export declare namespace Tag {
2083
+ /**
2084
+ * @internal
2085
+ */
2086
+ const filterSensitiveLog: (obj: Tag) => any;
2087
+ }
2088
+ /**
2089
+ * <p>Details about the EKS cluster involved in a Kubernetes finding.</p>
2090
+ */
2091
+ export interface EksClusterDetails {
2092
+ /**
2093
+ * <p>EKS cluster name.</p>
2094
+ */
2095
+ Name?: string;
2096
+ /**
2097
+ * <p>EKS cluster ARN.</p>
2098
+ */
2099
+ Arn?: string;
2100
+ /**
2101
+ * <p>The VPC ID to which the EKS cluster is attached.</p>
2102
+ */
2103
+ VpcId?: string;
2104
+ /**
2105
+ * <p>The EKS cluster status.</p>
2106
+ */
2107
+ Status?: string;
2108
+ /**
2109
+ * <p>The EKS cluster tags.</p>
2110
+ */
2111
+ Tags?: Tag[];
2112
+ /**
2113
+ * <p>The timestamp when the EKS cluster was created.</p>
2114
+ */
2115
+ CreatedAt?: Date;
2116
+ }
2117
+ export declare namespace EksClusterDetails {
2118
+ /**
2119
+ * @internal
2120
+ */
2121
+ const filterSensitiveLog: (obj: EksClusterDetails) => any;
2122
+ }
1849
2123
  export interface EnableOrganizationAdminAccountRequest {
1850
2124
  /**
1851
2125
  * <p>The Amazon Web Services Account ID for the organization account to be enabled as a GuardDuty delegated
@@ -2034,25 +2308,6 @@ export declare namespace ProductCode {
2034
2308
  */
2035
2309
  const filterSensitiveLog: (obj: ProductCode) => any;
2036
2310
  }
2037
- /**
2038
- * <p>Contains information about a tag associated with the EC2 instance.</p>
2039
- */
2040
- export interface Tag {
2041
- /**
2042
- * <p>The EC2 instance tag key.</p>
2043
- */
2044
- Key?: string;
2045
- /**
2046
- * <p>The EC2 instance tag value.</p>
2047
- */
2048
- Value?: string;
2049
- }
2050
- export declare namespace Tag {
2051
- /**
2052
- * @internal
2053
- */
2054
- const filterSensitiveLog: (obj: Tag) => any;
2055
- }
2056
2311
  /**
2057
2312
  * <p>Contains information about the details of an instance.</p>
2058
2313
  */
@@ -2117,6 +2372,121 @@ export declare namespace InstanceDetails {
2117
2372
  */
2118
2373
  const filterSensitiveLog: (obj: InstanceDetails) => any;
2119
2374
  }
2375
+ /**
2376
+ * <p>Details about the Kubernetes user involved in a Kubernetes finding.</p>
2377
+ */
2378
+ export interface KubernetesUserDetails {
2379
+ /**
2380
+ * <p>The username of the user who called the Kubernetes API.</p>
2381
+ */
2382
+ Username?: string;
2383
+ /**
2384
+ * <p>The user ID of the user who called the Kubernetes API.</p>
2385
+ */
2386
+ Uid?: string;
2387
+ /**
2388
+ * <p>The groups that include the user who called the Kubernetes API.</p>
2389
+ */
2390
+ Groups?: string[];
2391
+ }
2392
+ export declare namespace KubernetesUserDetails {
2393
+ /**
2394
+ * @internal
2395
+ */
2396
+ const filterSensitiveLog: (obj: KubernetesUserDetails) => any;
2397
+ }
2398
+ /**
2399
+ * <p>Represents a pre-existing file or directory on the host machine that the volume maps to.</p>
2400
+ */
2401
+ export interface HostPath {
2402
+ /**
2403
+ * <p>Path of the file or directory on the host that the volume maps to.</p>
2404
+ */
2405
+ Path?: string;
2406
+ }
2407
+ export declare namespace HostPath {
2408
+ /**
2409
+ * @internal
2410
+ */
2411
+ const filterSensitiveLog: (obj: HostPath) => any;
2412
+ }
2413
+ /**
2414
+ * <p>Volume used by the Kubernetes workload.</p>
2415
+ */
2416
+ export interface Volume {
2417
+ /**
2418
+ * <p>Volume name.</p>
2419
+ */
2420
+ Name?: string;
2421
+ /**
2422
+ * <p>Represents a pre-existing file or directory on the host machine that the volume maps to.</p>
2423
+ */
2424
+ HostPath?: HostPath;
2425
+ }
2426
+ export declare namespace Volume {
2427
+ /**
2428
+ * @internal
2429
+ */
2430
+ const filterSensitiveLog: (obj: Volume) => any;
2431
+ }
2432
+ /**
2433
+ * <p>Details about the Kubernetes workload involved in a Kubernetes finding.</p>
2434
+ */
2435
+ export interface KubernetesWorkloadDetails {
2436
+ /**
2437
+ * <p>Kubernetes workload name.</p>
2438
+ */
2439
+ Name?: string;
2440
+ /**
2441
+ * <p>Kubernetes workload type (e.g. Pod, Deployment, etc.).</p>
2442
+ */
2443
+ Type?: string;
2444
+ /**
2445
+ * <p>Kubernetes workload ID.</p>
2446
+ */
2447
+ Uid?: string;
2448
+ /**
2449
+ * <p>Kubernetes namespace that the workload is part of.</p>
2450
+ */
2451
+ Namespace?: string;
2452
+ /**
2453
+ * <p>Whether the hostNetwork flag is enabled for the pods included in the workload.</p>
2454
+ */
2455
+ HostNetwork?: boolean;
2456
+ /**
2457
+ * <p>Containers running as part of the Kubernetes workload.</p>
2458
+ */
2459
+ Containers?: Container[];
2460
+ /**
2461
+ * <p>Volumes used by the Kubernetes workload.</p>
2462
+ */
2463
+ Volumes?: Volume[];
2464
+ }
2465
+ export declare namespace KubernetesWorkloadDetails {
2466
+ /**
2467
+ * @internal
2468
+ */
2469
+ const filterSensitiveLog: (obj: KubernetesWorkloadDetails) => any;
2470
+ }
2471
+ /**
2472
+ * <p>Details about Kubernetes resources such as a Kubernetes user or workload resource involved in a Kubernetes finding.</p>
2473
+ */
2474
+ export interface KubernetesDetails {
2475
+ /**
2476
+ * <p>Details about the Kubernetes user involved in a Kubernetes finding.</p>
2477
+ */
2478
+ KubernetesUserDetails?: KubernetesUserDetails;
2479
+ /**
2480
+ * <p>Details about the Kubernetes workload involved in a Kubernetes finding.</p>
2481
+ */
2482
+ KubernetesWorkloadDetails?: KubernetesWorkloadDetails;
2483
+ }
2484
+ export declare namespace KubernetesDetails {
2485
+ /**
2486
+ * @internal
2487
+ */
2488
+ const filterSensitiveLog: (obj: KubernetesDetails) => any;
2489
+ }
2120
2490
  /**
2121
2491
  * <p>Contains information on the owner of the bucket.</p>
2122
2492
  */
@@ -2236,6 +2606,14 @@ export interface Resource {
2236
2606
  * GuardDuty to generate a finding.</p>
2237
2607
  */
2238
2608
  InstanceDetails?: InstanceDetails;
2609
+ /**
2610
+ * <p>Details about the EKS cluster involved in a Kubernetes finding.</p>
2611
+ */
2612
+ EksClusterDetails?: EksClusterDetails;
2613
+ /**
2614
+ * <p>Details about the Kubernetes user and workload involved in a Kubernetes finding.</p>
2615
+ */
2616
+ KubernetesDetails?: KubernetesDetails;
2239
2617
  /**
2240
2618
  * <p>The type of Amazon Web Services resource.</p>
2241
2619
  */
@@ -4011,6 +4389,37 @@ export declare namespace UpdateMemberDetectorsResponse {
4011
4389
  */
4012
4390
  const filterSensitiveLog: (obj: UpdateMemberDetectorsResponse) => any;
4013
4391
  }
4392
+ /**
4393
+ * <p>Organization-wide Kubernetes audit logs configuration.</p>
4394
+ */
4395
+ export interface OrganizationKubernetesAuditLogsConfiguration {
4396
+ /**
4397
+ * <p>A value that contains information on whether Kubernetes audit logs should be enabled
4398
+ * automatically as a data source for the organization.</p>
4399
+ */
4400
+ AutoEnable: boolean | undefined;
4401
+ }
4402
+ export declare namespace OrganizationKubernetesAuditLogsConfiguration {
4403
+ /**
4404
+ * @internal
4405
+ */
4406
+ const filterSensitiveLog: (obj: OrganizationKubernetesAuditLogsConfiguration) => any;
4407
+ }
4408
+ /**
4409
+ * <p>Organization-wide Kubernetes data sources configurations.</p>
4410
+ */
4411
+ export interface OrganizationKubernetesConfiguration {
4412
+ /**
4413
+ * <p>Whether Kubernetes audit logs data source should be auto-enabled for new members joining the organization.</p>
4414
+ */
4415
+ AuditLogs: OrganizationKubernetesAuditLogsConfiguration | undefined;
4416
+ }
4417
+ export declare namespace OrganizationKubernetesConfiguration {
4418
+ /**
4419
+ * @internal
4420
+ */
4421
+ const filterSensitiveLog: (obj: OrganizationKubernetesConfiguration) => any;
4422
+ }
4014
4423
  /**
4015
4424
  * <p>Describes whether S3 data event logs will be automatically enabled for new members of the
4016
4425
  * organization.</p>
@@ -4038,6 +4447,10 @@ export interface OrganizationDataSourceConfigurations {
4038
4447
  * organization.</p>
4039
4448
  */
4040
4449
  S3Logs?: OrganizationS3LogsConfiguration;
4450
+ /**
4451
+ * <p>Describes the configuration of Kubernetes data sources for new members of the organization.</p>
4452
+ */
4453
+ Kubernetes?: OrganizationKubernetesConfiguration;
4041
4454
  }
4042
4455
  export declare namespace OrganizationDataSourceConfigurations {
4043
4456
  /**