Directory

Provides a Simple or Managed Microsoft directory in AWS Directory Service.

Example Usage

SimpleAD

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
    public MyStack()
    {
        var main = new Aws.Ec2.Vpc("main", new Aws.Ec2.VpcArgs
        {
            CidrBlock = "10.0.0.0/16",
        });
        var foo = new Aws.Ec2.Subnet("foo", new Aws.Ec2.SubnetArgs
        {
            VpcId = main.Id,
            AvailabilityZone = "us-west-2a",
            CidrBlock = "10.0.1.0/24",
        });
        var barSubnet = new Aws.Ec2.Subnet("barSubnet", new Aws.Ec2.SubnetArgs
        {
            VpcId = main.Id,
            AvailabilityZone = "us-west-2b",
            CidrBlock = "10.0.2.0/24",
        });
        var barDirectory = new Aws.DirectoryService.Directory("barDirectory", new Aws.DirectoryService.DirectoryArgs
        {
            Name = "corp.notexample.com",
            Password = "SuperSecretPassw0rd",
            Size = "Small",
            VpcSettings = new Aws.DirectoryService.Inputs.DirectoryVpcSettingsArgs
            {
                VpcId = main.Id,
                SubnetIds = 
                {
                    foo.Id,
                    barSubnet.Id,
                },
            },
            Tags = 
            {
                { "Project", "foo" },
            },
        });
    }

}
package main

