activedirectory

package
v6.67.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 4, 2023 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Domain

type Domain struct {
	pulumi.CustomResourceState

	// The name of delegated administrator account used to perform Active Directory operations.
	// If not specified, setupadmin will be used.
	Admin pulumi.StringPtrOutput `pulumi:"admin"`
	// The full names of the Google Compute Engine networks the domain instance is connected to. The domain is only available on networks listed in authorizedNetworks.
	// If CIDR subnets overlap between networks, domain creation will fail.
	AuthorizedNetworks pulumi.StringArrayOutput `pulumi:"authorizedNetworks"`
	// The fully qualified domain name. e.g. mydomain.myorganization.com, with the restrictions,
	// https://cloud.google.com/managed-microsoft-ad/reference/rest/v1/projects.locations.global.domains.
	//
	// ***
	DomainName pulumi.StringOutput `pulumi:"domainName"`
	// The fully-qualified domain name of the exposed domain used by clients to connect to the service.
	// Similar to what would be chosen for an Active Directory set up on an internal network.
	Fqdn pulumi.StringOutput `pulumi:"fqdn"`
	// Resource labels that can contain user-provided metadata
	Labels pulumi.StringMapOutput `pulumi:"labels"`
	// Locations where domain needs to be provisioned. [regions][compute/docs/regions-zones/]
	// e.g. us-west1 or us-east4 Service supports up to 4 locations at once. Each location will use a /26 block.
	Locations pulumi.StringArrayOutput `pulumi:"locations"`
	// The unique name of the domain using the format: `projects/{project}/locations/global/domains/{domainName}`.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The CIDR range of internal addresses that are reserved for this domain. Reserved networks must be /24 or larger.
	// Ranges must be unique and non-overlapping with existing subnets in authorizedNetworks
	ReservedIpRange pulumi.StringOutput `pulumi:"reservedIpRange"`
}

Creates a Microsoft AD domain

To get more information about Domain, see:

