SubscriberArgs

data class SubscriberArgs(val accessType: Output<String>? = null, val source: Output<SubscriberSourceArgs>? = null, val subscriberDescription: Output<String>? = null, val subscriberIdentity: Output<SubscriberSubscriberIdentityArgs>? = null, val subscriberName: Output<String>? = null, val tags: Output<Map<String, String>>? = null, val timeouts: Output<SubscriberTimeoutsArgs>? = null) : ConvertibleToJava<SubscriberArgs>

Resource for managing an AWS Security Lake Subscriber.

NOTE: The underlying aws.securitylake.DataLake must be configured before creating the aws.securitylake.Subscriber. Use a depends_on statement.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.securitylake.Subscriber("example", {
subscriberName: "example-name",
accessType: "S3",
source: {
awsLogSourceResource: {
sourceName: "ROUTE53",
sourceVersion: "1.0",
},
},
subscriberIdentity: {
externalId: "example",
principal: "1234567890",
},
}, {
dependsOn: [exampleAwsSecuritylakeDataLake],
});
import pulumi
import pulumi_aws as aws
example = aws.securitylake.Subscriber("example",
subscriber_name="example-name",
access_type="S3",
source={
"aws_log_source_resource": {
"source_name": "ROUTE53",
"source_version": "1.0",
},
},
subscriber_identity={
"external_id": "example",
"principal": "1234567890",
},
opts = pulumi.ResourceOptions(depends_on=[example_aws_securitylake_data_lake]))
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.SecurityLake.Subscriber("example", new()
{
SubscriberName = "example-name",
AccessType = "S3",
Source = new Aws.SecurityLake.Inputs.SubscriberSourceArgs
{
AwsLogSourceResource = new Aws.SecurityLake.Inputs.SubscriberSourceAwsLogSourceResourceArgs
{
SourceName = "ROUTE53",
SourceVersion = "1.0",
},
},
SubscriberIdentity = new Aws.SecurityLake.Inputs.SubscriberSubscriberIdentityArgs
{
ExternalId = "example",
Principal = "1234567890",
},
}, new CustomResourceOptions
{
DependsOn =
{
exampleAwsSecuritylakeDataLake,
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/securitylake"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := securitylake.NewSubscriber(ctx, "example", &securitylake.SubscriberArgs{
SubscriberName: pulumi.String("example-name"),
AccessType: pulumi.String("S3"),
Source: &securitylake.SubscriberSourceArgs{
AwsLogSourceResource: &securitylake.SubscriberSourceAwsLogSourceResourceArgs{
SourceName: pulumi.String("ROUTE53"),
SourceVersion: pulumi.String("1.0"),
},
},
SubscriberIdentity: &securitylake.SubscriberSubscriberIdentityArgs{
ExternalId: pulumi.String("example"),
Principal: pulumi.String("1234567890"),
},
}, pulumi.DependsOn([]pulumi.Resource{
exampleAwsSecuritylakeDataLake,
}))
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.securitylake.Subscriber;
import com.pulumi.aws.securitylake.SubscriberArgs;
import com.pulumi.aws.securitylake.inputs.SubscriberSourceArgs;
import com.pulumi.aws.securitylake.inputs.SubscriberSourceAwsLogSourceResourceArgs;
import com.pulumi.aws.securitylake.inputs.SubscriberSubscriberIdentityArgs;
import com.pulumi.resources.CustomResourceOptions;
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 Subscriber("example", SubscriberArgs.builder()
.subscriberName("example-name")
.accessType("S3")
.source(SubscriberSourceArgs.builder()
.awsLogSourceResource(SubscriberSourceAwsLogSourceResourceArgs.builder()
.sourceName("ROUTE53")
.sourceVersion("1.0")
.build())
.build())
.subscriberIdentity(SubscriberSubscriberIdentityArgs.builder()
.externalId("example")
.principal("1234567890")
.build())
.build(), CustomResourceOptions.builder()
.dependsOn(exampleAwsSecuritylakeDataLake)
.build());
}
}
resources:
example:
type: aws:securitylake:Subscriber
properties:
subscriberName: example-name
accessType: S3
source:
awsLogSourceResource:
sourceName: ROUTE53
sourceVersion: '1.0'
subscriberIdentity:
externalId: example
principal: '1234567890'
options:
dependsOn:
- ${exampleAwsSecuritylakeDataLake}

Import

Using pulumi import, import Security Lake subscriber using the subscriber ID. For example:

$ pulumi import aws:securitylake/subscriber:Subscriber example 9f3bfe79-d543-474d-a93c-f3846805d208

Constructors

Link copied to clipboard
constructor(accessType: Output<String>? = null, source: Output<SubscriberSourceArgs>? = null, subscriberDescription: Output<String>? = null, subscriberIdentity: Output<SubscriberSubscriberIdentityArgs>? = null, subscriberName: Output<String>? = null, tags: Output<Map<String, String>>? = null, timeouts: Output<SubscriberTimeoutsArgs>? = null)

Properties

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

The Amazon S3 or Lake Formation access type.

Link copied to clipboard
val source: Output<SubscriberSourceArgs>? = null

The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. See source Blocks below.

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

The description for your subscriber account in Security Lake.

Link copied to clipboard

The AWS identity used to access your data. See subscriber_identity Block below.

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

The name of your Security Lake subscriber account.

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

Link copied to clipboard
val timeouts: Output<SubscriberTimeoutsArgs>? = null

Functions

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