import (
	"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/directoryservice"
	"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		main, err := ec2.NewVpc(ctx, "main", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.0.0.0/16"),
		})
		if err != nil {
			return err
		}
		foo, err := ec2.NewSubnet(ctx, "foo", &ec2.SubnetArgs{
			VpcId:            main.ID(),
			AvailabilityZone: pulumi.String("us-west-2a"),
			CidrBlock:        pulumi.String("10.0.1.0/24"),
		})
		if err != nil {
			return err
		}
		barSubnet, err := ec2.NewSubnet(ctx, "barSubnet", &ec2.SubnetArgs{
			VpcId:            main.ID(),
			AvailabilityZone: pulumi.String("us-west-2b"),
			CidrBlock:        pulumi.String("10.0.2.0/24"),
		})
		if err != nil {
			return err
		}
		_, err = directoryservice.NewDirectory(ctx, "barDirectory", &directoryservice.DirectoryArgs{
			Name:     pulumi.String("corp.notexample.com"),
			Password: pulumi.String("SuperSecretPassw0rd"),
			Size:     pulumi.String("Small"),
			VpcSettings: &directoryservice.DirectoryVpcSettingsArgs{
				VpcId: main.ID(),
				SubnetIds: pulumi.StringArray{
					foo.ID(),
					barSubnet.ID(),
				},
			},
			Tags: pulumi.StringMap{
				"Project": pulumi.String("foo"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
import pulumi
import pulumi_aws as aws

main = aws.ec2.Vpc("main", cidr_block="10.0.0.0/16")
foo = aws.ec2.Subnet("foo",
    vpc_id=main.id,
    availability_zone="us-west-2a",
    cidr_block="10.0.1.0/24")
bar_subnet = aws.ec2.Subnet("barSubnet",
    vpc_id=main.id,
    availability_zone="us-west-2b",
    cidr_block="10.0.2.0/24")
bar_directory = aws.directoryservice.Directory("barDirectory",
    name="corp.notexample.com",
    password="SuperSecretPassw0rd",
    size="Small",
    vpc_settings=aws.directoryservice.DirectoryVpcSettingsArgs(
        vpc_id=main.id,
        subnet_ids=[
            foo.id,
            bar_subnet.id,
        ],
    ),
    tags={
        "Project": "foo",
    })
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const main = new aws.ec2.Vpc("main", {cidrBlock: "10.0.0.0/16"});
const foo = new aws.ec2.Subnet("foo", {
    vpcId: main.id,
    availabilityZone: "us-west-2a",
    cidrBlock: "10.0.1.0/24",
});
const barSubnet = new aws.ec2.Subnet("barSubnet", {
    vpcId: main.id,
    availabilityZone: "us-west-2b",
    cidrBlock: "10.0.2.0/24",
});
const barDirectory = new aws.directoryservice.Directory("barDirectory", {
    name: "corp.notexample.com",
    password: "SuperSecretPassw0rd",
    size: "Small",
    vpcSettings: {
        vpcId: main.id,
        subnetIds: [
            foo.id,
            barSubnet.id,
        ],
    },
    tags: {
        Project: "foo",
    },
});

Microsoft Active Directory (MicrosoftAD)

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
    public MyStack()
    {
        var main = new Aws.Ec2.Vpc("main", new Aws.Ec2.VpcArgs
        {
            CidrBlock = "10.0.0.0/16",
        });
        var foo = new Aws.Ec2.Subnet("foo", new Aws.Ec2.SubnetArgs
        {
            VpcId = main.Id,
            AvailabilityZone = "us-west-2a",
            CidrBlock = "10.0.1.0/24",
        });
        var barSubnet = new Aws.Ec2.Subnet("barSubnet", new Aws.Ec2.SubnetArgs
        {
            VpcId = main.Id,
            AvailabilityZone = "us-west-2b",
            CidrBlock = "10.0.2.0/24",
        });
        var barDirectory = new Aws.DirectoryService.Directory("barDirectory", new Aws.DirectoryService.DirectoryArgs
        {
            Name = "corp.notexample.com",
            Password = "SuperSecretPassw0rd",
            Edition = "Standard",
            Type = "MicrosoftAD",
            VpcSettings = new Aws.DirectoryService.Inputs.DirectoryVpcSettingsArgs
            {
                VpcId = main.Id,
                SubnetIds = 
                {
                    foo.Id,
                    barSubnet.Id,
                },
            },
            Tags = 
            {
                { "Project", "foo" },
            },
        });
    }

}
package main

import (
	"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/directoryservice"
	"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		main, err := ec2.NewVpc(ctx, "main", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.0.0.0/16"),
		})
		if err != nil {
			return err
		}
		foo, err := ec2.NewSubnet(ctx, "foo", &ec2.SubnetArgs{
			VpcId:            main.ID(),
			AvailabilityZone: pulumi.String("us-west-2a"),
			CidrBlock:        pulumi.String("10.0.1.0/24"),
		})
		if err != nil {
			return err
		}
		barSubnet, err := ec2.NewSubnet(ctx, "barSubnet", &ec2.SubnetArgs{
			VpcId:            main.ID(),
			AvailabilityZone: pulumi.String("us-west-2b"),
			CidrBlock:        pulumi.String("10.0.2.0/24"),
		})
		if err != nil {
			return err
		}
		_, err = directoryservice.NewDirectory(ctx, "barDirectory", &directoryservice.DirectoryArgs{
			Name:     pulumi.String("corp.notexample.com"),
			Password: pulumi.String("SuperSecretPassw0rd"),
			Edition:  pulumi.String("Standard"),
			Type:     pulumi.String("MicrosoftAD"),
			VpcSettings: &directoryservice.DirectoryVpcSettingsArgs{
				VpcId: main.ID(),
				SubnetIds: pulumi.StringArray{
					foo.ID(),
					barSubnet.ID(),
				},
			},
			Tags: pulumi.StringMap{
				"Project": pulumi.String("foo"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
import pulumi
import pulumi_aws as aws

main = aws.ec2.Vpc("main", cidr_block="10.0.0.0/16")
foo = aws.ec2.Subnet("foo",
    vpc_id=main.id,
    availability_zone="us-west-2a",
    cidr_block="10.0.1.0/24")
bar_subnet = aws.ec2.Subnet("barSubnet",
    vpc_id=main.id,
    availability_zone="us-west-2b",
    cidr_block="10.0.2.0/24")
bar_directory = aws.directoryservice.Directory("barDirectory",
    name="corp.notexample.com",
    password="SuperSecretPassw0rd",
    edition="Standard",
    type="MicrosoftAD",
    vpc_settings=aws.directoryservice.DirectoryVpcSettingsArgs(
        vpc_id=main.id,
        subnet_ids=[
            foo.id,
            bar_subnet.id,
        ],
    ),
    tags={
        "Project": "foo",
    })
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const main = new aws.ec2.Vpc("main", {cidrBlock: "10.0.0.0/16"});
const foo = new aws.ec2.Subnet("foo", {
    vpcId: main.id,
    availabilityZone: "us-west-2a",
    cidrBlock: "10.0.1.0/24",
});
const barSubnet = new aws.ec2.Subnet("barSubnet", {
    vpcId: main.id,
    availabilityZone: "us-west-2b",
    cidrBlock: "10.0.2.0/24",
});
const barDirectory = new aws.directoryservice.Directory("barDirectory", {
    name: "corp.notexample.com",
    password: "SuperSecretPassw0rd",
    edition: "Standard",
    type: "MicrosoftAD",
    vpcSettings: {
        vpcId: main.id,
        subnetIds: [
            foo.id,
            barSubnet.id,
        ],
    },
    tags: {
        Project: "foo",
    },
});

Microsoft Active Directory Connector (ADConnector)

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
    public MyStack()
    {
        var main = new Aws.Ec2.Vpc("main", new Aws.Ec2.VpcArgs
        {
            CidrBlock = "10.0.0.0/16",
        });
        var foo = new Aws.Ec2.Subnet("foo", new Aws.Ec2.SubnetArgs
        {
            VpcId = main.Id,
            AvailabilityZone = "us-west-2a",
            CidrBlock = "10.0.1.0/24",
        });
        var bar = new Aws.Ec2.Subnet("bar", new Aws.Ec2.SubnetArgs
        {
            VpcId = main.Id,
            AvailabilityZone = "us-west-2b",
            CidrBlock = "10.0.2.0/24",
        });
        var connector = new Aws.DirectoryService.Directory("connector", new Aws.DirectoryService.DirectoryArgs
        {
            Name = "corp.notexample.com",
            Password = "SuperSecretPassw0rd",
            Size = "Small",
            Type = "ADConnector",
            ConnectSettings = new Aws.DirectoryService.Inputs.DirectoryConnectSettingsArgs
            {
                CustomerDnsIps = 
                {
                    "A.B.C.D",
                },
                CustomerUsername = "Admin",
                SubnetIds = 
                {
                    foo.Id,
                    bar.Id,
                },
                VpcId = main.Id,
            },
        });
    }

}
package main

import (
	"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/directoryservice"
	"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ec2"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		main, err := ec2.NewVpc(ctx, "main", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.0.0.0/16"),
		})
		if err != nil {
			return err
		}
		foo, err := ec2.NewSubnet(ctx, "foo", &ec2.SubnetArgs{
			VpcId:            main.ID(),
			AvailabilityZone: pulumi.String("us-west-2a"),
			CidrBlock:        pulumi.String("10.0.1.0/24"),
		})
		if err != nil {
			return err
		}
		bar, err := ec2.NewSubnet(ctx, "bar", &ec2.SubnetArgs{
			VpcId:            main.ID(),
			AvailabilityZone: pulumi.String("us-west-2b"),
			CidrBlock:        pulumi.String("10.0.2.0/24"),
		})
		if err != nil {
			return err
		}
		_, err = directoryservice.NewDirectory(ctx, "connector", &directoryservice.DirectoryArgs{
			Name:     pulumi.String("corp.notexample.com"),
			Password: pulumi.String("SuperSecretPassw0rd"),
			Size:     pulumi.String("Small"),
			Type:     pulumi.String("ADConnector"),
			ConnectSettings: &directoryservice.DirectoryConnectSettingsArgs{
				CustomerDnsIps: pulumi.StringArray{
					pulumi.String("A.B.C.D"),
				},
				CustomerUsername: pulumi.String("Admin"),
				SubnetIds: pulumi.StringArray{
					foo.ID(),
					bar.ID(),
				},
				VpcId: main.ID(),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
import pulumi
import pulumi_aws as aws

main = aws.ec2.Vpc("main", cidr_block="10.0.0.0/16")
foo = aws.ec2.Subnet("foo",
    vpc_id=main.id,
    availability_zone="us-west-2a",
    cidr_block="10.0.1.0/24")
bar = aws.ec2.Subnet("bar",
    vpc_id=main.id,
    availability_zone="us-west-2b",
    cidr_block="10.0.2.0/24")
connector = aws.directoryservice.Directory("connector",
    name="corp.notexample.com",
    password="SuperSecretPassw0rd",
    size="Small",
    type="ADConnector",
    connect_settings=aws.directoryservice.DirectoryConnectSettingsArgs(
        customer_dns_ips=["A.B.C.D"],
        customer_username="Admin",
        subnet_ids=[
            foo.id,
            bar.id,
        ],
        vpc_id=main.id,
    ))
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const main = new aws.ec2.Vpc("main", {cidrBlock: "10.0.0.0/16"});
const foo = new aws.ec2.Subnet("foo", {
    vpcId: main.id,
    availabilityZone: "us-west-2a",
    cidrBlock: "10.0.1.0/24",
});
const bar = new aws.ec2.Subnet("bar", {
    vpcId: main.id,
    availabilityZone: "us-west-2b",
    cidrBlock: "10.0.2.0/24",
});
const connector = new aws.directoryservice.Directory("connector", {
    name: "corp.notexample.com",
    password: "SuperSecretPassw0rd",
    size: "Small",
    type: "ADConnector",
    connectSettings: {
        customerDnsIps: ["A.B.C.D"],
        customerUsername: "Admin",
        subnetIds: [
            foo.id,
            bar.id,
        ],
        vpcId: main.id,
    },
});

Create a Directory Resource

new Directory(name: string, args: DirectoryArgs, opts?: CustomResourceOptions);
@overload
def Directory(resource_name: str,
              opts: Optional[ResourceOptions] = None,
              alias: Optional[str] = None,
              connect_settings: Optional[DirectoryConnectSettingsArgs] = None,
              description: Optional[str] = None,
              edition: Optional[str] = None,
              enable_sso: Optional[bool] = None,
              name: Optional[str] = None,
              password: Optional[str] = None,
              short_name: Optional[str] = None,
              size: Optional[str] = None,
              tags: Optional[Mapping[str, str]] = None,
              tags_all: Optional[Mapping[str, str]] = None,
              type: Optional[str] = None,
              vpc_settings: Optional[DirectoryVpcSettingsArgs] = None)
@overload
def Directory(resource_name: str,
              args: DirectoryArgs,
              opts: Optional[ResourceOptions] = None)
func NewDirectory(ctx *Context, name string, args DirectoryArgs, opts ...ResourceOption) (*Directory, error)
public Directory(string name, DirectoryArgs args, CustomResourceOptions? opts = null)
name string
The unique name of the resource.
args DirectoryArgs
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 DirectoryArgs
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 DirectoryArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args DirectoryArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.

Directory Resource Properties

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

Inputs

The Directory resource accepts the following input properties:

Name string
The fully qualified name for the directory, such as corp.example.com
Password string
The password for the directory administrator or connector user.
Alias string
The alias for the directory (must be unique amongst all aliases in AWS). Required for enable_sso.
ConnectSettings DirectoryConnectSettingsArgs
Connector related information about the directory. Fields documented below.
Description string
A textual description for the directory.
Edition string
The MicrosoftAD edition (Standard or Enterprise). Defaults to Enterprise (applies to MicrosoftAD type only).
EnableSso bool
Whether to enable single-sign on for the directory. Requires alias. Defaults to false.
ShortName string
The short name of the directory, such as CORP.
Size string
The size of the directory (Small or Large are accepted values).
Tags Dictionary<string, string>
A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
TagsAll Dictionary<string, string>
A map of tags assigned to the resource, including those inherited from the provider .
Type string
The directory type (SimpleAD, ADConnector or MicrosoftAD are accepted values). Defaults to SimpleAD.
VpcSettings DirectoryVpcSettingsArgs
VPC related information about the directory. Fields documented below.
Name string
The fully qualified name for the directory, such as corp.example.com
Password string
The password for the directory administrator or connector user.
Alias string
The alias for the directory (must be unique amongst all aliases in AWS). Required for enable_sso.
ConnectSettings DirectoryConnectSettings
Connector related information about the directory. Fields documented below.
Description string
A textual description for the directory.
Edition string
The MicrosoftAD edition (Standard or Enterprise). Defaults to Enterprise (applies to MicrosoftAD type only).
EnableSso bool
Whether to enable single-sign on for the directory. Requires alias. Defaults to false.
ShortName string
The short name of the directory, such as CORP.
Size string
The size of the directory (Small or Large are accepted values).
Tags map[string]string
A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
TagsAll map[string]string
A map of tags assigned to the resource, including those inherited from the provider .
Type string
The directory type (SimpleAD, ADConnector or MicrosoftAD are accepted values). Defaults to SimpleAD.
VpcSettings DirectoryVpcSettings
VPC related information about the directory. Fields documented below.
name string
The fully qualified name for the directory, such as corp.example.com
password string
The password for the directory administrator or connector user.
alias string
The alias for the directory (must be unique amongst all aliases in AWS). Required for enable_sso.
connectSettings DirectoryConnectSettingsArgs
Connector related information about the directory. Fields documented below.
description string
A textual description for the directory.
edition string
The MicrosoftAD edition (Standard or Enterprise). Defaults to Enterprise (applies to MicrosoftAD type only).
enableSso boolean
Whether to enable single-sign on for the directory. Requires alias. Defaults to false.
shortName string
The short name of the directory, such as CORP.
size string
The size of the directory (Small or Large are accepted values).
tags {[key: string]: string}
A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
tagsAll {[key: string]: string}
A map of tags assigned to the resource, including those inherited from the provider .
type string
The directory type (SimpleAD, ADConnector or MicrosoftAD are accepted values). Defaults to SimpleAD.
vpcSettings DirectoryVpcSettingsArgs
VPC related information about the directory. Fields documented below.
name str
The fully qualified name for the directory, such as corp.example.com
password str
The password for the directory administrator or connector user.
alias str
The alias for the directory (must be unique amongst all aliases in AWS). Required for enable_sso.
connect_settings DirectoryConnectSettingsArgs
Connector related information about the directory. Fields documented below.
description str
A textual description for the directory.
edition str
The MicrosoftAD edition (Standard or Enterprise). Defaults to Enterprise (applies to MicrosoftAD type only).
enable_sso bool
Whether to enable single-sign on for the directory. Requires alias. Defaults to false.
short_name str
The short name of the directory, such as CORP.
size str
The size of the directory (Small or Large are accepted values).
tags Mapping[str, str]
A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
tags_all Mapping[str, str]
A map of tags assigned to the resource, including those inherited from the provider .
type str
The directory type (SimpleAD, ADConnector or MicrosoftAD are accepted values). Defaults to SimpleAD.
vpc_settings DirectoryVpcSettingsArgs
VPC related information about the directory. Fields documented below.

Outputs

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

AccessUrl string
The access URL for the directory, such as http://alias.awsapps.com.
DnsIpAddresses List<string>
A list of IP addresses of the DNS servers for the directory or connector.
Id string
The provider-assigned unique ID for this managed resource.
SecurityGroupId string
The ID of the security group created by the directory.
AccessUrl string
The access URL for the directory, such as http://alias.awsapps.com.
DnsIpAddresses []string
A list of IP addresses of the DNS servers for the directory or connector.
Id string
The provider-assigned unique ID for this managed resource.
SecurityGroupId string
The ID of the security group created by the directory.
accessUrl string
The access URL for the directory, such as http://alias.awsapps.com.
dnsIpAddresses string[]
A list of IP addresses of the DNS servers for the directory or connector.
id string
The provider-assigned unique ID for this managed resource.
securityGroupId string
The ID of the security group created by the directory.
access_url str
The access URL for the directory, such as http://alias.awsapps.com.
dns_ip_addresses Sequence[str]
A list of IP addresses of the DNS servers for the directory or connector.
id str
The provider-assigned unique ID for this managed resource.
security_group_id str
The ID of the security group created by the directory.

Look up an Existing Directory Resource

Get an existing Directory 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?: DirectoryState, opts?: CustomResourceOptions): Directory
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        access_url: Optional[str] = None,
        alias: Optional[str] = None,
        connect_settings: Optional[DirectoryConnectSettingsArgs] = None,
        description: Optional[str] = None,
        dns_ip_addresses: Optional[Sequence[str]] = None,
        edition: Optional[str] = None,
        enable_sso: Optional[bool] = None,
        name: Optional[str] = None,
        password: Optional[str] = None,
        security_group_id: Optional[str] = None,
        short_name: Optional[str] = None,
        size: Optional[str] = None,
        tags: Optional[Mapping[str, str]] = None,
        tags_all: Optional[Mapping[str, str]] = None,
        type: Optional[str] = None,
        vpc_settings: Optional[DirectoryVpcSettingsArgs] = None) -> Directory
func GetDirectory(ctx *Context, name string, id IDInput, state *DirectoryState, opts ...ResourceOption) (*Directory, error)
public static Directory Get(string name, Input<string> id, DirectoryState? state, CustomResourceOptions? opts = null)
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.

The following state arguments are supported:

AccessUrl string
The access URL for the directory, such as http://alias.awsapps.com.
Alias string
The alias for the directory (must be unique amongst all aliases in AWS). Required for enable_sso.
ConnectSettings DirectoryConnectSettingsArgs
Connector related information about the directory. Fields documented below.
Description string
A textual description for the directory.
DnsIpAddresses List<string>
A list of IP addresses of the DNS servers for the directory or connector.
Edition string
The MicrosoftAD edition (Standard or Enterprise). Defaults to Enterprise (applies to MicrosoftAD type only).
EnableSso bool
Whether to enable single-sign on for the directory. Requires alias. Defaults to false.
Name string
The fully qualified name for the directory, such as corp.example.com
Password string
The password for the directory administrator or connector user.
SecurityGroupId string
The ID of the security group created by the directory.
ShortName string
The short name of the directory, such as CORP.
Size string
The size of the directory (Small or Large are accepted values).
Tags Dictionary<string, string>
A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
TagsAll Dictionary<string, string>
A map of tags assigned to the resource, including those inherited from the provider .
Type string
The directory type (SimpleAD, ADConnector or MicrosoftAD are accepted values). Defaults to SimpleAD.
VpcSettings DirectoryVpcSettingsArgs
VPC related information about the directory. Fields documented below.
AccessUrl string
The access URL for the directory, such as http://alias.awsapps.com.
Alias string
The alias for the directory (must be unique amongst all aliases in AWS). Required for enable_sso.
ConnectSettings DirectoryConnectSettings
Connector related information about the directory. Fields documented below.
Description string
A textual description for the directory.
DnsIpAddresses []string
A list of IP addresses of the DNS servers for the directory or connector.
Edition string
The MicrosoftAD edition (Standard or Enterprise). Defaults to Enterprise (applies to MicrosoftAD type only).
EnableSso bool
Whether to enable single-sign on for the directory. Requires alias. Defaults to false.
Name string
The fully qualified name for the directory, such as corp.example.com
Password string
The password for the directory administrator or connector user.
SecurityGroupId string
The ID of the security group created by the directory.
ShortName string
The short name of the directory, such as CORP.
Size string
The size of the directory (Small or Large are accepted values).
Tags map[string]string
A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
TagsAll map[string]string
A map of tags assigned to the resource, including those inherited from the provider .
Type string
The directory type (SimpleAD, ADConnector or MicrosoftAD are accepted values). Defaults to SimpleAD.
VpcSettings DirectoryVpcSettings
VPC related information about the directory. Fields documented below.
accessUrl string
The access URL for the directory, such as http://alias.awsapps.com.
alias string
The alias for the directory (must be unique amongst all aliases in AWS). Required for enable_sso.
connectSettings DirectoryConnectSettingsArgs
Connector related information about the directory. Fields documented below.
description string
A textual description for the directory.
dnsIpAddresses string[]
A list of IP addresses of the DNS servers for the directory or connector.
edition string
The MicrosoftAD edition (Standard or Enterprise). Defaults to Enterprise (applies to MicrosoftAD type only).
enableSso boolean
Whether to enable single-sign on for the directory. Requires alias. Defaults to false.
name string
The fully qualified name for the directory, such as corp.example.com
password string
The password for the directory administrator or connector user.
securityGroupId string
The ID of the security group created by the directory.
shortName string
The short name of the directory, such as CORP.
size string
The size of the directory (Small or Large are accepted values).
tags {[key: string]: string}
A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
tagsAll {[key: string]: string}
A map of tags assigned to the resource, including those inherited from the provider .
type string
The directory type (SimpleAD, ADConnector or MicrosoftAD are accepted values). Defaults to SimpleAD.
vpcSettings DirectoryVpcSettingsArgs
VPC related information about the directory. Fields documented below.
access_url str
The access URL for the directory, such as http://alias.awsapps.com.
alias str
The alias for the directory (must be unique amongst all aliases in AWS). Required for enable_sso.
connect_settings DirectoryConnectSettingsArgs
Connector related information about the directory. Fields documented below.
description str
A textual description for the directory.
dns_ip_addresses Sequence[str]
A list of IP addresses of the DNS servers for the directory or connector.
edition str
The MicrosoftAD edition (Standard or Enterprise). Defaults to Enterprise (applies to MicrosoftAD type only).
enable_sso bool
Whether to enable single-sign on for the directory. Requires alias. Defaults to false.
name str
The fully qualified name for the directory, such as corp.example.com
password str
The password for the directory administrator or connector user.
security_group_id str
The ID of the security group created by the directory.
short_name str
The short name of the directory, such as CORP.
size str
The size of the directory (Small or Large are accepted values).
tags Mapping[str, str]
A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
tags_all Mapping[str, str]
A map of tags assigned to the resource, including those inherited from the provider .
type str
The directory type (SimpleAD, ADConnector or MicrosoftAD are accepted values). Defaults to SimpleAD.
vpc_settings DirectoryVpcSettingsArgs
VPC related information about the directory. Fields documented below.

Supporting Types

DirectoryConnectSettings

CustomerDnsIps List<string>
The DNS IP addresses of the domain to connect to.
CustomerUsername string
The username corresponding to the password provided.
SubnetIds List<string>
The identifiers of the subnets for the directory servers (2 subnets in 2 different AZs).
VpcId string
The identifier of the VPC that the directory is in.
AvailabilityZones List<string>
ConnectIps List<string>
The IP addresses of the AD Connector servers.
CustomerDnsIps []string
The DNS IP addresses of the domain to connect to.
CustomerUsername string
The username corresponding to the password provided.
SubnetIds []string
The identifiers of the subnets for the directory servers (2 subnets in 2 different AZs).
VpcId string
The identifier of the VPC that the directory is in.
AvailabilityZones []string
ConnectIps []string
The IP addresses of the AD Connector servers.
customerDnsIps string[]
The DNS IP addresses of the domain to connect to.
customerUsername string
The username corresponding to the password provided.
subnetIds string[]
The identifiers of the subnets for the directory servers (2 subnets in 2 different AZs).
vpcId string
The identifier of the VPC that the directory is in.
availabilityZones string[]
connectIps string[]
The IP addresses of the AD Connector servers.
customer_dns_ips Sequence[str]
The DNS IP addresses of the domain to connect to.
customer_username str
The username corresponding to the password provided.
subnet_ids Sequence[str]
The identifiers of the subnets for the directory servers (2 subnets in 2 different AZs).
vpc_id str
The identifier of the VPC that the directory is in.
availability_zones Sequence[str]
connect_ips Sequence[str]
The IP addresses of the AD Connector servers.

DirectoryVpcSettings

SubnetIds List<string>
The identifiers of the subnets for the directory servers (2 subnets in 2 different AZs).
VpcId string
The identifier of the VPC that the directory is in.
AvailabilityZones List<string>
SubnetIds []string
The identifiers of the subnets for the directory servers (2 subnets in 2 different AZs).
VpcId string
The identifier of the VPC that the directory is in.
AvailabilityZones []string
subnetIds string[]
The identifiers of the subnets for the directory servers (2 subnets in 2 different AZs).
vpcId string
The identifier of the VPC that the directory is in.
availabilityZones string[]
subnet_ids Sequence[str]
The identifiers of the subnets for the directory servers (2 subnets in 2 different AZs).
vpc_id str
The identifier of the VPC that the directory is in.
availability_zones Sequence[str]

Import

DirectoryService directories can be imported using the directory id, e.g.

 $ pulumi import aws:directoryservice/directory:Directory sample d-926724cf57

Package Details

Repository
https://github.com/pulumi/pulumi-aws
License
Apache-2.0
Notes
This Pulumi package is based on the aws Terraform Provider.