Skip to content
v2.277.0

CfnStackProps Struct ​

Properties for defining a CfnStack.

Example ​

ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_appstream as appstream } from 'aws-cdk-lib';
const cfnStackProps: appstream.CfnStackProps = {
  accessEndpoints: [{
    endpointType: 'endpointType',
    vpceId: 'vpceId',
  }],
  agentAccessConfig: {
    screenImageFormat: 'screenImageFormat',
    screenResolution: 'screenResolution',
    settings: [{
      agentAction: 'agentAction',
      permission: 'permission',
    }],

    // the properties below are optional
    s3BucketArn: 's3BucketArn',
    screenshotsUploadEnabled: false,
    userControlMode: 'userControlMode',
  },
  applicationSettings: {
    enabled: false,

    // the properties below are optional
    settingsGroup: 'settingsGroup',
  },
  attributesToDelete: ['attributesToDelete'],
  contentRedirection: {
    hostToClient: {
      enabled: false,

      // the properties below are optional
      allowedUrls: ['allowedUrls'],
      deniedUrls: ['deniedUrls'],
    },
  },
  deleteStorageConnectors: false,
  description: 'description',
  displayName: 'displayName',
  embedHostDomains: ['embedHostDomains'],
  feedbackUrl: 'feedbackUrl',
  name: 'name',
  redirectUrl: 'redirectUrl',
  storageConnectorAuthentication: 'storageConnectorAuthentication',
  storageConnectors: [{
    connectorType: 'connectorType',

    // the properties below are optional
    domains: ['domains'],
    resourceIdentifier: 'resourceIdentifier',
  }],
  streamingExperienceSettings: {
    preferredProtocol: 'preferredProtocol',
  },
  tags: [{
    key: 'key',
    value: 'value',
  }],
  userSettings: [{
    action: 'action',
    permission: 'permission',

    // the properties below are optional
    maximumLength: 123,
  }],
};
python
from aws_cdk import CfnTag
# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_appstream as appstream

cfn_stack_props = appstream.CfnStackProps(
    access_endpoints=[appstream.CfnStack.AccessEndpointProperty(
        endpoint_type="endpointType",
        vpce_id="vpceId"
    )],
    agent_access_config=appstream.CfnStack.AgentAccessConfigProperty(
        screen_image_format="screenImageFormat",
        screen_resolution="screenResolution",
        settings=[appstream.CfnStack.AgentAccessSettingProperty(
            agent_action="agentAction",
            permission="permission"
        )],

        # the properties below are optional
        s3_bucket_arn="s3BucketArn",
        screenshots_upload_enabled=False,
        user_control_mode="userControlMode"
    ),
    application_settings=appstream.CfnStack.ApplicationSettingsProperty(
        enabled=False,

        # the properties below are optional
        settings_group="settingsGroup"
    ),
    attributes_to_delete=["attributesToDelete"],
    content_redirection=appstream.CfnStack.ContentRedirectionProperty(
        host_to_client=appstream.CfnStack.UrlRedirectionConfigProperty(
            enabled=False,

            # the properties below are optional
            allowed_urls=["allowedUrls"],
            denied_urls=["deniedUrls"]
        )
    ),
    delete_storage_connectors=False,
    description="description",
    display_name="displayName",
    embed_host_domains=["embedHostDomains"],
    feedback_url="feedbackUrl",
    name="name",
    redirect_url="redirectUrl",
    storage_connector_authentication="storageConnectorAuthentication",
    storage_connectors=[appstream.CfnStack.StorageConnectorProperty(
        connector_type="connectorType",

        # the properties below are optional
        domains=["domains"],
        resource_identifier="resourceIdentifier"
    )],
    streaming_experience_settings=appstream.CfnStack.StreamingExperienceSettingsProperty(
        preferred_protocol="preferredProtocol"
    ),
    tags=[CfnTag(
        key="key",
        value="value"
    )],
    user_settings=[appstream.CfnStack.UserSettingProperty(
        action="action",
        permission="permission",

        # the properties below are optional
        maximum_length=123
    )]
)
java
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import software.amazon.awscdk.services.appstream.*;

