Documentation ¶
Index ¶
- type ControlTowerControl
- type ControlTowerControlArgs
- type ControlTowerControlArray
- type ControlTowerControlArrayInput
- type ControlTowerControlArrayOutput
- func (ControlTowerControlArrayOutput) ElementType() reflect.Type
- func (o ControlTowerControlArrayOutput) Index(i pulumi.IntInput) ControlTowerControlOutput
- func (o ControlTowerControlArrayOutput) ToControlTowerControlArrayOutput() ControlTowerControlArrayOutput
- func (o ControlTowerControlArrayOutput) ToControlTowerControlArrayOutputWithContext(ctx context.Context) ControlTowerControlArrayOutput
- type ControlTowerControlInput
- type ControlTowerControlMap
- type ControlTowerControlMapInput
- type ControlTowerControlMapOutput
- func (ControlTowerControlMapOutput) ElementType() reflect.Type
- func (o ControlTowerControlMapOutput) MapIndex(k pulumi.StringInput) ControlTowerControlOutput
- func (o ControlTowerControlMapOutput) ToControlTowerControlMapOutput() ControlTowerControlMapOutput
- func (o ControlTowerControlMapOutput) ToControlTowerControlMapOutputWithContext(ctx context.Context) ControlTowerControlMapOutput
- type ControlTowerControlOutput
- func (o ControlTowerControlOutput) ControlIdentifier() pulumi.StringOutput
- func (ControlTowerControlOutput) ElementType() reflect.Type
- func (o ControlTowerControlOutput) TargetIdentifier() pulumi.StringOutput
- func (o ControlTowerControlOutput) ToControlTowerControlOutput() ControlTowerControlOutput
- func (o ControlTowerControlOutput) ToControlTowerControlOutputWithContext(ctx context.Context) ControlTowerControlOutput
- type ControlTowerControlState
- type GetControlsArgs
- type GetControlsOutputArgs
- type GetControlsResult
- type GetControlsResultOutput
- func (GetControlsResultOutput) ElementType() reflect.Type
- func (o GetControlsResultOutput) EnabledControls() pulumi.StringArrayOutput
- func (o GetControlsResultOutput) Id() pulumi.StringOutput
- func (o GetControlsResultOutput) TargetIdentifier() pulumi.StringOutput
- func (o GetControlsResultOutput) ToGetControlsResultOutput() GetControlsResultOutput
- func (o GetControlsResultOutput) ToGetControlsResultOutputWithContext(ctx context.Context) GetControlsResultOutput
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ControlTowerControl ¶
type ControlTowerControl struct { pulumi.CustomResourceState // The ARN of the control. Only Strongly recommended and Elective controls are permitted, with the exception of the Region deny guardrail. ControlIdentifier pulumi.StringOutput `pulumi:"controlIdentifier"` // The ARN of the organizational unit. TargetIdentifier pulumi.StringOutput `pulumi:"targetIdentifier"` }
Allows the application of pre-defined controls to organizational units. For more information on usage, please see the [AWS Control Tower User Guide](https://docs.aws.amazon.com/controltower/latest/userguide/enable-guardrails.html).
## Example Usage
```go package main
import (
"fmt" "github.com/pulumi/pulumi-aws/sdk/v6/go/aws" "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/controltower" "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/organizations" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { current, err := aws.GetRegion(ctx, nil, nil) if err != nil { return err } exampleOrganization, err := organizations.LookupOrganization(ctx, nil, nil) if err != nil { return err } exampleOrganizationalUnits, err := organizations.GetOrganizationalUnits(ctx, &organizations.GetOrganizationalUnitsArgs{ ParentId: exampleOrganization.Roots[0].Id, }, nil) if err != nil { return err } _, err = controltower.NewControlTowerControl(ctx, "exampleControlTowerControl", &controltower.ControlTowerControlArgs{ ControlIdentifier: pulumi.String(fmt.Sprintf("arn:aws:controltower:%v::control/AWS-GR_EC2_VOLUME_INUSE_CHECK", current.Name)), TargetIdentifier: "TODO: For expression"[0], }) if err != nil { return err } return nil }) }
```
## Import
Using `pulumi import`, import Control Tower Controls using their `organizational_unit_arn/control_identifier`. For example:
```sh
$ pulumi import aws:controltower/controlTowerControl:ControlTowerControl example arn:aws:organizations::123456789101:ou/o-qqaejywet/ou-qg5o-ufbhdtv3,arn:aws:controltower:us-east-1::control/WTDSMKDKDNLE
```
func GetControlTowerControl ¶
func GetControlTowerControl(ctx *pulumi.Context, name string, id pulumi.IDInput, state *ControlTowerControlState, opts ...pulumi.ResourceOption) (*ControlTowerControl, error)
GetControlTowerControl gets an existing ControlTowerControl 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 NewControlTowerControl ¶
func NewControlTowerControl(ctx *pulumi.Context, name string, args *ControlTowerControlArgs, opts ...pulumi.ResourceOption) (*ControlTowerControl, error)
NewControlTowerControl registers a new resource with the given unique name, arguments, and options.
func (*ControlTowerControl) ElementType ¶
func (*ControlTowerControl) ElementType() reflect.Type
func (*ControlTowerControl) ToControlTowerControlOutput ¶
func (i *ControlTowerControl) ToControlTowerControlOutput() ControlTowerControlOutput
func (*ControlTowerControl) ToControlTowerControlOutputWithContext ¶
func (i *ControlTowerControl) ToControlTowerControlOutputWithContext(ctx context.Context) ControlTowerControlOutput
type ControlTowerControlArgs ¶
type ControlTowerControlArgs struct { // The ARN of the control. Only Strongly recommended and Elective controls are permitted, with the exception of the Region deny guardrail. ControlIdentifier pulumi.StringInput // The ARN of the organizational unit. TargetIdentifier pulumi.StringInput }
The set of arguments for constructing a ControlTowerControl resource.
func (ControlTowerControlArgs) ElementType ¶
func (ControlTowerControlArgs) ElementType() reflect.Type
type ControlTowerControlArray ¶
type ControlTowerControlArray []ControlTowerControlInput
func (ControlTowerControlArray) ElementType ¶
func (ControlTowerControlArray) ElementType() reflect.Type
func (ControlTowerControlArray) ToControlTowerControlArrayOutput ¶
func (i ControlTowerControlArray) ToControlTowerControlArrayOutput() ControlTowerControlArrayOutput
func (ControlTowerControlArray) ToControlTowerControlArrayOutputWithContext ¶
func (i ControlTowerControlArray) ToControlTowerControlArrayOutputWithContext(ctx context.Context) ControlTowerControlArrayOutput
type ControlTowerControlArrayInput ¶
type ControlTowerControlArrayInput interface { pulumi.Input ToControlTowerControlArrayOutput() ControlTowerControlArrayOutput ToControlTowerControlArrayOutputWithContext(context.Context) ControlTowerControlArrayOutput }
ControlTowerControlArrayInput is an input type that accepts ControlTowerControlArray and ControlTowerControlArrayOutput values. You can construct a concrete instance of `ControlTowerControlArrayInput` via:
ControlTowerControlArray{ ControlTowerControlArgs{...} }
type ControlTowerControlArrayOutput ¶
type ControlTowerControlArrayOutput struct{ *pulumi.OutputState }
func (ControlTowerControlArrayOutput) ElementType ¶
func (ControlTowerControlArrayOutput) ElementType() reflect.Type
func (ControlTowerControlArrayOutput) Index ¶
func (o ControlTowerControlArrayOutput) Index(i pulumi.IntInput) ControlTowerControlOutput
func (ControlTowerControlArrayOutput) ToControlTowerControlArrayOutput ¶
func (o ControlTowerControlArrayOutput) ToControlTowerControlArrayOutput() ControlTowerControlArrayOutput
func (ControlTowerControlArrayOutput) ToControlTowerControlArrayOutputWithContext ¶
func (o ControlTowerControlArrayOutput) ToControlTowerControlArrayOutputWithContext(ctx context.Context) ControlTowerControlArrayOutput
type ControlTowerControlInput ¶
type ControlTowerControlInput interface { pulumi.Input ToControlTowerControlOutput() ControlTowerControlOutput ToControlTowerControlOutputWithContext(ctx context.Context) ControlTowerControlOutput }
type ControlTowerControlMap ¶
type ControlTowerControlMap map[string]ControlTowerControlInput
func (ControlTowerControlMap) ElementType ¶
func (ControlTowerControlMap) ElementType() reflect.Type
func (ControlTowerControlMap) ToControlTowerControlMapOutput ¶
func (i ControlTowerControlMap) ToControlTowerControlMapOutput() ControlTowerControlMapOutput
func (ControlTowerControlMap) ToControlTowerControlMapOutputWithContext ¶
func (i ControlTowerControlMap) ToControlTowerControlMapOutputWithContext(ctx context.Context) ControlTowerControlMapOutput
type ControlTowerControlMapInput ¶
type ControlTowerControlMapInput interface { pulumi.Input ToControlTowerControlMapOutput() ControlTowerControlMapOutput ToControlTowerControlMapOutputWithContext(context.Context) ControlTowerControlMapOutput }
ControlTowerControlMapInput is an input type that accepts ControlTowerControlMap and ControlTowerControlMapOutput values. You can construct a concrete instance of `ControlTowerControlMapInput` via:
ControlTowerControlMap{ "key": ControlTowerControlArgs{...} }
type ControlTowerControlMapOutput ¶
type ControlTowerControlMapOutput struct{ *pulumi.OutputState }
func (ControlTowerControlMapOutput) ElementType ¶
func (ControlTowerControlMapOutput) ElementType() reflect.Type
func (ControlTowerControlMapOutput) MapIndex ¶
func (o ControlTowerControlMapOutput) MapIndex(k pulumi.StringInput) ControlTowerControlOutput
func (ControlTowerControlMapOutput) ToControlTowerControlMapOutput ¶
func (o ControlTowerControlMapOutput) ToControlTowerControlMapOutput() ControlTowerControlMapOutput
func (ControlTowerControlMapOutput) ToControlTowerControlMapOutputWithContext ¶
func (o ControlTowerControlMapOutput) ToControlTowerControlMapOutputWithContext(ctx context.Context) ControlTowerControlMapOutput
type ControlTowerControlOutput ¶
type ControlTowerControlOutput struct{ *pulumi.OutputState }
func (ControlTowerControlOutput) ControlIdentifier ¶
func (o ControlTowerControlOutput) ControlIdentifier() pulumi.StringOutput
The ARN of the control. Only Strongly recommended and Elective controls are permitted, with the exception of the Region deny guardrail.
func (ControlTowerControlOutput) ElementType ¶
func (ControlTowerControlOutput) ElementType() reflect.Type
func (ControlTowerControlOutput) TargetIdentifier ¶
func (o ControlTowerControlOutput) TargetIdentifier() pulumi.StringOutput
The ARN of the organizational unit.
func (ControlTowerControlOutput) ToControlTowerControlOutput ¶
func (o ControlTowerControlOutput) ToControlTowerControlOutput() ControlTowerControlOutput
func (ControlTowerControlOutput) ToControlTowerControlOutputWithContext ¶
func (o ControlTowerControlOutput) ToControlTowerControlOutputWithContext(ctx context.Context) ControlTowerControlOutput
type ControlTowerControlState ¶
type ControlTowerControlState struct { // The ARN of the control. Only Strongly recommended and Elective controls are permitted, with the exception of the Region deny guardrail. ControlIdentifier pulumi.StringPtrInput // The ARN of the organizational unit. TargetIdentifier pulumi.StringPtrInput }
func (ControlTowerControlState) ElementType ¶
func (ControlTowerControlState) ElementType() reflect.Type
type GetControlsArgs ¶
type GetControlsArgs struct { // The ARN of the organizational unit. TargetIdentifier string `pulumi:"targetIdentifier"` }
A collection of arguments for invoking getControls.
type GetControlsOutputArgs ¶
type GetControlsOutputArgs struct { // The ARN of the organizational unit. TargetIdentifier pulumi.StringInput `pulumi:"targetIdentifier"` }
A collection of arguments for invoking getControls.
func (GetControlsOutputArgs) ElementType ¶
func (GetControlsOutputArgs) ElementType() reflect.Type
type GetControlsResult ¶
type GetControlsResult struct { // List of all the ARNs for the controls applied to the `targetIdentifier`. EnabledControls []string `pulumi:"enabledControls"` // The provider-assigned unique ID for this managed resource. Id string `pulumi:"id"` TargetIdentifier string `pulumi:"targetIdentifier"` }
A collection of values returned by getControls.
func GetControls ¶
func GetControls(ctx *pulumi.Context, args *GetControlsArgs, opts ...pulumi.InvokeOption) (*GetControlsResult, error)
List of Control Tower controls applied to an OU.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/controltower" "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/organizations" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { thisOrganization, err := organizations.LookupOrganization(ctx, nil, nil) if err != nil { return err } thisOrganizationalUnits, err := organizations.GetOrganizationalUnits(ctx, &organizations.GetOrganizationalUnitsArgs{ ParentId: thisOrganization.Roots[0].Id, }, nil) if err != nil { return err } _, err = controltower.GetControls(ctx, &controltower.GetControlsArgs{ TargetIdentifier: "TODO: For expression"[0], }, nil) if err != nil { return err } return nil }) }
```
type GetControlsResultOutput ¶
type GetControlsResultOutput struct{ *pulumi.OutputState }
A collection of values returned by getControls.
func GetControlsOutput ¶
func GetControlsOutput(ctx *pulumi.Context, args GetControlsOutputArgs, opts ...pulumi.InvokeOption) GetControlsResultOutput
func (GetControlsResultOutput) ElementType ¶
func (GetControlsResultOutput) ElementType() reflect.Type
func (GetControlsResultOutput) EnabledControls ¶
func (o GetControlsResultOutput) EnabledControls() pulumi.StringArrayOutput
List of all the ARNs for the controls applied to the `targetIdentifier`.
func (GetControlsResultOutput) Id ¶
func (o GetControlsResultOutput) Id() pulumi.StringOutput
The provider-assigned unique ID for this managed resource.
func (GetControlsResultOutput) TargetIdentifier ¶
func (o GetControlsResultOutput) TargetIdentifier() pulumi.StringOutput
func (GetControlsResultOutput) ToGetControlsResultOutput ¶
func (o GetControlsResultOutput) ToGetControlsResultOutput() GetControlsResultOutput
func (GetControlsResultOutput) ToGetControlsResultOutputWithContext ¶
func (o GetControlsResultOutput) ToGetControlsResultOutputWithContext(ctx context.Context) GetControlsResultOutput