Class: AWSCDK::OpenSearchService::CfnApplicationProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::OpenSearchService::CfnApplicationProps
- Defined in:
- open_search_service/cfn_application_props.rb
Overview
Properties for defining a CfnApplication.
Instance Attribute Summary collapse
-
#app_configs ⇒ AWSCDK::IResolvable, ...
readonly
List of application configurations.
-
#data_sources ⇒ AWSCDK::IResolvable, ...
readonly
List of data sources.
-
#endpoint ⇒ String?
readonly
The endpoint URL of an OpenSearch application.
-
#iam_identity_center_options ⇒ AWSCDK::IResolvable, ...
readonly
Settings container for integrating IAM Identity Center with OpenSearch UI applications, which enables enabling secure user authentication and access control across multiple data sources.
-
#kms_key_arn ⇒ String?
readonly
The ARN of the KMS key used to encrypt the application.
-
#name ⇒ String
readonly
The name of an OpenSearch application.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
An arbitrary set of tags (key-value pairs) for this application.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(name:, app_configs: nil, data_sources: nil, endpoint: nil, iam_identity_center_options: nil, kms_key_arn: nil, tags: nil) ⇒ CfnApplicationProps
constructor
A new instance of CfnApplicationProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(name:, app_configs: nil, data_sources: nil, endpoint: nil, iam_identity_center_options: nil, kms_key_arn: nil, tags: nil) ⇒ CfnApplicationProps
Returns a new instance of CfnApplicationProps.
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'open_search_service/cfn_application_props.rb', line 16 def initialize(name:, app_configs: nil, data_sources: nil, endpoint: nil, iam_identity_center_options: nil, kms_key_arn: nil, tags: nil) @name = name Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") @app_configs = app_configs Jsii::Type.check_type(@app_configs, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfb3BlbnNlYXJjaHNlcnZpY2UuQ2ZuQXBwbGljYXRpb24uQXBwQ29uZmlnUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "appConfigs") unless @app_configs.nil? @data_sources = data_sources Jsii::Type.check_type(@data_sources, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfb3BlbnNlYXJjaHNlcnZpY2UuQ2ZuQXBwbGljYXRpb24uRGF0YVNvdXJjZVByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "dataSources") unless @data_sources.nil? @endpoint = endpoint Jsii::Type.check_type(@endpoint, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "endpoint") unless @endpoint.nil? @iam_identity_center_options = .is_a?(Hash) ? ::AWSCDK::OpenSearchService::CfnApplication::IAMIdentityCenterOptionsProperty.new(**.transform_keys(&:to_sym)) : Jsii::Type.check_type(@iam_identity_center_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19vcGVuc2VhcmNoc2VydmljZS5DZm5BcHBsaWNhdGlvbi5JYW1JZGVudGl0eUNlbnRlck9wdGlvbnNQcm9wZXJ0eSJ9XX19")), "iamIdentityCenterOptions") unless @iam_identity_center_options.nil? @kms_key_arn = kms_key_arn Jsii::Type.check_type(@kms_key_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "kmsKeyArn") unless @kms_key_arn.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
#app_configs ⇒ AWSCDK::IResolvable, ... (readonly)
List of application configurations.
42 43 44 |
# File 'open_search_service/cfn_application_props.rb', line 42 def app_configs @app_configs end |
#data_sources ⇒ AWSCDK::IResolvable, ... (readonly)
List of data sources.
47 48 49 |
# File 'open_search_service/cfn_application_props.rb', line 47 def data_sources @data_sources end |
#endpoint ⇒ String? (readonly)
The endpoint URL of an OpenSearch application.
52 53 54 |
# File 'open_search_service/cfn_application_props.rb', line 52 def endpoint @endpoint end |
#iam_identity_center_options ⇒ AWSCDK::IResolvable, ... (readonly)
Settings container for integrating IAM Identity Center with OpenSearch UI applications, which enables enabling secure user authentication and access control across multiple data sources.
This setup supports single sign-on (SSO) through IAM Identity Center, allowing centralized user management.
59 60 61 |
# File 'open_search_service/cfn_application_props.rb', line 59 def @iam_identity_center_options end |
#kms_key_arn ⇒ String? (readonly)
The ARN of the KMS key used to encrypt the application.
64 65 66 |
# File 'open_search_service/cfn_application_props.rb', line 64 def kms_key_arn @kms_key_arn end |
#name ⇒ String (readonly)
The name of an OpenSearch application.
37 38 39 |
# File 'open_search_service/cfn_application_props.rb', line 37 def name @name end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
An arbitrary set of tags (key-value pairs) for this application.
69 70 71 |
# File 'open_search_service/cfn_application_props.rb', line 69 def @tags end |
Class Method Details
.jsii_properties ⇒ Object
71 72 73 74 75 76 77 78 79 80 81 |
# File 'open_search_service/cfn_application_props.rb', line 71 def self.jsii_properties { :name => "name", :app_configs => "appConfigs", :data_sources => "dataSources", :endpoint => "endpoint", :iam_identity_center_options => "iamIdentityCenterOptions", :kms_key_arn => "kmsKeyArn", :tags => "tags", } end |
Instance Method Details
#to_jsii ⇒ Object
83 84 85 86 87 88 89 90 91 92 93 94 95 |
# File 'open_search_service/cfn_application_props.rb', line 83 def to_jsii result = {} result.merge!({ "name" => @name, "appConfigs" => @app_configs, "dataSources" => @data_sources, "endpoint" => @endpoint, "iamIdentityCenterOptions" => @iam_identity_center_options, "kmsKeyArn" => @kms_key_arn, "tags" => @tags, }) result.compact end |