CfnStackProps cfnStackProps = CfnStackProps.builder()
        .accessEndpoints(List.of(AccessEndpointProperty.builder()
                .endpointType("endpointType")
                .vpceId("vpceId")
                .build()))
        .agentAccessConfig(AgentAccessConfigProperty.builder()
                .screenImageFormat("screenImageFormat")
                .screenResolution("screenResolution")
                .settings(List.of(AgentAccessSettingProperty.builder()
                        .agentAction("agentAction")
                        .permission("permission")
                        .build()))

                // the properties below are optional
                .s3BucketArn("s3BucketArn")
                .screenshotsUploadEnabled(false)
                .userControlMode("userControlMode")
                .build())
        .applicationSettings(ApplicationSettingsProperty.builder()
                .enabled(false)

                // the properties below are optional
                .settingsGroup("settingsGroup")
                .build())
        .attributesToDelete(List.of("attributesToDelete"))
        .contentRedirection(ContentRedirectionProperty.builder()
                .hostToClient(UrlRedirectionConfigProperty.builder()
                        .enabled(false)

                        // the properties below are optional
                        .allowedUrls(List.of("allowedUrls"))
                        .deniedUrls(List.of("deniedUrls"))
                        .build())
                .build())
        .deleteStorageConnectors(false)
        .description("description")
        .displayName("displayName")
        .embedHostDomains(List.of("embedHostDomains"))
        .feedbackUrl("feedbackUrl")
        .name("name")
        .redirectUrl("redirectUrl")
        .storageConnectorAuthentication("storageConnectorAuthentication")
        .storageConnectors(List.of(StorageConnectorProperty.builder()
                .connectorType("connectorType")

                // the properties below are optional
                .domains(List.of("domains"))
                .resourceIdentifier("resourceIdentifier")
                .build()))
        .streamingExperienceSettings(StreamingExperienceSettingsProperty.builder()
                .preferredProtocol("preferredProtocol")
                .build())
        .tags(List.of(CfnTag.builder()
                .key("key")
                .value("value")
                .build()))
        .userSettings(List.of(UserSettingProperty.builder()
                .action("action")
                .permission("permission")

                // the properties below are optional
                .maximumLength(123)
                .build()))
        .build();
csharp
// Install: dotnet add package Amazon.CDK.Lib
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.AppStream;

var cfnStackProps = new CfnStackProps {
    AccessEndpoints = new [] { new AccessEndpointProperty {
        EndpointType = "endpointType",
        VpceId = "vpceId"
    } },
    AgentAccessConfig = new AgentAccessConfigProperty {
        ScreenImageFormat = "screenImageFormat",
        ScreenResolution = "screenResolution",
        Settings = new [] { new AgentAccessSettingProperty {
            AgentAction = "agentAction",
            Permission = "permission"
        } },

        // the properties below are optional
        S3BucketArn = "s3BucketArn",
        ScreenshotsUploadEnabled = false,
        UserControlMode = "userControlMode"
    },
    ApplicationSettings = new ApplicationSettingsProperty {
        Enabled = false,

        // the properties below are optional
        SettingsGroup = "settingsGroup"
    },
    AttributesToDelete = new [] { "attributesToDelete" },
    ContentRedirection = new ContentRedirectionProperty {
        HostToClient = new UrlRedirectionConfigProperty {
            Enabled = false,

            // the properties below are optional
            AllowedUrls = new [] { "allowedUrls" },
            DeniedUrls = new [] { "deniedUrls" }
        }
    },
    DeleteStorageConnectors = false,
    Description = "description",
    DisplayName = "displayName",
    EmbedHostDomains = new [] { "embedHostDomains" },
    FeedbackUrl = "feedbackUrl",
    Name = "name",
    RedirectUrl = "redirectUrl",
    StorageConnectorAuthentication = "storageConnectorAuthentication",
    StorageConnectors = new [] { new StorageConnectorProperty {
        ConnectorType = "connectorType",

        // the properties below are optional
        Domains = new [] { "domains" },
        ResourceIdentifier = "resourceIdentifier"
    } },
    StreamingExperienceSettings = new StreamingExperienceSettingsProperty {
        PreferredProtocol = "preferredProtocol"
    },
    Tags = new [] { new CfnTag {
        Key = "key",
        Value = "value"
    } },
    UserSettings = new [] { new UserSettingProperty {
        Action = "action",
        Permission = "permission",

        // the properties below are optional
        MaximumLength = 123
    } }
};
go
// Install: go get github.com/aws/aws-cdk-go/awscdk/v2
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

