Class: AWSCDK::WorkspacesWeb::CfnBrowserSettingsProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
workspaces_web/cfn_browser_settings_props.rb

Overview

Properties for defining a CfnBrowserSettings.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(additional_encryption_context: nil, browser_policy: nil, customer_managed_key: nil, tags: nil, web_content_filtering_policy: nil) ⇒ CfnBrowserSettingsProps

Returns a new instance of CfnBrowserSettingsProps.

Parameters:

  • additional_encryption_context (AWSCDK::IResolvable, Hash{String => String}, nil) (defaults to: nil)

    Additional encryption context of the browser settings.

  • browser_policy (String, nil) (defaults to: nil)

    A JSON string containing Chrome Enterprise policies that will be applied to all streaming sessions.

  • customer_managed_key (String, nil) (defaults to: nil)

    The custom managed key of the browser settings.

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    The tags to add to the browser settings resource.

  • web_content_filtering_policy (AWSCDK::IResolvable, AWSCDK::WorkspacesWeb::CfnBrowserSettings::WebContentFilteringPolicyProperty, nil) (defaults to: nil)

    The policy that specifies which URLs end users are allowed to access or which URLs or domain categories they are restricted from accessing for enhanced security.



14
15
16
17
18
19
20
21
22
23
24
25
# File 'workspaces_web/cfn_browser_settings_props.rb', line 14

def initialize(additional_encryption_context: nil, browser_policy: nil, customer_managed_key: nil, tags: nil, web_content_filtering_policy: nil)
  @additional_encryption_context = additional_encryption_context
  Jsii::Type.check_type(@additional_encryption_context, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsicHJpbWl0aXZlIjoic3RyaW5nIn0sImtpbmQiOiJtYXAifX1dfX0=")), "additionalEncryptionContext") unless @additional_encryption_context.nil?
  @browser_policy = browser_policy
  Jsii::Type.check_type(@browser_policy, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "browserPolicy") unless @browser_policy.nil?
  @customer_managed_key = customer_managed_key
  Jsii::Type.check_type(@customer_managed_key, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "customerManagedKey") unless @customer_managed_key.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
  @web_content_filtering_policy = web_content_filtering_policy.is_a?(Hash) ? ::AWSCDK::WorkspacesWeb::CfnBrowserSettings::WebContentFilteringPolicyProperty.new(**web_content_filtering_policy.transform_keys(&:to_sym)) : web_content_filtering_policy
  Jsii::Type.check_type(@web_content_filtering_policy, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c193b3Jrc3BhY2Vzd2ViLkNmbkJyb3dzZXJTZXR0aW5ncy5XZWJDb250ZW50RmlsdGVyaW5nUG9saWN5UHJvcGVydHkifV19fQ==")), "webContentFilteringPolicy") unless @web_content_filtering_policy.nil?
end

Instance Attribute Details

#additional_encryption_contextAWSCDK::IResolvable, ... (readonly)

Additional encryption context of the browser settings.



31
32
33
# File 'workspaces_web/cfn_browser_settings_props.rb', line 31

def additional_encryption_context
  @additional_encryption_context
end

#browser_policyString? (readonly)

A JSON string containing Chrome Enterprise policies that will be applied to all streaming sessions.



36
37
38
# File 'workspaces_web/cfn_browser_settings_props.rb', line 36

def browser_policy
  @browser_policy
end

#customer_managed_keyString? (readonly)

The custom managed key of the browser settings.

Pattern : ^arn:[\w+=\/,.@-]+:kms:[a-zA-Z0-9\-]*:[a-zA-Z0-9]{1,12}:key\/[a-zA-Z0-9-]+$



43
44
45
# File 'workspaces_web/cfn_browser_settings_props.rb', line 43

def customer_managed_key
  @customer_managed_key
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

The tags to add to the browser settings resource.

A tag is a key-value pair.



50
51
52
# File 'workspaces_web/cfn_browser_settings_props.rb', line 50

def tags
  @tags
end

#web_content_filtering_policyAWSCDK::IResolvable, ... (readonly)

The policy that specifies which URLs end users are allowed to access or which URLs or domain categories they are restricted from accessing for enhanced security.



55
56
57
# File 'workspaces_web/cfn_browser_settings_props.rb', line 55

def web_content_filtering_policy
  @web_content_filtering_policy
end

Class Method Details

.jsii_propertiesObject



57
58
59
60
61
62
63
64
65
# File 'workspaces_web/cfn_browser_settings_props.rb', line 57

def self.jsii_properties
  {
    :additional_encryption_context => "additionalEncryptionContext",
    :browser_policy => "browserPolicy",
    :customer_managed_key => "customerManagedKey",
    :tags => "tags",
    :web_content_filtering_policy => "webContentFilteringPolicy",
  }
end

Instance Method Details

#to_jsiiObject



67
68
69
70
71
72
73
74
75
76
77
# File 'workspaces_web/cfn_browser_settings_props.rb', line 67

def to_jsii
  result = {}
  result.merge!({
    "additionalEncryptionContext" => @additional_encryption_context,
    "browserPolicy" => @browser_policy,
    "customerManagedKey" => @customer_managed_key,
    "tags" => @tags,
    "webContentFilteringPolicy" => @web_content_filtering_policy,
  })
  result.compact
end