aws.workspaces.WebNetworkSettings
Explore with Pulumi AI
Resource for managing an AWS WorkSpaces Web Network Settings resource. Once associated with a web portal, network settings define how streaming instances will connect with your specified VPC.
Example Usage
Basic Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
import * as std from "@pulumi/std";
const example = new aws.ec2.Vpc("example", {cidrBlock: "10.0.0.0/16"});
const exampleSubnet: aws.ec2.Subnet[] = [];
for (const range = {value: 0}; range.value < 2; range.value++) {
exampleSubnet.push(new aws.ec2.Subnet(`example-${range.value}`, {
vpcId: example.id,
cidrBlock: example.cidrBlock.apply(cidrBlock => std.cidrsubnetOutput({
input: cidrBlock,
newbits: 8,
netnum: range.value,
})).apply(invoke => invoke.result),
availabilityZone: available.names[range.value],
}));
}
const example1: aws.ec2.SecurityGroup[] = [];
for (const range = {value: 0}; range.value < 2; range.value++) {
example1.push(new aws.ec2.SecurityGroup(`example1-${range.value}`, {
vpcId: example.id,
name: `example-sg-${range.value}$`,
}));
}
const exampleWebNetworkSettings = new aws.workspaces.WebNetworkSettings("example", {
vpcId: example.id,
subnetIds: [
exampleSubnet[0].id,
exampleSubnet[1].id,
],
securityGroupIds: [
exampleAwsSecurityGroup[0].id,
exampleAwsSecurityGroup[1].id,
],
});
import pulumi
import pulumi_aws as aws
import pulumi_std as std
example = aws.ec2.Vpc("example", cidr_block="10.0.0.0/16")
example_subnet = []
for range in [{"value": i} for i in range(0, 2)]:
example_subnet.append(aws.ec2.Subnet(f"example-{range['value']}",
vpc_id=example.id,
cidr_block=example.cidr_block.apply(lambda cidr_block: std.cidrsubnet_output(input=cidr_block,
newbits=8,
netnum=range["value"])).apply(lambda invoke: invoke.result),
availability_zone=available["names"][range["value"]]))
example1 = []
for range in [{"value": i} for i in range(0, 2)]:
example1.append(aws.ec2.SecurityGroup(f"example1-{range['value']}",
vpc_id=example.id,
name=f"example-sg-{range['value']}$"))
example_web_network_settings = aws.workspaces.WebNetworkSettings("example",
vpc_id=example.id,
subnet_ids=[
example_subnet[0].id,
example_subnet[1].id,
],
security_group_ids=[
example_aws_security_group[0]["id"],
example_aws_security_group[1]["id"],
])
package main
import (
"fmt"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/workspaces"
"github.com/pulumi/pulumi-std/sdk/go/std"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := ec2.NewVpc(ctx, "example", &ec2.VpcArgs{
CidrBlock: pulumi.String("10.0.0.0/16"),
})
if err != nil {
return err
}
var exampleSubnet []*ec2.Subnet
for index := 0; index < 2; index++ {
key0 := index
val0 := index
__res, err := ec2.NewSubnet(ctx, fmt.Sprintf("example-%v", key0), &ec2.SubnetArgs{
VpcId: example.ID(),
CidrBlock: pulumi.String(example.CidrBlock.ApplyT(func(cidrBlock string) (std.CidrsubnetResult, error) {
return std.CidrsubnetResult(interface{}(std.CidrsubnetOutput(ctx, std.CidrsubnetOutputArgs{
Input: cidrBlock,
Newbits: 8,
Netnum: val0,
}, nil))), nil
}).(std.CidrsubnetResultOutput).ApplyT(func(invoke std.CidrsubnetResult) (*string, error) {
return invoke.Result, nil
}).(pulumi.StringPtrOutput)),
AvailabilityZone: available.Names[val0],
})
if err != nil {
return err
}
exampleSubnet = append(exampleSubnet, __res)
}
var example1 []*ec2.SecurityGroup
for index := 0; index < 2; index++ {
key0 := index
val0 := index
__res, err := ec2.NewSecurityGroup(ctx, fmt.Sprintf("example1-%v", key0), &ec2.SecurityGroupArgs{
VpcId: example.ID(),
Name: pulumi.Sprintf("example-sg-%v$", val0),
})
if err != nil {
return err
}
example1 = append(example1, __res)
}
_, err = workspaces.NewWebNetworkSettings(ctx, "example", &workspaces.WebNetworkSettingsArgs{
VpcId: example.ID(),
SubnetIds: pulumi.StringArray{
exampleSubnet[0].ID(),
exampleSubnet[1].ID(),
},
SecurityGroupIds: pulumi.StringArray{
exampleAwsSecurityGroup[0].Id,
exampleAwsSecurityGroup[1].Id,
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
using Std = Pulumi.Std;
return await Deployment.RunAsync(() =>
{
var example = new Aws.Ec2.Vpc("example", new()
{
CidrBlock = "10.0.0.0/16",
});
var exampleSubnet = new List<Aws.Ec2.Subnet>();
for (var rangeIndex = 0; rangeIndex < 2; rangeIndex++)
{
var range = new { Value = rangeIndex };
exampleSubnet.Add(new Aws.Ec2.Subnet($"example-{range.Value}", new()
{
VpcId = example.Id,
CidrBlock = example.CidrBlock.Apply(cidrBlock => Std.Cidrsubnet.Invoke(new()
{
Input = cidrBlock,
Newbits = 8,
Netnum = range.Value,
})).Apply(invoke => invoke.Result),
AvailabilityZone = available.Names[range.Value],
}));
}
var example1 = new List<Aws.Ec2.SecurityGroup>();
for (var rangeIndex = 0; rangeIndex < 2; rangeIndex++)
{
var range = new { Value = rangeIndex };
example1.Add(new Aws.Ec2.SecurityGroup($"example1-{range.Value}", new()
{
VpcId = example.Id,
Name = $"example-sg-{range.Value}$",
}));
}
var exampleWebNetworkSettings = new Aws.Workspaces.WebNetworkSettings("example", new()
{
VpcId = example.Id,
SubnetIds = new[]
{
exampleSubnet[0].Id,
exampleSubnet[1].Id,
},
SecurityGroupIds = new[]
{
exampleAwsSecurityGroup[0].Id,
exampleAwsSecurityGroup[1].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.std.StdFunctions;
import com.pulumi.std.inputs.CidrsubnetArgs;
import com.pulumi.aws.ec2.SecurityGroup;
import com.pulumi.aws.ec2.SecurityGroupArgs;
import com.pulumi.aws.workspaces.WebNetworkSettings;
import com.pulumi.aws.workspaces.WebNetworkSettingsArgs;
import com.pulumi.codegen.internal.KeyedValue;
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 example = new Vpc("example", VpcArgs.builder()
.cidrBlock("10.0.0.0/16")
.build());
for (var i = 0; i < 2; i++) {
new Subnet("exampleSubnet-" + i, SubnetArgs.builder()
.vpcId(example.id())
.cidrBlock(example.cidrBlock().applyValue(_cidrBlock -> StdFunctions.cidrsubnet(CidrsubnetArgs.builder()
.input(_cidrBlock)
.newbits(8)
.netnum(range.value())
.build())).applyValue(_invoke -> _invoke.result()))
.availabilityZone(available.names()[range.value()])
.build());
}
for (var i = 0; i < 2; i++) {
new SecurityGroup("example1-" + i, SecurityGroupArgs.builder()
.vpcId(example.id())
.name(String.format("example-sg-%s$", range.value()))
.build());
}
var exampleWebNetworkSettings = new WebNetworkSettings("exampleWebNetworkSettings", WebNetworkSettingsArgs.builder()
.vpcId(example.id())
.subnetIds(
exampleSubnet[0].id(),
exampleSubnet[1].id())
.securityGroupIds(
exampleAwsSecurityGroup[0].id(),
exampleAwsSecurityGroup[1].id())
.build());
}
}
Coming soon!
Create WebNetworkSettings Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new WebNetworkSettings(name: string, args: WebNetworkSettingsArgs, opts?: CustomResourceOptions);
@overload
def WebNetworkSettings(resource_name: str,
args: WebNetworkSettingsArgs,
opts: Optional[ResourceOptions] = None)
@overload
def WebNetworkSettings(resource_name: str,
opts: Optional[ResourceOptions] = None,
security_group_ids: Optional[Sequence[str]] = None,
subnet_ids: Optional[Sequence[str]] = None,
vpc_id: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None)
func NewWebNetworkSettings(ctx *Context, name string, args WebNetworkSettingsArgs, opts ...ResourceOption) (*WebNetworkSettings, error)
public WebNetworkSettings(string name, WebNetworkSettingsArgs args, CustomResourceOptions? opts = null)
public WebNetworkSettings(String name, WebNetworkSettingsArgs args)
public WebNetworkSettings(String name, WebNetworkSettingsArgs args, CustomResourceOptions options)
type: aws:workspaces:WebNetworkSettings
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 WebNetworkSettingsArgs
- 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 WebNetworkSettingsArgs
- 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 WebNetworkSettingsArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args WebNetworkSettingsArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args WebNetworkSettingsArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var webNetworkSettingsResource = new Aws.Workspaces.WebNetworkSettings("webNetworkSettingsResource", new()
{
SecurityGroupIds = new[]
{
"string",
},
SubnetIds = new[]
{
"string",
},
VpcId = "string",
Tags =
{
{ "string", "string" },
},
});
example, err := workspaces.NewWebNetworkSettings(ctx, "webNetworkSettingsResource", &workspaces.WebNetworkSettingsArgs{
SecurityGroupIds: pulumi.StringArray{
pulumi.String("string"),
},
SubnetIds: pulumi.StringArray{
pulumi.String("string"),
},
VpcId: pulumi.String("string"),
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
})
var webNetworkSettingsResource = new WebNetworkSettings("webNetworkSettingsResource", WebNetworkSettingsArgs.builder()
.securityGroupIds("string")
.subnetIds("string")
.vpcId("string")
.tags(Map.of("string", "string"))
.build());
web_network_settings_resource = aws.workspaces.WebNetworkSettings("webNetworkSettingsResource",
security_group_ids=["string"],
subnet_ids=["string"],
vpc_id="string",
tags={
"string": "string",
})
const webNetworkSettingsResource = new aws.workspaces.WebNetworkSettings("webNetworkSettingsResource", {
securityGroupIds: ["string"],
subnetIds: ["string"],
vpcId: "string",
tags: {
string: "string",
},
});
type: aws:workspaces:WebNetworkSettings
properties:
securityGroupIds:
- string
subnetIds:
- string
tags:
string: string
vpcId: string
WebNetworkSettings Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The WebNetworkSettings resource accepts the following input properties:
- Security
Group List<string>Ids - One or more security groups used to control access from streaming instances to your VPC.
- Subnet
Ids List<string> - The subnets in which network interfaces are created to connect streaming instances to your VPC. At least two subnet ids must be specified.
- Vpc
Id string The VPC that streaming instances will connect to.
The following arguments are optional:
- Dictionary<string, string>
- Map of tags assigned 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.
- Security
Group []stringIds - One or more security groups used to control access from streaming instances to your VPC.
- Subnet
Ids []string - The subnets in which network interfaces are created to connect streaming instances to your VPC. At least two subnet ids must be specified.
- Vpc
Id string The VPC that streaming instances will connect to.
The following arguments are optional:
- map[string]string
- Map of tags assigned 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.
- security
Group List<String>Ids - One or more security groups used to control access from streaming instances to your VPC.
- subnet
Ids List<String> - The subnets in which network interfaces are created to connect streaming instances to your VPC. At least two subnet ids must be specified.
- vpc
Id String The VPC that streaming instances will connect to.
The following arguments are optional:
- Map<String,String>
- Map of tags assigned 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.
- security
Group string[]Ids - One or more security groups used to control access from streaming instances to your VPC.
- subnet
Ids string[] - The subnets in which network interfaces are created to connect streaming instances to your VPC. At least two subnet ids must be specified.
- vpc
Id string The VPC that streaming instances will connect to.
The following arguments are optional:
- {[key: string]: string}
- Map of tags assigned 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.
- security_
group_ Sequence[str]ids - One or more security groups used to control access from streaming instances to your VPC.
- subnet_
ids Sequence[str] - The subnets in which network interfaces are created to connect streaming instances to your VPC. At least two subnet ids must be specified.
- vpc_
id str The VPC that streaming instances will connect to.
The following arguments are optional:
- Mapping[str, str]
- Map of tags assigned 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.
- security
Group List<String>Ids - One or more security groups used to control access from streaming instances to your VPC.
- subnet
Ids List<String> - The subnets in which network interfaces are created to connect streaming instances to your VPC. At least two subnet ids must be specified.
- vpc
Id String The VPC that streaming instances will connect to.
The following arguments are optional:
- Map<String>
- Map of tags assigned 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.
Outputs
All input properties are implicitly available as output properties. Additionally, the WebNetworkSettings resource produces the following output properties:
- Associated
Portal List<string>Arns - List of web portal ARNs associated with the network settings.
- Id string
- The provider-assigned unique ID for this managed resource.
- Network
Settings stringArn - ARN of the network settings resource.
- Dictionary<string, string>
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- Associated
Portal []stringArns - List of web portal ARNs associated with the network settings.
- Id string
- The provider-assigned unique ID for this managed resource.
- Network
Settings stringArn - ARN of the network settings resource.
- map[string]string
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- associated
Portal List<String>Arns - List of web portal ARNs associated with the network settings.
- id String
- The provider-assigned unique ID for this managed resource.
- network
Settings StringArn - ARN of the network settings resource.
- Map<String,String>
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- associated
Portal string[]Arns - List of web portal ARNs associated with the network settings.
- id string
- The provider-assigned unique ID for this managed resource.
- network
Settings stringArn - ARN of the network settings resource.
- {[key: string]: string}
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- associated_
portal_ Sequence[str]arns - List of web portal ARNs associated with the network settings.
- id str
- The provider-assigned unique ID for this managed resource.
- network_
settings_ strarn - ARN of the network settings resource.
- Mapping[str, str]
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
- associated
Portal List<String>Arns - List of web portal ARNs associated with the network settings.
- id String
- The provider-assigned unique ID for this managed resource.
- network
Settings StringArn - ARN of the network settings resource.
- Map<String>
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block.
Look up Existing WebNetworkSettings Resource
Get an existing WebNetworkSettings 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?: WebNetworkSettingsState, opts?: CustomResourceOptions): WebNetworkSettings
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
associated_portal_arns: Optional[Sequence[str]] = None,
network_settings_arn: Optional[str] = None,
security_group_ids: Optional[Sequence[str]] = None,
subnet_ids: Optional[Sequence[str]] = None,
tags: Optional[Mapping[str, str]] = None,
tags_all: Optional[Mapping[str, str]] = None,
vpc_id: Optional[str] = None) -> WebNetworkSettings
func GetWebNetworkSettings(ctx *Context, name string, id IDInput, state *WebNetworkSettingsState, opts ...ResourceOption) (*WebNetworkSettings, error)
public static WebNetworkSettings Get(string name, Input<string> id, WebNetworkSettingsState? state, CustomResourceOptions? opts = null)
public static WebNetworkSettings get(String name, Output<String> id, WebNetworkSettingsState state, CustomResourceOptions options)
resources: _: type: aws:workspaces:WebNetworkSettings get: id: ${id}
- 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.
- Associated
Portal List<string>Arns - List of web portal ARNs associated with the network settings.
- Network
Settings stringArn - ARN of the network settings resource.
- Security
Group List<string>Ids - One or more security groups used to control access from streaming instances to your VPC.
- Subnet
Ids List<string> - The subnets in which network interfaces are created to connect streaming instances to your VPC. At least two subnet ids must be specified.
- Dictionary<string, string>
- Map of tags assigned 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. - Dictionary<string, string>
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block. - Vpc
Id string The VPC that streaming instances will connect to.
The following arguments are optional:
- Associated
Portal []stringArns - List of web portal ARNs associated with the network settings.
- Network
Settings stringArn - ARN of the network settings resource.
- Security
Group []stringIds - One or more security groups used to control access from streaming instances to your VPC.
- Subnet
Ids []string - The subnets in which network interfaces are created to connect streaming instances to your VPC. At least two subnet ids must be specified.
- map[string]string
- Map of tags assigned 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. - map[string]string
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block. - Vpc
Id string The VPC that streaming instances will connect to.
The following arguments are optional:
- associated
Portal List<String>Arns - List of web portal ARNs associated with the network settings.
- network
Settings StringArn - ARN of the network settings resource.
- security
Group List<String>Ids - One or more security groups used to control access from streaming instances to your VPC.
- subnet
Ids List<String> - The subnets in which network interfaces are created to connect streaming instances to your VPC. At least two subnet ids must be specified.
- Map<String,String>
- Map of tags assigned 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. - Map<String,String>
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block. - vpc
Id String The VPC that streaming instances will connect to.
The following arguments are optional:
- associated
Portal string[]Arns - List of web portal ARNs associated with the network settings.
- network
Settings stringArn - ARN of the network settings resource.
- security
Group string[]Ids - One or more security groups used to control access from streaming instances to your VPC.
- subnet
Ids string[] - The subnets in which network interfaces are created to connect streaming instances to your VPC. At least two subnet ids must be specified.
- {[key: string]: string}
- Map of tags assigned 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. - {[key: string]: string}
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block. - vpc
Id string The VPC that streaming instances will connect to.
The following arguments are optional:
- associated_
portal_ Sequence[str]arns - List of web portal ARNs associated with the network settings.
- network_
settings_ strarn - ARN of the network settings resource.
- security_
group_ Sequence[str]ids - One or more security groups used to control access from streaming instances to your VPC.
- subnet_
ids Sequence[str] - The subnets in which network interfaces are created to connect streaming instances to your VPC. At least two subnet ids must be specified.
- Mapping[str, str]
- Map of tags assigned 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. - Mapping[str, str]
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block. - vpc_
id str The VPC that streaming instances will connect to.
The following arguments are optional:
- associated
Portal List<String>Arns - List of web portal ARNs associated with the network settings.
- network
Settings StringArn - ARN of the network settings resource.
- security
Group List<String>Ids - One or more security groups used to control access from streaming instances to your VPC.
- subnet
Ids List<String> - The subnets in which network interfaces are created to connect streaming instances to your VPC. At least two subnet ids must be specified.
- Map<String>
- Map of tags assigned 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. - Map<String>
- Map of tags assigned to the resource, including those inherited from the provider
default_tags
configuration block. - vpc
Id String The VPC that streaming instances will connect to.
The following arguments are optional:
Import
Using pulumi import
, import WorkSpaces Web Network Settings using the network_settings_arn
. For example:
$ pulumi import aws:workspaces/webNetworkSettings:WebNetworkSettings example arn:aws:workspacesweb:us-west-2:123456789012:networksettings/abcdef12345
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.