1. Packages
  2. AWS Classic
  3. API Docs
  4. directoryservice
  5. Directory

Try AWS Native preview for resources not in the classic version.

AWS Classic v6.31.1 published on Thursday, Apr 18, 2024 by Pulumi

aws.directoryservice.Directory

Explore with Pulumi AI

aws logo

Try AWS Native preview for resources not in the classic version.

AWS Classic v6.31.1 published on Thursday, Apr 18, 2024 by Pulumi

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

    Example Usage

    SimpleAD

    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("bar", {
        vpcId: main.id,
        availabilityZone: "us-west-2b",
        cidrBlock: "10.0.2.0/24",
    });
    const bar = new aws.directoryservice.Directory("bar", {
        name: "corp.notexample.com",
        password: "SuperSecretPassw0rd",
        size: "Small",
        vpcSettings: {
            vpcId: main.id,
            subnetIds: [
                foo.id,
                barSubnet.id,
            ],
        },
        tags: {
            Project: "foo",
        },
    });
    
    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("bar",
        vpc_id=main.id,
        availability_zone="us-west-2b",
        cidr_block="10.0.2.0/24")
    bar = aws.directoryservice.Directory("bar",
        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",
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/directoryservice"
    	"github.com/pulumi/pulumi-aws/sdk/v6/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, "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, "bar", &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
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var main = new Aws.Ec2.Vpc("main", new()
        {
            CidrBlock = "10.0.0.0/16",
        });
    
        var foo = new Aws.Ec2.Subnet("foo", new()
        {
            VpcId = main.Id,
            AvailabilityZone = "us-west-2a",
            CidrBlock = "10.0.1.0/24",
        });
    
        var barSubnet = new Aws.Ec2.Subnet("bar", new()
        {
            VpcId = main.Id,
            AvailabilityZone = "us-west-2b",
            CidrBlock = "10.0.2.0/24",
        });
    
        var bar = new Aws.DirectoryService.Directory("bar", new()
        {
            Name = "corp.notexample.com",
            Password = "SuperSecretPassw0rd",
            Size = "Small",
            VpcSettings = new Aws.DirectoryService.Inputs.DirectoryVpcSettingsArgs
            {
                VpcId = main.Id,
                SubnetIds = new[]
                {
                    foo.Id,
                    barSubnet.Id,
                },
            },
            Tags = 
            {
                { "Project", "foo" },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.ec2.Vpc;
    import com.pulumi.aws.ec2.VpcArgs;
    import com.pulumi.aws.ec2.Subnet;
    import com.pulumi.aws.ec2.SubnetArgs;
    import com.pulumi.aws.directoryservice.Directory;
    import com.pulumi.aws.directoryservice.DirectoryArgs;
    import com.pulumi.aws.directoryservice.inputs.DirectoryVpcSettingsArgs;
    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 main = new Vpc("main", VpcArgs.builder()        
                .cidrBlock("10.0.0.0/16")
                .build());
    
            var foo = new Subnet("foo", SubnetArgs.builder()        
                .vpcId(main.id())
                .availabilityZone("us-west-2a")
                .cidrBlock("10.0.1.0/24")
                .build());
    
            var barSubnet = new Subnet("barSubnet", SubnetArgs.builder()        
                .vpcId(main.id())
                .availabilityZone("us-west-2b")
                .cidrBlock("10.0.2.0/24")
                .build());
    
            var bar = new Directory("bar", DirectoryArgs.builder()        
                .name("corp.notexample.com")
                .password("SuperSecretPassw0rd")
                .size("Small")
                .vpcSettings(DirectoryVpcSettingsArgs.builder()
                    .vpcId(main.id())
                    .subnetIds(                
                        foo.id(),
                        barSubnet.id())
                    .build())
                .tags(Map.of("Project", "foo"))
                .build());
    
        }
    }
    
    resources:
      bar:
        type: aws:directoryservice:Directory
        properties:
          name: corp.notexample.com
          password: SuperSecretPassw0rd
          size: Small
          vpcSettings:
            vpcId: ${main.id}
            subnetIds:
              - ${foo.id}
              - ${barSubnet.id}
          tags:
            Project: foo
      main:
        type: aws:ec2:Vpc
        properties:
          cidrBlock: 10.0.0.0/16
      foo:
        type: aws:ec2:Subnet
        properties:
          vpcId: ${main.id}
          availabilityZone: us-west-2a
          cidrBlock: 10.0.1.0/24
      barSubnet:
        type: aws:ec2:Subnet
        name: bar
        properties:
          vpcId: ${main.id}
          availabilityZone: us-west-2b
          cidrBlock: 10.0.2.0/24
    

    Microsoft Active Directory (MicrosoftAD)

    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("bar", {
        vpcId: main.id,
        availabilityZone: "us-west-2b",
        cidrBlock: "10.0.2.0/24",
    });
    const bar = new aws.directoryservice.Directory("bar", {
        name: "corp.notexample.com",
        password: "SuperSecretPassw0rd",
        edition: "Standard",
        type: "MicrosoftAD",
        vpcSettings: {
            vpcId: main.id,
            subnetIds: [
                foo.id,
                barSubnet.id,
            ],
        },
        tags: {
            Project: "foo",
        },
    });
    
    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("bar",
        vpc_id=main.id,
        availability_zone="us-west-2b",
        cidr_block="10.0.2.0/24")
    bar = aws.directoryservice.Directory("bar",
        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",
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/directoryservice"
    	"github.com/pulumi/pulumi-aws/sdk/v6/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, "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, "bar", &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
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var main = new Aws.Ec2.Vpc("main", new()
        {
            CidrBlock = "10.0.0.0/16",
        });
    
        var foo = new Aws.Ec2.Subnet("foo", new()
        {
            VpcId = main.Id,
            AvailabilityZone = "us-west-2a",
            CidrBlock = "10.0.1.0/24",
        });
    
        var barSubnet = new Aws.Ec2.Subnet("bar", new()
        {
            VpcId = main.Id,
            AvailabilityZone = "us-west-2b",
            CidrBlock = "10.0.2.0/24",
        });
    
        var bar = new Aws.DirectoryService.Directory("bar", new()
        {
            Name = "corp.notexample.com",
            Password = "SuperSecretPassw0rd",
            Edition = "Standard",
            Type = "MicrosoftAD",
            VpcSettings = new Aws.DirectoryService.Inputs.DirectoryVpcSettingsArgs
            {
                VpcId = main.Id,
                SubnetIds = new[]
                {
                    foo.Id,
                    barSubnet.Id,
                },
            },
            Tags = 
            {
                { "Project", "foo" },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.ec2.Vpc;
    import com.pulumi.aws.ec2.VpcArgs;
    import com.pulumi.aws.ec2.Subnet;
    import com.pulumi.aws.ec2.SubnetArgs;
    import com.pulumi.aws.directoryservice.Directory;
    import com.pulumi.aws.directoryservice.DirectoryArgs;
    import com.pulumi.aws.directoryservice.inputs.DirectoryVpcSettingsArgs;
    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 main = new Vpc("main", VpcArgs.builder()        
                .cidrBlock("10.0.0.0/16")
                .build());
    
            var foo = new Subnet("foo", SubnetArgs.builder()        
                .vpcId(main.id())
                .availabilityZone("us-west-2a")
                .cidrBlock("10.0.1.0/24")
                .build());
    
            var barSubnet = new Subnet("barSubnet", SubnetArgs.builder()        
                .vpcId(main.id())
                .availabilityZone("us-west-2b")
                .cidrBlock("10.0.2.0/24")
                .build());
    
            var bar = new Directory("bar", DirectoryArgs.builder()        
                .name("corp.notexample.com")
                .password("SuperSecretPassw0rd")
                .edition("Standard")
                .type("MicrosoftAD")
                .vpcSettings(DirectoryVpcSettingsArgs.builder()
                    .vpcId(main.id())
                    .subnetIds(                
                        foo.id(),
                        barSubnet.id())
                    .build())
                .tags(Map.of("Project", "foo"))
                .build());
    
        }
    }
    
    resources:
      bar:
        type: aws:directoryservice:Directory
        properties:
          name: corp.notexample.com
          password: SuperSecretPassw0rd
          edition: Standard
          type: MicrosoftAD
          vpcSettings:
            vpcId: ${main.id}
            subnetIds:
              - ${foo.id}
              - ${barSubnet.id}
          tags:
            Project: foo
      main:
        type: aws:ec2:Vpc
        properties:
          cidrBlock: 10.0.0.0/16
      foo:
        type: aws:ec2:Subnet
        properties:
          vpcId: ${main.id}
          availabilityZone: us-west-2a
          cidrBlock: 10.0.1.0/24
      barSubnet:
        type: aws:ec2:Subnet
        name: bar
        properties:
          vpcId: ${main.id}
          availabilityZone: us-west-2b
          cidrBlock: 10.0.2.0/24
    

    Microsoft Active Directory Connector (ADConnector)

    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,
        },
    });
    
    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,
        ))
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/directoryservice"
    	"github.com/pulumi/pulumi-aws/sdk/v6/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
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var main = new Aws.Ec2.Vpc("main", new()
        {
            CidrBlock = "10.0.0.0/16",
        });
    
        var foo = new Aws.Ec2.Subnet("foo", new()
        {
            VpcId = main.Id,
            AvailabilityZone = "us-west-2a",
            CidrBlock = "10.0.1.0/24",
        });
    
        var bar = new Aws.Ec2.Subnet("bar", new()
        {
            VpcId = main.Id,
            AvailabilityZone = "us-west-2b",
            CidrBlock = "10.0.2.0/24",
        });
    
        var connector = new Aws.DirectoryService.Directory("connector", new()
        {
            Name = "corp.notexample.com",
            Password = "SuperSecretPassw0rd",
            Size = "Small",
            Type = "ADConnector",
            ConnectSettings = new Aws.DirectoryService.Inputs.DirectoryConnectSettingsArgs
            {
                CustomerDnsIps = new[]
                {
                    "A.B.C.D",
                },
                CustomerUsername = "Admin",
                SubnetIds = new[]
                {
                    foo.Id,
                    bar.Id,
                },
                VpcId = main.Id,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.ec2.Vpc;
    import com.pulumi.aws.ec2.VpcArgs;
    import com.pulumi.aws.ec2.Subnet;
    import com.pulumi.aws.ec2.SubnetArgs;
    import com.pulumi.aws.directoryservice.Directory;
    import com.pulumi.aws.directoryservice.DirectoryArgs;
    import com.pulumi.aws.directoryservice.inputs.DirectoryConnectSettingsArgs;
    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 main = new Vpc("main", VpcArgs.builder()        
                .cidrBlock("10.0.0.0/16")
                .build());
    
            var foo = new Subnet("foo", SubnetArgs.builder()        
                .vpcId(main.id())
                .availabilityZone("us-west-2a")
                .cidrBlock("10.0.1.0/24")
                .build());
    
            var bar = new Subnet("bar", SubnetArgs.builder()        
                .vpcId(main.id())
                .availabilityZone("us-west-2b")
                .cidrBlock("10.0.2.0/24")
                .build());
    
            var connector = new Directory("connector", DirectoryArgs.builder()        
                .name("corp.notexample.com")
                .password("SuperSecretPassw0rd")
                .size("Small")
                .type("ADConnector")
                .connectSettings(DirectoryConnectSettingsArgs.builder()
                    .customerDnsIps("A.B.C.D")
                    .customerUsername("Admin")
                    .subnetIds(                
                        foo.id(),
                        bar.id())
                    .vpcId(main.id())
                    .build())
                .build());
    
        }
    }
    
    resources:
      connector:
        type: aws:directoryservice:Directory
        properties:
          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}
      main:
        type: aws:ec2:Vpc
        properties:
          cidrBlock: 10.0.0.0/16
      foo:
        type: aws:ec2:Subnet
        properties:
          vpcId: ${main.id}
          availabilityZone: us-west-2a
          cidrBlock: 10.0.1.0/24
      bar:
        type: aws:ec2:Subnet
        properties:
          vpcId: ${main.id}
          availabilityZone: us-west-2b
          cidrBlock: 10.0.2.0/24
    

    Create Directory Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new Directory(name: string, args: DirectoryArgs, opts?: CustomResourceOptions);
    @overload
    def Directory(resource_name: str,
                  args: DirectoryArgs,
                  opts: Optional[ResourceOptions] = None)
    
    @overload
    def Directory(resource_name: str,
                  opts: Optional[ResourceOptions] = None,
                  name: Optional[str] = None,
                  password: Optional[str] = None,
                  desired_number_of_domain_controllers: Optional[int] = None,
                  alias: Optional[str] = None,
                  edition: Optional[str] = None,
                  enable_sso: Optional[bool] = None,
                  description: Optional[str] = None,
                  connect_settings: Optional[DirectoryConnectSettingsArgs] = None,
                  short_name: Optional[str] = None,
                  size: Optional[str] = None,
                  tags: Optional[Mapping[str, str]] = None,
                  type: Optional[str] = None,
                  vpc_settings: Optional[DirectoryVpcSettingsArgs] = None)
    func NewDirectory(ctx *Context, name string, args DirectoryArgs, opts ...ResourceOption) (*Directory, error)
    public Directory(string name, DirectoryArgs args, CustomResourceOptions? opts = null)
    public Directory(String name, DirectoryArgs args)
    public Directory(String name, DirectoryArgs args, CustomResourceOptions options)
    
    type: aws:directoryservice:Directory
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    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.
    name String
    The unique name of the resource.
    args DirectoryArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Example

    The following reference example uses placeholder values for all input properties.

    var directoryResource = new Aws.DirectoryService.Directory("directoryResource", new()
    {
        Name = "string",
        Password = "string",
        DesiredNumberOfDomainControllers = 0,
        Alias = "string",
        Edition = "string",
        EnableSso = false,
        Description = "string",
        ConnectSettings = new Aws.DirectoryService.Inputs.DirectoryConnectSettingsArgs
        {
            CustomerDnsIps = new[]
            {
                "string",
            },
            CustomerUsername = "string",
            SubnetIds = new[]
            {
                "string",
            },
            VpcId = "string",
            AvailabilityZones = new[]
            {
                "string",
            },
            ConnectIps = new[]
            {
                "string",
            },
        },
        ShortName = "string",
        Size = "string",
        Tags = 
        {
            { "string", "string" },
        },
        Type = "string",
        VpcSettings = new Aws.DirectoryService.Inputs.DirectoryVpcSettingsArgs
        {
            SubnetIds = new[]
            {
                "string",
            },
            VpcId = "string",
            AvailabilityZones = new[]
            {
                "string",
            },
        },
    });
    
    example, err := directoryservice.NewDirectory(ctx, "directoryResource", &directoryservice.DirectoryArgs{
    	Name:                             pulumi.String("string"),
    	Password:                         pulumi.String("string"),
    	DesiredNumberOfDomainControllers: pulumi.Int(0),
    	Alias:                            pulumi.String("string"),
    	Edition:                          pulumi.String("string"),
    	EnableSso:                        pulumi.Bool(false),
    	Description:                      pulumi.String("string"),
    	ConnectSettings: &directoryservice.DirectoryConnectSettingsArgs{
    		CustomerDnsIps: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		CustomerUsername: pulumi.String("string"),
    		SubnetIds: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		VpcId: pulumi.String("string"),
    		AvailabilityZones: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		ConnectIps: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    	},
    	ShortName: pulumi.String("string"),
    	Size:      pulumi.String("string"),
    	Tags: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	Type: pulumi.String("string"),
    	VpcSettings: &directoryservice.DirectoryVpcSettingsArgs{
    		SubnetIds: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		VpcId: pulumi.String("string"),
    		AvailabilityZones: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    	},
    })
    
    var directoryResource = new Directory("directoryResource", DirectoryArgs.builder()        
        .name("string")
        .password("string")
        .desiredNumberOfDomainControllers(0)
        .alias("string")
        .edition("string")
        .enableSso(false)
        .description("string")
        .connectSettings(DirectoryConnectSettingsArgs.builder()
            .customerDnsIps("string")
            .customerUsername("string")
            .subnetIds("string")
            .vpcId("string")
            .availabilityZones("string")
            .connectIps("string")
            .build())
        .shortName("string")
        .size("string")
        .tags(Map.of("string", "string"))
        .type("string")
        .vpcSettings(DirectoryVpcSettingsArgs.builder()
            .subnetIds("string")
            .vpcId("string")
            .availabilityZones("string")
            .build())
        .build());
    
    directory_resource = aws.directoryservice.Directory("directoryResource",
        name="string",
        password="string",
        desired_number_of_domain_controllers=0,
        alias="string",
        edition="string",
        enable_sso=False,
        description="string",
        connect_settings=aws.directoryservice.DirectoryConnectSettingsArgs(
            customer_dns_ips=["string"],
            customer_username="string",
            subnet_ids=["string"],
            vpc_id="string",
            availability_zones=["string"],
            connect_ips=["string"],
        ),
        short_name="string",
        size="string",
        tags={
            "string": "string",
        },
        type="string",
        vpc_settings=aws.directoryservice.DirectoryVpcSettingsArgs(
            subnet_ids=["string"],
            vpc_id="string",
            availability_zones=["string"],
        ))
    
    const directoryResource = new aws.directoryservice.Directory("directoryResource", {
        name: "string",
        password: "string",
        desiredNumberOfDomainControllers: 0,
        alias: "string",
        edition: "string",
        enableSso: false,
        description: "string",
        connectSettings: {
            customerDnsIps: ["string"],
            customerUsername: "string",
            subnetIds: ["string"],
            vpcId: "string",
            availabilityZones: ["string"],
            connectIps: ["string"],
        },
        shortName: "string",
        size: "string",
        tags: {
            string: "string",
        },
        type: "string",
        vpcSettings: {
            subnetIds: ["string"],
            vpcId: "string",
            availabilityZones: ["string"],
        },
    });
    
    type: aws:directoryservice:Directory
    properties:
        alias: string
        connectSettings:
            availabilityZones:
                - string
            connectIps:
                - string
            customerDnsIps:
                - string
            customerUsername: string
            subnetIds:
                - string
            vpcId: string
        description: string
        desiredNumberOfDomainControllers: 0
        edition: string
        enableSso: false
        name: string
        password: string
        shortName: string
        size: string
        tags:
            string: string
        type: string
        vpcSettings:
            availabilityZones:
                - string
            subnetIds:
                - string
            vpcId: string
    

    Directory 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 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 DirectoryConnectSettings
    Connector related information about the directory. Fields documented below.
    Description string
    A textual description for the directory.
    DesiredNumberOfDomainControllers int
    The number of domain controllers desired in the directory. Minimum value of 2. Scaling of domain controllers is only supported for MicrosoftAD directories.
    Edition string
    The MicrosoftAD edition (Standard or Enterprise). Defaults to Enterprise.
    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
    (For SimpleAD and ADConnector types) The size of the directory (Small or Large are accepted values). Large by default.
    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.
    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.
    DesiredNumberOfDomainControllers int
    The number of domain controllers desired in the directory. Minimum value of 2. Scaling of domain controllers is only supported for MicrosoftAD directories.
    Edition string
    The MicrosoftAD edition (Standard or Enterprise). Defaults to Enterprise.
    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
    (For SimpleAD and ADConnector types) The size of the directory (Small or Large are accepted values). Large by default.
    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.
    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.
    desiredNumberOfDomainControllers Integer
    The number of domain controllers desired in the directory. Minimum value of 2. Scaling of domain controllers is only supported for MicrosoftAD directories.
    edition String
    The MicrosoftAD edition (Standard or Enterprise). Defaults to Enterprise.
    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
    (For SimpleAD and ADConnector types) The size of the directory (Small or Large are accepted values). Large by default.
    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.
    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 DirectoryConnectSettings
    Connector related information about the directory. Fields documented below.
    description string
    A textual description for the directory.
    desiredNumberOfDomainControllers number
    The number of domain controllers desired in the directory. Minimum value of 2. Scaling of domain controllers is only supported for MicrosoftAD directories.
    edition string
    The MicrosoftAD edition (Standard or Enterprise). Defaults to Enterprise.
    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
    (For SimpleAD and ADConnector types) The size of the directory (Small or Large are accepted values). Large by default.
    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.
    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 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.
    desired_number_of_domain_controllers int
    The number of domain controllers desired in the directory. Minimum value of 2. Scaling of domain controllers is only supported for MicrosoftAD directories.
    edition str
    The MicrosoftAD edition (Standard or Enterprise). Defaults to Enterprise.
    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
    (For SimpleAD and ADConnector types) The size of the directory (Small or Large are accepted values). Large by default.
    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.
    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.
    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 Property Map
    Connector related information about the directory. Fields documented below.
    description String
    A textual description for the directory.
    desiredNumberOfDomainControllers Number
    The number of domain controllers desired in the directory. Minimum value of 2. Scaling of domain controllers is only supported for MicrosoftAD directories.
    edition String
    The MicrosoftAD edition (Standard or Enterprise). Defaults to Enterprise.
    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
    (For SimpleAD and ADConnector types) The size of the directory (Small or Large are accepted values). Large by default.
    tags Map<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.
    type String
    The directory type (SimpleAD, ADConnector or MicrosoftAD are accepted values). Defaults to SimpleAD.
    vpcSettings Property Map
    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.
    TagsAll Dictionary<string, string>
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    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.
    TagsAll map[string]string
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    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.
    tagsAll Map<String,String>
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    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.
    tagsAll {[key: string]: string}
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    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.
    tags_all Mapping[str, str]
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    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.
    tagsAll Map<String>
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    Look up 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,
            desired_number_of_domain_controllers: Optional[int] = 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)
    public static Directory get(String name, Output<String> id, DirectoryState 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:
    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.
    DesiredNumberOfDomainControllers int
    The number of domain controllers desired in the directory. Minimum value of 2. Scaling of domain controllers is only supported for MicrosoftAD directories.
    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.
    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
    (For SimpleAD and ADConnector types) The size of the directory (Small or Large are accepted values). Large by default.
    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 default_tags configuration block.

    Deprecated: Please use tags instead.

    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.
    DesiredNumberOfDomainControllers int
    The number of domain controllers desired in the directory. Minimum value of 2. Scaling of domain controllers is only supported for MicrosoftAD directories.
    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.
    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
    (For SimpleAD and ADConnector types) The size of the directory (Small or Large are accepted values). Large by default.
    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 default_tags configuration block.

    Deprecated: Please use tags instead.

    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.
    desiredNumberOfDomainControllers Integer
    The number of domain controllers desired in the directory. Minimum value of 2. Scaling of domain controllers is only supported for MicrosoftAD directories.
    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.
    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
    (For SimpleAD and ADConnector types) The size of the directory (Small or Large are accepted values). Large by default.
    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 default_tags configuration block.

    Deprecated: Please use tags instead.

    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 DirectoryConnectSettings
    Connector related information about the directory. Fields documented below.
    description string
    A textual description for the directory.
    desiredNumberOfDomainControllers number
    The number of domain controllers desired in the directory. Minimum value of 2. Scaling of domain controllers is only supported for MicrosoftAD directories.
    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.
    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
    (For SimpleAD and ADConnector types) The size of the directory (Small or Large are accepted values). Large by default.
    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 default_tags configuration block.

    Deprecated: Please use tags instead.

    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.
    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.
    desired_number_of_domain_controllers int
    The number of domain controllers desired in the directory. Minimum value of 2. Scaling of domain controllers is only supported for MicrosoftAD directories.
    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.
    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
    (For SimpleAD and ADConnector types) The size of the directory (Small or Large are accepted values). Large by default.
    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 default_tags configuration block.

    Deprecated: Please use tags instead.

    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.
    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 Property Map
    Connector related information about the directory. Fields documented below.
    description String
    A textual description for the directory.
    desiredNumberOfDomainControllers Number
    The number of domain controllers desired in the directory. Minimum value of 2. Scaling of domain controllers is only supported for MicrosoftAD directories.
    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.
    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
    (For SimpleAD and ADConnector types) The size of the directory (Small or Large are accepted values). Large by default.
    tags Map<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>
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    type String
    The directory type (SimpleAD, ADConnector or MicrosoftAD are accepted values). Defaults to SimpleAD.
    vpcSettings Property Map
    VPC related information about the directory. Fields documented below.

    Supporting Types

    DirectoryConnectSettings, DirectoryConnectSettingsArgs

    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 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.
    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.
    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.

    DirectoryVpcSettings, DirectoryVpcSettingsArgs

    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 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[]
    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]
    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>

    Import

    Using pulumi import, import DirectoryService directories using the directory id. For example:

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

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    AWS Classic pulumi/pulumi-aws
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the aws Terraform Provider.
    aws logo

    Try AWS Native preview for resources not in the classic version.

    AWS Classic v6.31.1 published on Thursday, Apr 18, 2024 by Pulumi