cfnStackProps := &CfnStackProps{
	AccessEndpoints: []interface{}{
		&AccessEndpointProperty{
			EndpointType: jsii.String("endpointType"),
			VpceId: jsii.String("vpceId"),
		},
	},
	AgentAccessConfig: &AgentAccessConfigProperty{
		ScreenImageFormat: jsii.String("screenImageFormat"),
		ScreenResolution: jsii.String("screenResolution"),
		Settings: []interface{}{
			&AgentAccessSettingProperty{
				AgentAction: jsii.String("agentAction"),
				Permission: jsii.String("permission"),
			},
		},

		// the properties below are optional
		S3BucketArn: jsii.String("s3BucketArn"),
		ScreenshotsUploadEnabled: jsii.Boolean(false),
		UserControlMode: jsii.String("userControlMode"),
	},
	ApplicationSettings: &ApplicationSettingsProperty{
		Enabled: jsii.Boolean(false),

		// the properties below are optional
		SettingsGroup: jsii.String("settingsGroup"),
	},
	AttributesToDelete: []*string{
		jsii.String("attributesToDelete"),
	},
	ContentRedirection: &ContentRedirectionProperty{
		HostToClient: &UrlRedirectionConfigProperty{
			Enabled: jsii.Boolean(false),

			// the properties below are optional
			AllowedUrls: []*string{
				jsii.String("allowedUrls"),
			},
			DeniedUrls: []*string{
				jsii.String("deniedUrls"),
			},
		},
	},
	DeleteStorageConnectors: jsii.Boolean(false),
	Description: jsii.String("description"),
	DisplayName: jsii.String("displayName"),
	EmbedHostDomains: []*string{
		jsii.String("embedHostDomains"),
	},
	FeedbackUrl: jsii.String("feedbackUrl"),
	Name: jsii.String("name"),
	RedirectUrl: jsii.String("redirectUrl"),
	StorageConnectorAuthentication: jsii.String("storageConnectorAuthentication"),
	StorageConnectors: []interface{}{
		&StorageConnectorProperty{
			ConnectorType: jsii.String("connectorType"),

			// the properties below are optional
			Domains: []*string{
				jsii.String("domains"),
			},
			ResourceIdentifier: jsii.String("resourceIdentifier"),
		},
	},
	StreamingExperienceSettings: &StreamingExperienceSettingsProperty{
		PreferredProtocol: jsii.String("preferredProtocol"),
	},
	Tags: []CfnTag{
		&CfnTag{
			Key: jsii.String("key"),
			Value: jsii.String("value"),
		},
	},
	UserSettings: []interface{}{
		&UserSettingProperty{
			Action: jsii.String("action"),
			Permission: jsii.String("permission"),

			// the properties below are optional
			MaximumLength: jsii.Number(123),
		},
	},
}

Properties ​

accessEndpointsoptionalIResolvable | IResolvable | CfnStack.AccessEndpointProperty[]access_endpointsoptionaltyping.Union[IResolvable, typing.List[typing.Union[IResolvable, AccessEndpointProperty]]]accessEndpointsoptionalIResolvableAccessEndpointsoptionalIResolvableAccessEndpointsoptionalinterface{}#
The list of virtual private cloud (VPC) interface endpoint objects.

Users of the stack can connect to WorkSpaces Applications only through the specified endpoints.

agentAccessConfigoptionalIResolvable | CfnStack.AgentAccessConfigPropertyagent_access_configoptionaltyping.Union[IResolvable, AgentAccessConfigProperty]agentAccessConfigoptionalIResolvableAgentAccessConfigoptionalIResolvableAgentAccessConfigoptionalinterface{}#
The configuration for agent access on a stack.

Agent access enables AI agents to interact with desktop applications during streaming sessions.

applicationSettingsoptionalIResolvable | CfnStack.ApplicationSettingsPropertyapplication_settingsoptionaltyping.Union[IResolvable, ApplicationSettingsProperty]applicationSettingsoptionalIResolvableApplicationSettingsoptionalIResolvableApplicationSettingsoptionalinterface{}#
The persistent application settings for users of the stack.

When these settings are enabled, changes that users make to applications and Windows settings are automatically saved after each session and applied to the next session.

