aws logo
AWS Classic v5.41.0, May 15 23

aws.guardduty.Member

Explore with Pulumi AI

Provides a resource to manage a GuardDuty member. To accept invitations in member accounts, see the aws.guardduty.InviteAccepter resource.

Example Usage

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;

return await Deployment.RunAsync(() => 
{
    var primary = new Aws.GuardDuty.Detector("primary", new()
    {
        Enable = true,
    });

    var memberDetector = new Aws.GuardDuty.Detector("memberDetector", new()
    {
        Enable = true,
    }, new CustomResourceOptions
    {
        Provider = aws.Dev,
    });

    var memberMember = new Aws.GuardDuty.Member("memberMember", new()
    {
        AccountId = memberDetector.AccountId,
        DetectorId = primary.Id,
        Email = "required@example.com",
        Invite = true,
        InvitationMessage = "please accept guardduty invitation",
    });

});
package main

import (
	"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/guardduty"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		primary, err := guardduty.NewDetector(ctx, "primary", &guardduty.DetectorArgs{
			Enable: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		memberDetector, err := guardduty.NewDetector(ctx, "memberDetector", &guardduty.DetectorArgs{
			Enable: pulumi.Bool(true),
		}, pulumi.Provider(aws.Dev))
		if err != nil {
			return err
		}
		_, err = guardduty.NewMember(ctx, "memberMember", &guardduty.MemberArgs{
			AccountId:         memberDetector.AccountId,
			DetectorId:        primary.ID(),
			Email:             pulumi.String("required@example.com"),
			Invite:            pulumi.Bool(true),
			InvitationMessage: pulumi.String("please accept guardduty invitation"),
		})
		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.Member;
import com.pulumi.aws.guardduty.MemberArgs;
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 primary = new Detector("primary", DetectorArgs.builder()        
            .enable(true)
            .build());

        var memberDetector = new Detector("memberDetector", DetectorArgs.builder()        
            .enable(true)
            .build(), CustomResourceOptions.builder()
                .provider(aws.dev())
                .build());

        var memberMember = new Member("memberMember", MemberArgs.builder()        
            .accountId(memberDetector.accountId())
            .detectorId(primary.id())
            .email("required@example.com")
            .invite(true)
            .invitationMessage("please accept guardduty invitation")
            .build());

    }
}
import pulumi
import pulumi_aws as aws

primary = aws.guardduty.Detector("primary", enable=True)
member_detector = aws.guardduty.Detector("memberDetector", enable=True,
opts=pulumi.ResourceOptions(provider=aws["dev"]))
member_member = aws.guardduty.Member("memberMember",
    account_id=member_detector.account_id,
    detector_id=primary.id,
    email="required@example.com",
    invite=True,
    invitation_message="please accept guardduty invitation")
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const primary = new aws.guardduty.Detector("primary", {enable: true});
const memberDetector = new aws.guardduty.Detector("memberDetector", {enable: true}, {
    provider: aws.dev,
});
const memberMember = new aws.guardduty.Member("memberMember", {
    accountId: memberDetector.accountId,
    detectorId: primary.id,
    email: "required@example.com",
    invite: true,
    invitationMessage: "please accept guardduty invitation",
});
resources:
  primary:
    type: aws:guardduty:Detector
    properties:
      enable: true
  memberDetector:
    type: aws:guardduty:Detector
    properties:
      enable: true
    options:
      provider: ${aws.dev}
  memberMember:
    type: aws:guardduty:Member
    properties:
      accountId: ${memberDetector.accountId}
      detectorId: ${primary.id}
      email: required@example.com
      invite: true
      invitationMessage: please accept guardduty invitation

Create Member Resource

new Member(name: string, args: MemberArgs, opts?: CustomResourceOptions);
@overload
def Member(resource_name: str,
           opts: Optional[ResourceOptions] = None,
           account_id: Optional[str] = None,
           detector_id: Optional[str] = None,
           disable_email_notification: Optional[bool] = None,
           email: Optional[str] = None,
           invitation_message: Optional[str] = None,
           invite: Optional[bool] = None)
@overload
def Member(resource_name: str,
           args: MemberArgs,
           opts: Optional[ResourceOptions] = None)
func NewMember(ctx *Context, name string, args MemberArgs, opts ...ResourceOption) (*Member, error)
public Member(string name, MemberArgs args, CustomResourceOptions? opts = null)
public Member(String name, MemberArgs args)
public Member(String name, MemberArgs args, CustomResourceOptions options)
type: aws:guardduty:Member
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

name string
The unique name of the resource.
args MemberArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
args MemberArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args MemberArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args MemberArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name String
The unique name of the resource.
args MemberArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Member Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

The Member resource accepts the following input properties:

AccountId string

AWS account ID for member account.

DetectorId string

The detector ID of the GuardDuty account where you want to create member accounts.

Email string

Email address for member account.

DisableEmailNotification bool

Boolean whether an email notification is sent to the accounts. Defaults to false.

InvitationMessage string

Message for invitation.

Invite bool

Boolean whether to invite the account to GuardDuty as a member. Defaults to false. To detect if an invitation needs to be (re-)sent, the this provider state value is true based on a relationship_status of Disabled, Enabled, Invited, or EmailVerificationInProgress.

AccountId string

AWS account ID for member account.

DetectorId string

The detector ID of the GuardDuty account where you want to create member accounts.

Email string

Email address for member account.

DisableEmailNotification bool

Boolean whether an email notification is sent to the accounts. Defaults to false.

InvitationMessage string

Message for invitation.

Invite bool

Boolean whether to invite the account to GuardDuty as a member. Defaults to false. To detect if an invitation needs to be (re-)sent, the this provider state value is true based on a relationship_status of Disabled, Enabled, Invited, or EmailVerificationInProgress.

accountId String

AWS account ID for member account.

detectorId String

The detector ID of the GuardDuty account where you want to create member accounts.

email String

Email address for member account.

disableEmailNotification Boolean

Boolean whether an email notification is sent to the accounts. Defaults to false.

invitationMessage String

Message for invitation.

invite Boolean

Boolean whether to invite the account to GuardDuty as a member. Defaults to false. To detect if an invitation needs to be (re-)sent, the this provider state value is true based on a relationship_status of Disabled, Enabled, Invited, or EmailVerificationInProgress.

accountId string

AWS account ID for member account.

detectorId string

The detector ID of the GuardDuty account where you want to create member accounts.

email string

Email address for member account.

disableEmailNotification boolean

Boolean whether an email notification is sent to the accounts. Defaults to false.

invitationMessage string

Message for invitation.

invite boolean

Boolean whether to invite the account to GuardDuty as a member. Defaults to false. To detect if an invitation needs to be (re-)sent, the this provider state value is true based on a relationship_status of Disabled, Enabled, Invited, or EmailVerificationInProgress.

account_id str

AWS account ID for member account.

detector_id str

The detector ID of the GuardDuty account where you want to create member accounts.

email str

Email address for member account.

disable_email_notification bool

Boolean whether an email notification is sent to the accounts. Defaults to false.

invitation_message str

Message for invitation.

invite bool

Boolean whether to invite the account to GuardDuty as a member. Defaults to false. To detect if an invitation needs to be (re-)sent, the this provider state value is true based on a relationship_status of Disabled, Enabled, Invited, or EmailVerificationInProgress.

accountId String

AWS account ID for member account.

detectorId String

The detector ID of the GuardDuty account where you want to create member accounts.

email String

Email address for member account.

disableEmailNotification Boolean

Boolean whether an email notification is sent to the accounts. Defaults to false.

invitationMessage String

Message for invitation.

invite Boolean

Boolean whether to invite the account to GuardDuty as a member. Defaults to false. To detect if an invitation needs to be (re-)sent, the this provider state value is true based on a relationship_status of Disabled, Enabled, Invited, or EmailVerificationInProgress.

Outputs

All input properties are implicitly available as output properties. Additionally, the Member resource produces the following output properties:

Id string

The provider-assigned unique ID for this managed resource.

RelationshipStatus string

The status of the relationship between the member account and its primary account. More information can be found in Amazon GuardDuty API Reference.

Id string

The provider-assigned unique ID for this managed resource.

RelationshipStatus string

The status of the relationship between the member account and its primary account. More information can be found in Amazon GuardDuty API Reference.

id String

The provider-assigned unique ID for this managed resource.

relationshipStatus String

The status of the relationship between the member account and its primary account. More information can be found in Amazon GuardDuty API Reference.

id string

The provider-assigned unique ID for this managed resource.

relationshipStatus string

The status of the relationship between the member account and its primary account. More information can be found in Amazon GuardDuty API Reference.

id str

The provider-assigned unique ID for this managed resource.

relationship_status str

The status of the relationship between the member account and its primary account. More information can be found in Amazon GuardDuty API Reference.

id String

The provider-assigned unique ID for this managed resource.

relationshipStatus String

The status of the relationship between the member account and its primary account. More information can be found in Amazon GuardDuty API Reference.

Look up Existing Member Resource

Get an existing Member resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: MemberState, opts?: CustomResourceOptions): Member
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        account_id: Optional[str] = None,
        detector_id: Optional[str] = None,
        disable_email_notification: Optional[bool] = None,
        email: Optional[str] = None,
        invitation_message: Optional[str] = None,
        invite: Optional[bool] = None,
        relationship_status: Optional[str] = None) -> Member
