MemberDetectorFeatureArgs

data class MemberDetectorFeatureArgs(val accountId: Output<String>? = null, val additionalConfigurations: Output<List<MemberDetectorFeatureAdditionalConfigurationArgs>>? = null, val detectorId: Output<String>? = null, val name: Output<String>? = null, val status: Output<String>? = null) : ConvertibleToJava<MemberDetectorFeatureArgs>

Provides a resource to manage a single Amazon GuardDuty detector feature for a member account.

NOTE: Deleting this resource does not disable the detector feature in the member account, the resource in simply removed from state instead.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.guardduty.Detector("example", {enable: true});
const runtimeMonitoring = new aws.guardduty.MemberDetectorFeature("runtime_monitoring", {
detectorId: example.id,
accountId: "123456789012",
name: "RUNTIME_MONITORING",
status: "ENABLED",
additionalConfigurations: [
{
name: "EKS_ADDON_MANAGEMENT",
status: "ENABLED",
},
{
name: "ECS_FARGATE_AGENT_MANAGEMENT",
status: "ENABLED",
},
],
});
import pulumi
import pulumi_aws as aws
example = aws.guardduty.Detector("example", enable=True)
runtime_monitoring = aws.guardduty.MemberDetectorFeature("runtime_monitoring",
detector_id=example.id,
account_id="123456789012",
name="RUNTIME_MONITORING",
status="ENABLED",
additional_configurations=[
{
"name": "EKS_ADDON_MANAGEMENT",
"status": "ENABLED",
},
{
"name": "ECS_FARGATE_AGENT_MANAGEMENT",
"status": "ENABLED",
},
])
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.GuardDuty.Detector("example", new()
{
Enable = true,
});
var runtimeMonitoring = new Aws.GuardDuty.MemberDetectorFeature("runtime_monitoring", new()
{
DetectorId = example.Id,
AccountId = "123456789012",
Name = "RUNTIME_MONITORING",
Status = "ENABLED",
AdditionalConfigurations = new[]
{
new Aws.GuardDuty.Inputs.MemberDetectorFeatureAdditionalConfigurationArgs
{
Name = "EKS_ADDON_MANAGEMENT",
Status = "ENABLED",
},
new Aws.GuardDuty.Inputs.MemberDetectorFeatureAdditionalConfigurationArgs
{
Name = "ECS_FARGATE_AGENT_MANAGEMENT",
Status = "ENABLED",
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/guardduty"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := guardduty.NewDetector(ctx, "example", &guardduty.DetectorArgs{
Enable: pulumi.Bool(true),
})
if err != nil {
return err
}
_, err = guardduty.NewMemberDetectorFeature(ctx, "runtime_monitoring", &guardduty.MemberDetectorFeatureArgs{
DetectorId: example.ID(),
AccountId: pulumi.String("123456789012"),
Name: pulumi.String("RUNTIME_MONITORING"),
Status: pulumi.String("ENABLED"),
AdditionalConfigurations: guardduty.MemberDetectorFeatureAdditionalConfigurationArray{
&guardduty.MemberDetectorFeatureAdditionalConfigurationArgs{
Name: pulumi.String("EKS_ADDON_MANAGEMENT"),
Status: pulumi.String("ENABLED"),
},
&guardduty.MemberDetectorFeatureAdditionalConfigurationArgs{
Name: pulumi.String("ECS_FARGATE_AGENT_MANAGEMENT"),
Status: pulumi.String("ENABLED"),
},
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.guardduty.Detector;
import com.pulumi.aws.guardduty.DetectorArgs;
import com.pulumi.aws.guardduty.MemberDetectorFeature;
import com.pulumi.aws.guardduty.MemberDetectorFeatureArgs;
import com.pulumi.aws.guardduty.inputs.MemberDetectorFeatureAdditionalConfigurationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new Detector("example", DetectorArgs.builder()
.enable(true)
.build());
var runtimeMonitoring = new MemberDetectorFeature("runtimeMonitoring", MemberDetectorFeatureArgs.builder()
.detectorId(example.id())
.accountId("123456789012")
.name("RUNTIME_MONITORING")
.status("ENABLED")
.additionalConfigurations(
MemberDetectorFeatureAdditionalConfigurationArgs.builder()
.name("EKS_ADDON_MANAGEMENT")
.status("ENABLED")
.build(),
MemberDetectorFeatureAdditionalConfigurationArgs.builder()
.name("ECS_FARGATE_AGENT_MANAGEMENT")
.status("ENABLED")
.build())
.build());
}
}
resources:
example:
type: aws:guardduty:Detector
properties:
enable: true
runtimeMonitoring:
type: aws:guardduty:MemberDetectorFeature
name: runtime_monitoring
properties:
detectorId: ${example.id}
accountId: '123456789012'
name: RUNTIME_MONITORING
status: ENABLED
additionalConfigurations:
- name: EKS_ADDON_MANAGEMENT
status: ENABLED
- name: ECS_FARGATE_AGENT_MANAGEMENT
status: ENABLED

Constructors

Link copied to clipboard
constructor(accountId: Output<String>? = null, additionalConfigurations: Output<List<MemberDetectorFeatureAdditionalConfigurationArgs>>? = null, detectorId: Output<String>? = null, name: Output<String>? = null, status: Output<String>? = null)

Properties

Link copied to clipboard
val accountId: Output<String>? = null

Member account ID to be updated.

Link copied to clipboard

Additional feature configuration block. See below.

Link copied to clipboard
val detectorId: Output<String>? = null

Amazon GuardDuty detector ID.

Link copied to clipboard
val name: Output<String>? = null

The name of the detector feature. Valid values: S3_DATA_EVENTS, EKS_AUDIT_LOGS, EBS_MALWARE_PROTECTION, RDS_LOGIN_EVENTS, EKS_RUNTIME_MONITORING,RUNTIME_MONITORING, LAMBDA_NETWORK_LOGS.

Link copied to clipboard
val status: Output<String>? = null

The status of the detector feature. Valid values: ENABLED, DISABLED.

Functions

Link copied to clipboard
open override fun toJava(): MemberDetectorFeatureArgs