Class: AWSCDK::Connect::CfnSecurityProfileProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::Connect::CfnSecurityProfileProps
- Defined in:
- connect/cfn_security_profile_props.rb
Overview
Properties for defining a CfnSecurityProfile.
Instance Attribute Summary collapse
-
#allowed_access_control_hierarchy_group_id ⇒ String?
readonly
The identifier of the hierarchy group that a security profile uses to restrict access to resources in Amazon Connect.
-
#allowed_access_control_tags ⇒ AWSCDK::IResolvable, ...
readonly
The list of tags that a security profile uses to restrict access to resources in Amazon Connect.
-
#allowed_flow_modules ⇒ AWSCDK::IResolvable, ...
readonly
The list of flow-module resources to be linked to a security profile in Amazon Connect.
-
#applications ⇒ AWSCDK::IResolvable, ...
readonly
A list of third-party applications that the security profile will give access to.
-
#description ⇒ String?
readonly
The description of the security profile.
-
#granular_access_control_configuration ⇒ AWSCDK::IResolvable, ...
readonly
The granular access control configuration for the security profile, including data table permissions.
-
#hierarchy_restricted_resources ⇒ Array<String>?
readonly
The list of resources that a security profile applies hierarchy restrictions to in Amazon Connect.
-
#instance_arn ⇒ String, AWSCDK::Interfaces::AWSConnect::IInstanceRef
readonly
The identifier of the Connect Customer instance.
-
#permissions ⇒ Array<String>?
readonly
Permissions assigned to the security profile.
-
#security_profile_name ⇒ String
readonly
The name for the security profile.
-
#tag_restricted_resources ⇒ Array<String>?
readonly
The list of resources that a security profile applies tag restrictions to in Amazon Connect.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
The tags used to organize, track, or control access for this resource.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(instance_arn:, security_profile_name:, allowed_access_control_hierarchy_group_id: nil, allowed_access_control_tags: nil, allowed_flow_modules: nil, applications: nil, description: nil, granular_access_control_configuration: nil, hierarchy_restricted_resources: nil, permissions: nil, tag_restricted_resources: nil, tags: nil) ⇒ CfnSecurityProfileProps
constructor
A new instance of CfnSecurityProfileProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(instance_arn:, security_profile_name:, allowed_access_control_hierarchy_group_id: nil, allowed_access_control_tags: nil, allowed_flow_modules: nil, applications: nil, description: nil, granular_access_control_configuration: nil, hierarchy_restricted_resources: nil, permissions: nil, tag_restricted_resources: nil, tags: nil) ⇒ CfnSecurityProfileProps
Returns a new instance of CfnSecurityProfileProps.
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'connect/cfn_security_profile_props.rb', line 21 def initialize(instance_arn:, security_profile_name:, allowed_access_control_hierarchy_group_id: nil, allowed_access_control_tags: nil, allowed_flow_modules: nil, applications: nil, description: nil, granular_access_control_configuration: nil, hierarchy_restricted_resources: nil, permissions: nil, tag_restricted_resources: nil, tags: nil) @instance_arn = instance_arn Jsii::Type.check_type(@instance_arn, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19jb25uZWN0LklJbnN0YW5jZVJlZiJ9XX19")), "instanceArn") @security_profile_name = security_profile_name Jsii::Type.check_type(@security_profile_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "securityProfileName") @allowed_access_control_hierarchy_group_id = allowed_access_control_hierarchy_group_id Jsii::Type.check_type(@allowed_access_control_hierarchy_group_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "allowedAccessControlHierarchyGroupId") unless @allowed_access_control_hierarchy_group_id.nil? @allowed_access_control_tags = Jsii::Type.check_type(@allowed_access_control_tags, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5DZm5UYWcifV19fSwia2luZCI6ImFycmF5In19XX19")), "allowedAccessControlTags") unless @allowed_access_control_tags.nil? @allowed_flow_modules = allowed_flow_modules Jsii::Type.check_type(@allowed_flow_modules, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY29ubmVjdC5DZm5TZWN1cml0eVByb2ZpbGUuRmxvd01vZHVsZVByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "allowedFlowModules") unless @allowed_flow_modules.nil? @applications = applications Jsii::Type.check_type(@applications, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY29ubmVjdC5DZm5TZWN1cml0eVByb2ZpbGUuQXBwbGljYXRpb25Qcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "applications") unless @applications.nil? @description = description Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil? @granular_access_control_configuration = granular_access_control_configuration.is_a?(Hash) ? ::AWSCDK::Connect::CfnSecurityProfile::GranularAccessControlConfigurationProperty.new(**granular_access_control_configuration.transform_keys(&:to_sym)) : granular_access_control_configuration Jsii::Type.check_type(@granular_access_control_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jb25uZWN0LkNmblNlY3VyaXR5UHJvZmlsZS5HcmFudWxhckFjY2Vzc0NvbnRyb2xDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "granularAccessControlConfiguration") unless @granular_access_control_configuration.nil? @hierarchy_restricted_resources = hierarchy_restricted_resources Jsii::Type.check_type(@hierarchy_restricted_resources, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "hierarchyRestrictedResources") unless @hierarchy_restricted_resources.nil? @permissions = Jsii::Type.check_type(@permissions, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "permissions") unless @permissions.nil? @tag_restricted_resources = tag_restricted_resources Jsii::Type.check_type(@tag_restricted_resources, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tagRestrictedResources") unless @tag_restricted_resources.nil? @tags = .is_a?(Array) ? .map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil? end |
Instance Attribute Details
#allowed_access_control_hierarchy_group_id ⇒ String? (readonly)
The identifier of the hierarchy group that a security profile uses to restrict access to resources in Amazon Connect.
62 63 64 |
# File 'connect/cfn_security_profile_props.rb', line 62 def allowed_access_control_hierarchy_group_id @allowed_access_control_hierarchy_group_id end |
#allowed_access_control_tags ⇒ AWSCDK::IResolvable, ... (readonly)
The list of tags that a security profile uses to restrict access to resources in Amazon Connect.
67 68 69 |
# File 'connect/cfn_security_profile_props.rb', line 67 def @allowed_access_control_tags end |
#allowed_flow_modules ⇒ AWSCDK::IResolvable, ... (readonly)
The list of flow-module resources to be linked to a security profile in Amazon Connect.
72 73 74 |
# File 'connect/cfn_security_profile_props.rb', line 72 def allowed_flow_modules @allowed_flow_modules end |
#applications ⇒ AWSCDK::IResolvable, ... (readonly)
A list of third-party applications that the security profile will give access to.
77 78 79 |
# File 'connect/cfn_security_profile_props.rb', line 77 def applications @applications end |
#description ⇒ String? (readonly)
The description of the security profile.
82 83 84 |
# File 'connect/cfn_security_profile_props.rb', line 82 def description @description end |
#granular_access_control_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
The granular access control configuration for the security profile, including data table permissions.
87 88 89 |
# File 'connect/cfn_security_profile_props.rb', line 87 def granular_access_control_configuration @granular_access_control_configuration end |
#hierarchy_restricted_resources ⇒ Array<String>? (readonly)
The list of resources that a security profile applies hierarchy restrictions to in Amazon Connect.
Following are acceptable ResourceNames: User .
94 95 96 |
# File 'connect/cfn_security_profile_props.rb', line 94 def hierarchy_restricted_resources @hierarchy_restricted_resources end |
#instance_arn ⇒ String, AWSCDK::Interfaces::AWSConnect::IInstanceRef (readonly)
The identifier of the Connect Customer instance.
52 53 54 |
# File 'connect/cfn_security_profile_props.rb', line 52 def instance_arn @instance_arn end |
#permissions ⇒ Array<String>? (readonly)
Permissions assigned to the security profile.
For a list of valid permissions, see List of security profile permissions .
101 102 103 |
# File 'connect/cfn_security_profile_props.rb', line 101 def @permissions end |
#security_profile_name ⇒ String (readonly)
The name for the security profile.
57 58 59 |
# File 'connect/cfn_security_profile_props.rb', line 57 def security_profile_name @security_profile_name end |
#tag_restricted_resources ⇒ Array<String>? (readonly)
The list of resources that a security profile applies tag restrictions to in Amazon Connect.
106 107 108 |
# File 'connect/cfn_security_profile_props.rb', line 106 def tag_restricted_resources @tag_restricted_resources end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
The tags used to organize, track, or control access for this resource.
For example, { "Tags": "key2":"value2" }.
113 114 115 |
# File 'connect/cfn_security_profile_props.rb', line 113 def @tags end |
Class Method Details
.jsii_properties ⇒ Object
115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 |
# File 'connect/cfn_security_profile_props.rb', line 115 def self.jsii_properties { :instance_arn => "instanceArn", :security_profile_name => "securityProfileName", :allowed_access_control_hierarchy_group_id => "allowedAccessControlHierarchyGroupId", :allowed_access_control_tags => "allowedAccessControlTags", :allowed_flow_modules => "allowedFlowModules", :applications => "applications", :description => "description", :granular_access_control_configuration => "granularAccessControlConfiguration", :hierarchy_restricted_resources => "hierarchyRestrictedResources", :permissions => "permissions", :tag_restricted_resources => "tagRestrictedResources", :tags => "tags", } end |
Instance Method Details
#to_jsii ⇒ Object
132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 |
# File 'connect/cfn_security_profile_props.rb', line 132 def to_jsii result = {} result.merge!({ "instanceArn" => @instance_arn, "securityProfileName" => @security_profile_name, "allowedAccessControlHierarchyGroupId" => @allowed_access_control_hierarchy_group_id, "allowedAccessControlTags" => @allowed_access_control_tags, "allowedFlowModules" => @allowed_flow_modules, "applications" => @applications, "description" => @description, "granularAccessControlConfiguration" => @granular_access_control_configuration, "hierarchyRestrictedResources" => @hierarchy_restricted_resources, "permissions" => @permissions, "tagRestrictedResources" => @tag_restricted_resources, "tags" => @tags, }) result.compact end |