func GetMember(ctx *Context, name string, id IDInput, state *MemberState, opts ...ResourceOption) (*Member, error)
public static Member Get(string name, Input<string> id, MemberState? state, CustomResourceOptions? opts = null)
public static Member get(String name, Output<String> id, MemberState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
AccountId string

AWS account ID for member account.

DetectorId string

The detector ID of the GuardDuty account where you want to create member accounts.

DisableEmailNotification bool

Boolean whether an email notification is sent to the accounts. Defaults to false.

Email string

Email address for member account.

InvitationMessage string

Message for invitation.

Invite bool

Boolean whether to invite the account to GuardDuty as a member. Defaults to false. To detect if an invitation needs to be (re-)sent, the this provider state value is true based on a relationship_status of Disabled, Enabled, Invited, or EmailVerificationInProgress.

RelationshipStatus string

The status of the relationship between the member account and its primary account. More information can be found in Amazon GuardDuty API Reference.

AccountId string

AWS account ID for member account.

DetectorId string

The detector ID of the GuardDuty account where you want to create member accounts.

DisableEmailNotification bool

Boolean whether an email notification is sent to the accounts. Defaults to false.

Email string

Email address for member account.

InvitationMessage string

Message for invitation.

Invite bool

Boolean whether to invite the account to GuardDuty as a member. Defaults to false. To detect if an invitation needs to be (re-)sent, the this provider state value is true based on a relationship_status of Disabled, Enabled, Invited, or EmailVerificationInProgress.

RelationshipStatus string

The status of the relationship between the member account and its primary account. More information can be found in Amazon GuardDuty API Reference.

accountId String

AWS account ID for member account.

detectorId String

The detector ID of the GuardDuty account where you want to create member accounts.

disableEmailNotification Boolean

Boolean whether an email notification is sent to the accounts. Defaults to false.

email String

Email address for member account.

invitationMessage String

Message for invitation.

invite Boolean

Boolean whether to invite the account to GuardDuty as a member. Defaults to false. To detect if an invitation needs to be (re-)sent, the this provider state value is true based on a relationship_status of Disabled, Enabled, Invited, or EmailVerificationInProgress.

relationshipStatus String

The status of the relationship between the member account and its primary account. More information can be found in Amazon GuardDuty API Reference.

accountId string

AWS account ID for member account.

detectorId string

The detector ID of the GuardDuty account where you want to create member accounts.

disableEmailNotification boolean

Boolean whether an email notification is sent to the accounts. Defaults to false.

email string

Email address for member account.

invitationMessage string

Message for invitation.

invite boolean

Boolean whether to invite the account to GuardDuty as a member. Defaults to false. To detect if an invitation needs to be (re-)sent, the this provider state value is true based on a relationship_status of Disabled, Enabled, Invited, or EmailVerificationInProgress.

relationshipStatus string

The status of the relationship between the member account and its primary account. More information can be found in Amazon GuardDuty API Reference.

account_id str

AWS account ID for member account.

detector_id str

The detector ID of the GuardDuty account where you want to create member accounts.

disable_email_notification bool

Boolean whether an email notification is sent to the accounts. Defaults to false.

email str

Email address for member account.

invitation_message str

Message for invitation.

invite bool

Boolean whether to invite the account to GuardDuty as a member. Defaults to false. To detect if an invitation needs to be (re-)sent, the this provider state value is true based on a relationship_status of Disabled, Enabled, Invited, or EmailVerificationInProgress.

relationship_status str

The status of the relationship between the member account and its primary account. More information can be found in Amazon GuardDuty API Reference.

accountId String

AWS account ID for member account.

detectorId String

The detector ID of the GuardDuty account where you want to create member accounts.

disableEmailNotification Boolean

Boolean whether an email notification is sent to the accounts. Defaults to false.

email String

Email address for member account.

invitationMessage String

Message for invitation.

invite Boolean

Boolean whether to invite the account to GuardDuty as a member. Defaults to false. To detect if an invitation needs to be (re-)sent, the this provider state value is true based on a relationship_status of Disabled, Enabled, Invited, or EmailVerificationInProgress.

relationshipStatus String

The status of the relationship between the member account and its primary account. More information can be found in Amazon GuardDuty API Reference.

Import

GuardDuty members can be imported using the primary GuardDuty detector ID and member AWS account ID, e.g.,

 $ pulumi import aws:guardduty/member:Member MyMember 00b00fd5aecc0ab60a708659477e9617:123456789012

Package Details

Repository
AWS Classic pulumi/pulumi-aws
License
Apache-2.0
Notes

This Pulumi package is based on the aws Terraform Provider.