attributesToDeleteoptionalstring[]attributes_to_deleteoptionaltyping.List[str]attributesToDeleteoptionalList<String>AttributesToDeleteoptionalstring[]AttributesToDeleteoptional*[]*string#
The stack attributes to delete.
contentRedirectionoptionalIResolvable | CfnStack.ContentRedirectionPropertycontent_redirectionoptionaltyping.Union[IResolvable, ContentRedirectionProperty]contentRedirectionoptionalIResolvableContentRedirectionoptionalIResolvableContentRedirectionoptionalinterface{}#
The content redirection settings for the stack.
deleteStorageConnectorsoptionalboolean | IResolvabledelete_storage_connectorsoptionaltyping.Union[bool, IResolvable]deleteStorageConnectorsoptionalBooleanDeleteStorageConnectorsoptionalboolDeleteStorageConnectorsoptionalinterface{}#
*This parameter has been deprecated.*.

Deletes the storage connectors currently enabled for the stack.

descriptionoptionalstringdescriptionoptionalstrdescriptionoptionalStringDescriptionoptionalstringDescriptionoptional*string#
The description to display.
displayNameoptionalstringdisplay_nameoptionalstrdisplayNameoptionalStringDisplayNameoptionalstringDisplayNameoptional*string#
The stack name to display.
embedHostDomainsoptionalstring[]embed_host_domainsoptionaltyping.List[str]embedHostDomainsoptionalList<String>EmbedHostDomainsoptionalstring[]EmbedHostDomainsoptional*[]*string#
The domains where WorkSpaces Applications streaming sessions can be embedded in an iframe.

You must approve the domains that you want to host embedded WorkSpaces Applications streaming sessions.

feedbackUrloptionalstringfeedback_urloptionalstrfeedbackUrloptionalStringFeedbackUrloptionalstringFeedbackUrloptional*string#
The URL that users are redirected to after they click the Send Feedback link.

If no URL is specified, no Send Feedback link is displayed.

nameoptionalstringnameoptionalstrnameoptionalStringNameoptionalstringNameoptional*string#
The name of the stack.
redirectUrloptionalstringredirect_urloptionalstrredirectUrloptionalStringRedirectUrloptionalstringRedirectUrloptional*string#
The URL that users are redirected to after their streaming session ends.
storageConnectorAuthenticationoptionalstringstorage_connector_authenticationoptionalstrstorageConnectorAuthenticationoptionalStringStorageConnectorAuthenticationoptionalstringStorageConnectorAuthenticationoptional*string#
Controls whether stored OneDrive and Google Drive authentication is retained between streaming sessions.

Valid values: FORCE_REAUTHENTICATION | REUSE_CREDENTIALS.

storageConnectorsoptionalIResolvable | IResolvable | CfnStack.StorageConnectorProperty[]storage_connectorsoptionaltyping.Union[IResolvable, typing.List[typing.Union[IResolvable, StorageConnectorProperty]]]storageConnectorsoptionalIResolvableStorageConnectorsoptionalIResolvableStorageConnectorsoptionalinterface{}#
The storage connectors to enable.
streamingExperienceSettingsoptionalIResolvable | CfnStack.StreamingExperienceSettingsPropertystreaming_experience_settingsoptionaltyping.Union[IResolvable, StreamingExperienceSettingsProperty]streamingExperienceSettingsoptionalIResolvableStreamingExperienceSettingsoptionalIResolvableStreamingExperienceSettingsoptionalinterface{}#
The streaming protocol that you want your stack to prefer.

This can be UDP or TCP. Currently, UDP is only supported in the Windows native client.

tagsoptionalCfnTag[]tagsoptionaltyping.List[CfnTag]tagsoptionalList<CfnTag>TagsoptionalCfnTag[]Tagsoptional*[]CfnTag#
An array of key-value pairs.
userSettingsoptionalIResolvable | IResolvable | CfnStack.UserSettingProperty[]user_settingsoptionaltyping.Union[IResolvable, typing.List[typing.Union[IResolvable, UserSettingProperty]]]userSettingsoptionalIResolvableUserSettingsoptionalIResolvableUserSettingsoptionalinterface{}#
The actions that are enabled or disabled for users during their streaming sessions.

By default, these actions are enabled.