* [API documentation](https://cloud.google.com/managed-microsoft-ad/reference/rest/v1/projects.locations.global.domains) * How-to Guides

## Example Usage ### Active Directory Domain Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/activedirectory"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := activedirectory.NewDomain(ctx, "ad-domain", &activedirectory.DomainArgs{
			DomainName: pulumi.String("tfgen.org.com"),
			Locations: pulumi.StringArray{
				pulumi.String("us-central1"),
			},
			ReservedIpRange: pulumi.String("192.168.255.0/24"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Domain can be imported using any of these accepted formats:

```sh

$ pulumi import gcp:activedirectory/domain:Domain default {{name}}

```

func GetDomain

func GetDomain(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DomainState, opts ...pulumi.ResourceOption) (*Domain, error)

GetDomain gets an existing Domain resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDomain

func NewDomain(ctx *pulumi.Context,
	name string, args *DomainArgs, opts ...pulumi.ResourceOption) (*Domain, error)

NewDomain registers a new resource with the given unique name, arguments, and options.

func (*Domain) ElementType

func (*Domain) ElementType() reflect.Type

func (*Domain) ToDomainOutput

func (i *Domain) ToDomainOutput() DomainOutput

func (*Domain) ToDomainOutputWithContext

func (i *Domain) ToDomainOutputWithContext(ctx context.Context) DomainOutput

func (*Domain) ToOutput added in v6.65.1

func (i *Domain) ToOutput(ctx context.Context) pulumix.Output[*Domain]

type DomainArgs

type DomainArgs struct {
	// The name of delegated administrator account used to perform Active Directory operations.
	// If not specified, setupadmin will be used.
	Admin pulumi.StringPtrInput
	// The full names of the Google Compute Engine networks the domain instance is connected to. The domain is only available on networks listed in authorizedNetworks.
	// If CIDR subnets overlap between networks, domain creation will fail.
	AuthorizedNetworks pulumi.StringArrayInput
	// The fully qualified domain name. e.g. mydomain.myorganization.com, with the restrictions,
	// https://cloud.google.com/managed-microsoft-ad/reference/rest/v1/projects.locations.global.domains.
	//
	// ***
	DomainName pulumi.StringInput
	// Resource labels that can contain user-provided metadata
	Labels pulumi.StringMapInput
	// Locations where domain needs to be provisioned. [regions][compute/docs/regions-zones/]
	// e.g. us-west1 or us-east4 Service supports up to 4 locations at once. Each location will use a /26 block.
	Locations pulumi.StringArrayInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The CIDR range of internal addresses that are reserved for this domain. Reserved networks must be /24 or larger.
	// Ranges must be unique and non-overlapping with existing subnets in authorizedNetworks
	ReservedIpRange pulumi.StringInput
}

The set of arguments for constructing a Domain resource.

func (DomainArgs) ElementType

func (DomainArgs) ElementType() reflect.Type

type DomainArray

type DomainArray []DomainInput

func (DomainArray) ElementType

func (DomainArray) ElementType() reflect.Type

func (DomainArray) ToDomainArrayOutput

func (i DomainArray) ToDomainArrayOutput() DomainArrayOutput

func (DomainArray) ToDomainArrayOutputWithContext

func (i DomainArray) ToDomainArrayOutputWithContext(ctx context.Context) DomainArrayOutput

func (DomainArray) ToOutput added in v6.65.1

func (i DomainArray) ToOutput(ctx context.Context) pulumix.Output[[]*Domain]

type DomainArrayInput

type DomainArrayInput interface {
	pulumi.Input

	ToDomainArrayOutput() DomainArrayOutput
	ToDomainArrayOutputWithContext(context.Context) DomainArrayOutput
}

DomainArrayInput is an input type that accepts DomainArray and DomainArrayOutput values. You can construct a concrete instance of `DomainArrayInput` via:

DomainArray{ DomainArgs{...} }

type DomainArrayOutput

type DomainArrayOutput struct{ *pulumi.OutputState }

func (DomainArrayOutput) ElementType

func (DomainArrayOutput) ElementType() reflect.Type

func (DomainArrayOutput) Index

func (DomainArrayOutput) ToDomainArrayOutput

func (o DomainArrayOutput) ToDomainArrayOutput() DomainArrayOutput

func (DomainArrayOutput) ToDomainArrayOutputWithContext

func (o DomainArrayOutput) ToDomainArrayOutputWithContext(ctx context.Context) DomainArrayOutput

func (DomainArrayOutput) ToOutput added in v6.65.1

func (o DomainArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]*Domain]

type DomainInput

type DomainInput interface {
	pulumi.Input

	ToDomainOutput() DomainOutput
	ToDomainOutputWithContext(ctx context.Context) DomainOutput
}

type DomainMap

type DomainMap map[string]DomainInput

func (DomainMap) ElementType

func (DomainMap) ElementType() reflect.Type

func (DomainMap) ToDomainMapOutput

func (i DomainMap) ToDomainMapOutput() DomainMapOutput

func (DomainMap) ToDomainMapOutputWithContext

func (i DomainMap) ToDomainMapOutputWithContext(ctx context.Context) DomainMapOutput

func (DomainMap) ToOutput added in v6.65.1

func (i DomainMap) ToOutput(ctx context.Context) pulumix.Output[map[string]*Domain]

type DomainMapInput

type DomainMapInput interface {
	pulumi.Input

	ToDomainMapOutput() DomainMapOutput
	ToDomainMapOutputWithContext(context.Context) DomainMapOutput
}

DomainMapInput is an input type that accepts DomainMap and DomainMapOutput values. You can construct a concrete instance of `DomainMapInput` via:

DomainMap{ "key": DomainArgs{...} }

type DomainMapOutput

type DomainMapOutput struct{ *pulumi.OutputState }

func (DomainMapOutput) ElementType

func (DomainMapOutput) ElementType() reflect.Type

func (DomainMapOutput) MapIndex

func (DomainMapOutput) ToDomainMapOutput

func (o DomainMapOutput) ToDomainMapOutput() DomainMapOutput

func (DomainMapOutput) ToDomainMapOutputWithContext

func (o DomainMapOutput) ToDomainMapOutputWithContext(ctx context.Context) DomainMapOutput

func (DomainMapOutput) ToOutput added in v6.65.1

func (o DomainMapOutput) ToOutput(ctx context.Context) pulumix.Output[map[string]*Domain]

type DomainOutput

type DomainOutput struct{ *pulumi.OutputState }

func (DomainOutput) Admin added in v6.23.0

The name of delegated administrator account used to perform Active Directory operations. If not specified, setupadmin will be used.

func (DomainOutput) AuthorizedNetworks added in v6.23.0

func (o DomainOutput) AuthorizedNetworks() pulumi.StringArrayOutput

The full names of the Google Compute Engine networks the domain instance is connected to. The domain is only available on networks listed in authorizedNetworks. If CIDR subnets overlap between networks, domain creation will fail.

func (DomainOutput) DomainName added in v6.23.0

func (o DomainOutput) DomainName() pulumi.StringOutput

The fully qualified domain name. e.g. mydomain.myorganization.com, with the restrictions, https://cloud.google.com/managed-microsoft-ad/reference/rest/v1/projects.locations.global.domains.

***

func (DomainOutput) ElementType

func (DomainOutput) ElementType() reflect.Type

func (DomainOutput) Fqdn added in v6.23.0

func (o DomainOutput) Fqdn() pulumi.StringOutput

The fully-qualified domain name of the exposed domain used by clients to connect to the service. Similar to what would be chosen for an Active Directory set up on an internal network.

func (DomainOutput) Labels added in v6.23.0

func (o DomainOutput) Labels() pulumi.StringMapOutput

Resource labels that can contain user-provided metadata

func (DomainOutput) Locations added in v6.23.0

func (o DomainOutput) Locations() pulumi.StringArrayOutput

Locations where domain needs to be provisioned. [regions][compute/docs/regions-zones/] e.g. us-west1 or us-east4 Service supports up to 4 locations at once. Each location will use a /26 block.

func (DomainOutput) Name added in v6.23.0

func (o DomainOutput) Name() pulumi.StringOutput

The unique name of the domain using the format: `projects/{project}/locations/global/domains/{domainName}`.

func (DomainOutput) Project added in v6.23.0

func (o DomainOutput) Project() pulumi.StringOutput

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

func (DomainOutput) ReservedIpRange added in v6.23.0

func (o DomainOutput) ReservedIpRange() pulumi.StringOutput

The CIDR range of internal addresses that are reserved for this domain. Reserved networks must be /24 or larger. Ranges must be unique and non-overlapping with existing subnets in authorizedNetworks

func (DomainOutput) ToDomainOutput

func (o DomainOutput) ToDomainOutput() DomainOutput

func (DomainOutput) ToDomainOutputWithContext

func (o DomainOutput) ToDomainOutputWithContext(ctx context.Context) DomainOutput

func (DomainOutput) ToOutput added in v6.65.1

func (o DomainOutput) ToOutput(ctx context.Context) pulumix.Output[*Domain]

type DomainState

type DomainState struct {
	// The name of delegated administrator account used to perform Active Directory operations.
	// If not specified, setupadmin will be used.
	Admin pulumi.StringPtrInput
	// The full names of the Google Compute Engine networks the domain instance is connected to. The domain is only available on networks listed in authorizedNetworks.
	// If CIDR subnets overlap between networks, domain creation will fail.
	AuthorizedNetworks pulumi.StringArrayInput
	// The fully qualified domain name. e.g. mydomain.myorganization.com, with the restrictions,
	// https://cloud.google.com/managed-microsoft-ad/reference/rest/v1/projects.locations.global.domains.
	//
	// ***
	DomainName pulumi.StringPtrInput
	// The fully-qualified domain name of the exposed domain used by clients to connect to the service.
	// Similar to what would be chosen for an Active Directory set up on an internal network.
	Fqdn pulumi.StringPtrInput
	// Resource labels that can contain user-provided metadata
	Labels pulumi.StringMapInput
	// Locations where domain needs to be provisioned. [regions][compute/docs/regions-zones/]
	// e.g. us-west1 or us-east4 Service supports up to 4 locations at once. Each location will use a /26 block.
	Locations pulumi.StringArrayInput
	// The unique name of the domain using the format: `projects/{project}/locations/global/domains/{domainName}`.
	Name pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The CIDR range of internal addresses that are reserved for this domain. Reserved networks must be /24 or larger.
	// Ranges must be unique and non-overlapping with existing subnets in authorizedNetworks
	ReservedIpRange pulumi.StringPtrInput
}

func (DomainState) ElementType

func (DomainState) ElementType() reflect.Type

type DomainTrust

type DomainTrust struct {
	pulumi.CustomResourceState

	// The fully qualified domain name. e.g. mydomain.myorganization.com, with the restrictions,
	// https://cloud.google.com/managed-microsoft-ad/reference/rest/v1/projects.locations.global.domains.
	//
	// ***
	Domain pulumi.StringOutput `pulumi:"domain"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// Whether the trusted side has forest/domain wide access or selective access to an approved set of resources.
	SelectiveAuthentication pulumi.BoolPtrOutput `pulumi:"selectiveAuthentication"`
	// The target DNS server IP addresses which can resolve the remote domain involved in the trust.
	TargetDnsIpAddresses pulumi.StringArrayOutput `pulumi:"targetDnsIpAddresses"`
	// The fully qualified target domain name which will be in trust with the current domain.
	TargetDomainName pulumi.StringOutput `pulumi:"targetDomainName"`
	// The trust direction, which decides if the current domain is trusted, trusting, or both.
	// Possible values are: `INBOUND`, `OUTBOUND`, `BIDIRECTIONAL`.
	TrustDirection pulumi.StringOutput `pulumi:"trustDirection"`
	// The trust secret used for the handshake with the target domain. This will not be stored.
	// **Note**: This property is sensitive and will not be displayed in the plan.
	TrustHandshakeSecret pulumi.StringOutput `pulumi:"trustHandshakeSecret"`
	// The type of trust represented by the trust resource.
	// Possible values are: `FOREST`, `EXTERNAL`.
	TrustType pulumi.StringOutput `pulumi:"trustType"`
}

Adds a trust between Active Directory domains

To get more information about DomainTrust, see:

* [API documentation](https://cloud.google.com/managed-microsoft-ad/reference/rest/v1/projects.locations.global.domains/attachTrust) * How-to Guides

> **Warning:** All arguments including the following potentially sensitive values will be stored in the raw state as plain text: `trustHandshakeSecret`. Read more about sensitive data in state.

## Example Usage ### Active Directory Domain Trust Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/activedirectory"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := activedirectory.NewDomainTrust(ctx, "ad-domain-trust", &activedirectory.DomainTrustArgs{
			Domain: pulumi.String("test-managed-ad.com"),
			TargetDnsIpAddresses: pulumi.StringArray{
				pulumi.String("10.1.0.100"),
			},
			TargetDomainName:     pulumi.String("example-gcp.com"),
			TrustDirection:       pulumi.String("OUTBOUND"),
			TrustHandshakeSecret: pulumi.String("Testing1!"),
			TrustType:            pulumi.String("FOREST"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

DomainTrust can be imported using any of these accepted formats

```sh

$ pulumi import gcp:activedirectory/domainTrust:DomainTrust default projects/{{project}}/locations/global/domains/{{domain}}/{{target_domain_name}}

```

```sh

$ pulumi import gcp:activedirectory/domainTrust:DomainTrust default {{project}}/{{domain}}/{{target_domain_name}}

```

```sh

$ pulumi import gcp:activedirectory/domainTrust:DomainTrust default {{domain}}/{{target_domain_name}}

```

func GetDomainTrust

func GetDomainTrust(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DomainTrustState, opts ...pulumi.ResourceOption) (*DomainTrust, error)

GetDomainTrust gets an existing DomainTrust resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDomainTrust

func NewDomainTrust(ctx *pulumi.Context,
	name string, args *DomainTrustArgs, opts ...pulumi.ResourceOption) (*DomainTrust, error)

NewDomainTrust registers a new resource with the given unique name, arguments, and options.

func (*DomainTrust) ElementType

func (*DomainTrust) ElementType() reflect.Type

func (*DomainTrust) ToDomainTrustOutput

func (i *DomainTrust) ToDomainTrustOutput() DomainTrustOutput

func (*DomainTrust) ToDomainTrustOutputWithContext

func (i *DomainTrust) ToDomainTrustOutputWithContext(ctx context.Context) DomainTrustOutput

func (*DomainTrust) ToOutput added in v6.65.1

func (i *DomainTrust) ToOutput(ctx context.Context) pulumix.Output[*DomainTrust]

type DomainTrustArgs

type DomainTrustArgs struct {
	// The fully qualified domain name. e.g. mydomain.myorganization.com, with the restrictions,
	// https://cloud.google.com/managed-microsoft-ad/reference/rest/v1/projects.locations.global.domains.
	//
	// ***
	Domain pulumi.StringInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// Whether the trusted side has forest/domain wide access or selective access to an approved set of resources.
	SelectiveAuthentication pulumi.BoolPtrInput
	// The target DNS server IP addresses which can resolve the remote domain involved in the trust.
	TargetDnsIpAddresses pulumi.StringArrayInput
	// The fully qualified target domain name which will be in trust with the current domain.
	TargetDomainName pulumi.StringInput
	// The trust direction, which decides if the current domain is trusted, trusting, or both.
	// Possible values are: `INBOUND`, `OUTBOUND`, `BIDIRECTIONAL`.
	TrustDirection pulumi.StringInput
	// The trust secret used for the handshake with the target domain. This will not be stored.
	// **Note**: This property is sensitive and will not be displayed in the plan.
	TrustHandshakeSecret pulumi.StringInput
	// The type of trust represented by the trust resource.
	// Possible values are: `FOREST`, `EXTERNAL`.
	TrustType pulumi.StringInput
}

The set of arguments for constructing a DomainTrust resource.

func (DomainTrustArgs) ElementType

func (DomainTrustArgs) ElementType() reflect.Type

type DomainTrustArray

type DomainTrustArray []DomainTrustInput

func (DomainTrustArray) ElementType

func (DomainTrustArray) ElementType() reflect.Type

func (DomainTrustArray) ToDomainTrustArrayOutput

func (i DomainTrustArray) ToDomainTrustArrayOutput() DomainTrustArrayOutput

func (DomainTrustArray) ToDomainTrustArrayOutputWithContext

func (i DomainTrustArray) ToDomainTrustArrayOutputWithContext(ctx context.Context) DomainTrustArrayOutput

func (DomainTrustArray) ToOutput added in v6.65.1

type DomainTrustArrayInput

type DomainTrustArrayInput interface {
	pulumi.Input

	ToDomainTrustArrayOutput() DomainTrustArrayOutput
	ToDomainTrustArrayOutputWithContext(context.Context) DomainTrustArrayOutput
}

DomainTrustArrayInput is an input type that accepts DomainTrustArray and DomainTrustArrayOutput values. You can construct a concrete instance of `DomainTrustArrayInput` via:

DomainTrustArray{ DomainTrustArgs{...} }

type DomainTrustArrayOutput

type DomainTrustArrayOutput struct{ *pulumi.OutputState }

func (DomainTrustArrayOutput) ElementType

func (DomainTrustArrayOutput) ElementType() reflect.Type

func (DomainTrustArrayOutput) Index

func (DomainTrustArrayOutput) ToDomainTrustArrayOutput

func (o DomainTrustArrayOutput) ToDomainTrustArrayOutput() DomainTrustArrayOutput

func (DomainTrustArrayOutput) ToDomainTrustArrayOutputWithContext

func (o DomainTrustArrayOutput) ToDomainTrustArrayOutputWithContext(ctx context.Context) DomainTrustArrayOutput

func (DomainTrustArrayOutput) ToOutput added in v6.65.1

type DomainTrustInput

type DomainTrustInput interface {
	pulumi.Input

	ToDomainTrustOutput() DomainTrustOutput
	ToDomainTrustOutputWithContext(ctx context.Context) DomainTrustOutput
}

type DomainTrustMap

type DomainTrustMap map[string]DomainTrustInput

func (DomainTrustMap) ElementType

func (DomainTrustMap) ElementType() reflect.Type

func (DomainTrustMap) ToDomainTrustMapOutput

func (i DomainTrustMap) ToDomainTrustMapOutput() DomainTrustMapOutput

func (DomainTrustMap) ToDomainTrustMapOutputWithContext

func (i DomainTrustMap) ToDomainTrustMapOutputWithContext(ctx context.Context) DomainTrustMapOutput

func (DomainTrustMap) ToOutput added in v6.65.1

type DomainTrustMapInput

type DomainTrustMapInput interface {
	pulumi.Input

	ToDomainTrustMapOutput() DomainTrustMapOutput
	ToDomainTrustMapOutputWithContext(context.Context) DomainTrustMapOutput
}

DomainTrustMapInput is an input type that accepts DomainTrustMap and DomainTrustMapOutput values. You can construct a concrete instance of `DomainTrustMapInput` via:

DomainTrustMap{ "key": DomainTrustArgs{...} }

type DomainTrustMapOutput

type DomainTrustMapOutput struct{ *pulumi.OutputState }

func (DomainTrustMapOutput) ElementType

func (DomainTrustMapOutput) ElementType() reflect.Type

func (DomainTrustMapOutput) MapIndex

func (DomainTrustMapOutput) ToDomainTrustMapOutput

func (o DomainTrustMapOutput) ToDomainTrustMapOutput() DomainTrustMapOutput

func (DomainTrustMapOutput) ToDomainTrustMapOutputWithContext

func (o DomainTrustMapOutput) ToDomainTrustMapOutputWithContext(ctx context.Context) DomainTrustMapOutput

func (DomainTrustMapOutput) ToOutput added in v6.65.1

type DomainTrustOutput

type DomainTrustOutput struct{ *pulumi.OutputState }

func (DomainTrustOutput) Domain added in v6.23.0

The fully qualified domain name. e.g. mydomain.myorganization.com, with the restrictions, https://cloud.google.com/managed-microsoft-ad/reference/rest/v1/projects.locations.global.domains.

***

func (DomainTrustOutput) ElementType

func (DomainTrustOutput) ElementType() reflect.Type

func (DomainTrustOutput) Project added in v6.23.0

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

func (DomainTrustOutput) SelectiveAuthentication added in v6.23.0

func (o DomainTrustOutput) SelectiveAuthentication() pulumi.BoolPtrOutput

Whether the trusted side has forest/domain wide access or selective access to an approved set of resources.

func (DomainTrustOutput) TargetDnsIpAddresses added in v6.23.0

func (o DomainTrustOutput) TargetDnsIpAddresses() pulumi.StringArrayOutput

The target DNS server IP addresses which can resolve the remote domain involved in the trust.

func (DomainTrustOutput) TargetDomainName added in v6.23.0

func (o DomainTrustOutput) TargetDomainName() pulumi.StringOutput

The fully qualified target domain name which will be in trust with the current domain.

func (DomainTrustOutput) ToDomainTrustOutput

func (o DomainTrustOutput) ToDomainTrustOutput() DomainTrustOutput

func (DomainTrustOutput) ToDomainTrustOutputWithContext

func (o DomainTrustOutput) ToDomainTrustOutputWithContext(ctx context.Context) DomainTrustOutput

func (DomainTrustOutput) ToOutput added in v6.65.1

func (DomainTrustOutput) TrustDirection added in v6.23.0

func (o DomainTrustOutput) TrustDirection() pulumi.StringOutput

The trust direction, which decides if the current domain is trusted, trusting, or both. Possible values are: `INBOUND`, `OUTBOUND`, `BIDIRECTIONAL`.

func (DomainTrustOutput) TrustHandshakeSecret added in v6.23.0

func (o DomainTrustOutput) TrustHandshakeSecret() pulumi.StringOutput

The trust secret used for the handshake with the target domain. This will not be stored. **Note**: This property is sensitive and will not be displayed in the plan.

func (DomainTrustOutput) TrustType added in v6.23.0

func (o DomainTrustOutput) TrustType() pulumi.StringOutput

The type of trust represented by the trust resource. Possible values are: `FOREST`, `EXTERNAL`.

type DomainTrustState

type DomainTrustState struct {
	// The fully qualified domain name. e.g. mydomain.myorganization.com, with the restrictions,
	// https://cloud.google.com/managed-microsoft-ad/reference/rest/v1/projects.locations.global.domains.
	//
	// ***
	Domain pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// Whether the trusted side has forest/domain wide access or selective access to an approved set of resources.
	SelectiveAuthentication pulumi.BoolPtrInput
	// The target DNS server IP addresses which can resolve the remote domain involved in the trust.
	TargetDnsIpAddresses pulumi.StringArrayInput
	// The fully qualified target domain name which will be in trust with the current domain.
	TargetDomainName pulumi.StringPtrInput
	// The trust direction, which decides if the current domain is trusted, trusting, or both.
	// Possible values are: `INBOUND`, `OUTBOUND`, `BIDIRECTIONAL`.
	TrustDirection pulumi.StringPtrInput
	// The trust secret used for the handshake with the target domain. This will not be stored.
	// **Note**: This property is sensitive and will not be displayed in the plan.
	TrustHandshakeSecret pulumi.StringPtrInput
	// The type of trust represented by the trust resource.
	// Possible values are: `FOREST`, `EXTERNAL`.
	TrustType pulumi.StringPtrInput
}

func (DomainTrustState) ElementType

func (DomainTrustState) ElementType() reflect.Type

type Peering added in v6.34.0

type Peering struct {
	pulumi.CustomResourceState

	// The full names of the Google Compute Engine networks to which the instance is connected. Caller needs to make sure that CIDR subnets do not overlap between networks, else peering creation will fail.
	AuthorizedNetwork pulumi.StringOutput `pulumi:"authorizedNetwork"`
	// Full domain resource path for the Managed AD Domain involved in peering. The resource path should be in the form projects/{projectId}/locations/global/domains/{domainName}
	DomainResource pulumi.StringOutput `pulumi:"domainResource"`
	// Resource labels that can contain user-provided metadata
	Labels pulumi.StringMapOutput `pulumi:"labels"`
	// Unique name of the peering in this scope including projects and location using the form: projects/{projectId}/locations/global/peerings/{peeringId}.
	Name pulumi.StringOutput `pulumi:"name"`
	// ***
	PeeringId pulumi.StringOutput `pulumi:"peeringId"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The current state of this Peering.
	Status pulumi.StringPtrOutput `pulumi:"status"`
	// Additional information about the current status of this peering, if available.
	StatusMessage pulumi.StringPtrOutput `pulumi:"statusMessage"`
}

## Example Usage ### Active Directory Peering Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/activedirectory"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := compute.NewNetwork(ctx, "source-network", nil, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		_, err = activedirectory.NewDomain(ctx, "ad-domain", &activedirectory.DomainArgs{
			DomainName: pulumi.String("ad.test.hashicorptest.com"),
			Locations: pulumi.StringArray{
				pulumi.String("us-central1"),
			},
			ReservedIpRange: pulumi.String("192.168.255.0/24"),
			AuthorizedNetworks: pulumi.StringArray{
				source_network.ID(),
			},
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		_, err = organizations.NewProject(ctx, "peered-project", &organizations.ProjectArgs{
			ProjectId:      pulumi.String("my-peered-project"),
			OrgId:          pulumi.String("123456789"),
			BillingAccount: pulumi.String("000000-0000000-0000000-000000"),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		compute, err := projects.NewService(ctx, "compute", &projects.ServiceArgs{
			Project: peered_project.ProjectId,
			Service: pulumi.String("compute.googleapis.com"),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		_, err = compute.NewNetwork(ctx, "peered-network", &compute.NetworkArgs{
			Project: compute.Project,
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		_, err = activedirectory.NewPeering(ctx, "ad-domain-peering", &activedirectory.PeeringArgs{
			DomainResource:    ad_domain.Name,
			PeeringId:         pulumi.String("ad-domain-peering"),
			AuthorizedNetwork: peered_network.ID(),
			Labels: pulumi.StringMap{
				"foo": pulumi.String("bar"),
			},
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

This resource does not support import.

func GetPeering added in v6.34.0

func GetPeering(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PeeringState, opts ...pulumi.ResourceOption) (*Peering, error)

GetPeering gets an existing Peering resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewPeering added in v6.34.0

func NewPeering(ctx *pulumi.Context,
	name string, args *PeeringArgs, opts ...pulumi.ResourceOption) (*Peering, error)

NewPeering registers a new resource with the given unique name, arguments, and options.

func (*Peering) ElementType added in v6.34.0

func (*Peering) ElementType() reflect.Type

func (*Peering) ToOutput added in v6.65.1

func (i *Peering) ToOutput(ctx context.Context) pulumix.Output[*Peering]

func (*Peering) ToPeeringOutput added in v6.34.0

func (i *Peering) ToPeeringOutput() PeeringOutput

func (*Peering) ToPeeringOutputWithContext added in v6.34.0

func (i *Peering) ToPeeringOutputWithContext(ctx context.Context) PeeringOutput

type PeeringArgs added in v6.34.0

type PeeringArgs struct {
	// The full names of the Google Compute Engine networks to which the instance is connected. Caller needs to make sure that CIDR subnets do not overlap between networks, else peering creation will fail.
	AuthorizedNetwork pulumi.StringInput
	// Full domain resource path for the Managed AD Domain involved in peering. The resource path should be in the form projects/{projectId}/locations/global/domains/{domainName}
	DomainResource pulumi.StringInput
	// Resource labels that can contain user-provided metadata
	Labels pulumi.StringMapInput
	// ***
	PeeringId pulumi.StringInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The current state of this Peering.
	Status pulumi.StringPtrInput
	// Additional information about the current status of this peering, if available.
	StatusMessage pulumi.StringPtrInput
}

The set of arguments for constructing a Peering resource.

func (PeeringArgs) ElementType added in v6.34.0

func (PeeringArgs) ElementType() reflect.Type

type PeeringArray added in v6.34.0

type PeeringArray []PeeringInput

func (PeeringArray) ElementType added in v6.34.0

func (PeeringArray) ElementType() reflect.Type

func (PeeringArray) ToOutput added in v6.65.1

func (i PeeringArray) ToOutput(ctx context.Context) pulumix.Output[[]*Peering]

func (PeeringArray) ToPeeringArrayOutput added in v6.34.0

func (i PeeringArray) ToPeeringArrayOutput() PeeringArrayOutput

func (PeeringArray) ToPeeringArrayOutputWithContext added in v6.34.0

func (i PeeringArray) ToPeeringArrayOutputWithContext(ctx context.Context) PeeringArrayOutput

type PeeringArrayInput added in v6.34.0

type PeeringArrayInput interface {
	pulumi.Input

	ToPeeringArrayOutput() PeeringArrayOutput
	ToPeeringArrayOutputWithContext(context.Context) PeeringArrayOutput
}

PeeringArrayInput is an input type that accepts PeeringArray and PeeringArrayOutput values. You can construct a concrete instance of `PeeringArrayInput` via:

PeeringArray{ PeeringArgs{...} }

type PeeringArrayOutput added in v6.34.0

type PeeringArrayOutput struct{ *pulumi.OutputState }

func (PeeringArrayOutput) ElementType added in v6.34.0

func (PeeringArrayOutput) ElementType() reflect.Type

func (PeeringArrayOutput) Index added in v6.34.0

func (PeeringArrayOutput) ToOutput added in v6.65.1

func (PeeringArrayOutput) ToPeeringArrayOutput added in v6.34.0

func (o PeeringArrayOutput) ToPeeringArrayOutput() PeeringArrayOutput

func (PeeringArrayOutput) ToPeeringArrayOutputWithContext added in v6.34.0

func (o PeeringArrayOutput) ToPeeringArrayOutputWithContext(ctx context.Context) PeeringArrayOutput

type PeeringInput added in v6.34.0

type PeeringInput interface {
	pulumi.Input

	ToPeeringOutput() PeeringOutput
	ToPeeringOutputWithContext(ctx context.Context) PeeringOutput
}

type PeeringMap added in v6.34.0

type PeeringMap map[string]PeeringInput

func (PeeringMap) ElementType added in v6.34.0

func (PeeringMap) ElementType() reflect.Type

func (PeeringMap) ToOutput added in v6.65.1

func (i PeeringMap) ToOutput(ctx context.Context) pulumix.Output[map[string]*Peering]

func (PeeringMap) ToPeeringMapOutput added in v6.34.0

func (i PeeringMap) ToPeeringMapOutput() PeeringMapOutput

func (PeeringMap) ToPeeringMapOutputWithContext added in v6.34.0

func (i PeeringMap) ToPeeringMapOutputWithContext(ctx context.Context) PeeringMapOutput

type PeeringMapInput added in v6.34.0

type PeeringMapInput interface {
	pulumi.Input

	ToPeeringMapOutput() PeeringMapOutput
	ToPeeringMapOutputWithContext(context.Context) PeeringMapOutput
}

PeeringMapInput is an input type that accepts PeeringMap and PeeringMapOutput values. You can construct a concrete instance of `PeeringMapInput` via:

PeeringMap{ "key": PeeringArgs{...} }

type PeeringMapOutput added in v6.34.0

type PeeringMapOutput struct{ *pulumi.OutputState }

func (PeeringMapOutput) ElementType added in v6.34.0

func (PeeringMapOutput) ElementType() reflect.Type

func (PeeringMapOutput) MapIndex added in v6.34.0

func (PeeringMapOutput) ToOutput added in v6.65.1

func (PeeringMapOutput) ToPeeringMapOutput added in v6.34.0

func (o PeeringMapOutput) ToPeeringMapOutput() PeeringMapOutput

func (PeeringMapOutput) ToPeeringMapOutputWithContext added in v6.34.0

func (o PeeringMapOutput) ToPeeringMapOutputWithContext(ctx context.Context) PeeringMapOutput

type PeeringOutput added in v6.34.0

type PeeringOutput struct{ *pulumi.OutputState }

func (PeeringOutput) AuthorizedNetwork added in v6.34.0

func (o PeeringOutput) AuthorizedNetwork() pulumi.StringOutput

The full names of the Google Compute Engine networks to which the instance is connected. Caller needs to make sure that CIDR subnets do not overlap between networks, else peering creation will fail.

func (PeeringOutput) DomainResource added in v6.34.0

func (o PeeringOutput) DomainResource() pulumi.StringOutput

Full domain resource path for the Managed AD Domain involved in peering. The resource path should be in the form projects/{projectId}/locations/global/domains/{domainName}

func (PeeringOutput) ElementType added in v6.34.0

func (PeeringOutput) ElementType() reflect.Type

func (PeeringOutput) Labels added in v6.34.0

Resource labels that can contain user-provided metadata

func (PeeringOutput) Name added in v6.34.0

Unique name of the peering in this scope including projects and location using the form: projects/{projectId}/locations/global/peerings/{peeringId}.

func (PeeringOutput) PeeringId added in v6.34.0

func (o PeeringOutput) PeeringId() pulumi.StringOutput

***

func (PeeringOutput) Project added in v6.34.0

func (o PeeringOutput) Project() pulumi.StringOutput

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

func (PeeringOutput) Status added in v6.34.0

The current state of this Peering.

func (PeeringOutput) StatusMessage added in v6.34.0

func (o PeeringOutput) StatusMessage() pulumi.StringPtrOutput

Additional information about the current status of this peering, if available.

func (PeeringOutput) ToOutput added in v6.65.1

func (o PeeringOutput) ToOutput(ctx context.Context) pulumix.Output[*Peering]

func (PeeringOutput) ToPeeringOutput added in v6.34.0

func (o PeeringOutput) ToPeeringOutput() PeeringOutput

func (PeeringOutput) ToPeeringOutputWithContext added in v6.34.0

func (o PeeringOutput) ToPeeringOutputWithContext(ctx context.Context) PeeringOutput

type PeeringState added in v6.34.0

type PeeringState struct {
	// The full names of the Google Compute Engine networks to which the instance is connected. Caller needs to make sure that CIDR subnets do not overlap between networks, else peering creation will fail.
	AuthorizedNetwork pulumi.StringPtrInput
	// Full domain resource path for the Managed AD Domain involved in peering. The resource path should be in the form projects/{projectId}/locations/global/domains/{domainName}
	DomainResource pulumi.StringPtrInput
	// Resource labels that can contain user-provided metadata
	Labels pulumi.StringMapInput
	// Unique name of the peering in this scope including projects and location using the form: projects/{projectId}/locations/global/peerings/{peeringId}.
	Name pulumi.StringPtrInput
	// ***
	PeeringId pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The current state of this Peering.
	Status pulumi.StringPtrInput
	// Additional information about the current status of this peering, if available.
	StatusMessage pulumi.StringPtrInput
}

func (PeeringState) ElementType added in v6.34.0

func (PeeringState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL