Class: AWSCDK::OpenSearchServerless::CfnSecurityConfigProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
open_search_serverless/cfn_security_config_props.rb

Overview

Properties for defining a CfnSecurityConfig.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(description: nil, iam_federation_options: nil, iam_identity_center_options: nil, name: nil, saml_options: nil, type: nil) ⇒ CfnSecurityConfigProps

Returns a new instance of CfnSecurityConfigProps.

Parameters:



15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'open_search_serverless/cfn_security_config_props.rb', line 15

def initialize(description: nil, iam_federation_options: nil, iam_identity_center_options: nil, name: nil, saml_options: nil, type: nil)
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil?
  @iam_federation_options = iam_federation_options.is_a?(Hash) ? ::AWSCDK::OpenSearchServerless::CfnSecurityConfig::IAMFederationConfigOptionsProperty.new(**iam_federation_options.transform_keys(&:to_sym)) : iam_federation_options
  Jsii::Type.check_type(@iam_federation_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19vcGVuc2VhcmNoc2VydmVybGVzcy5DZm5TZWN1cml0eUNvbmZpZy5JYW1GZWRlcmF0aW9uQ29uZmlnT3B0aW9uc1Byb3BlcnR5In1dfX0=")), "iamFederationOptions") unless @iam_federation_options.nil?
  @iam_identity_center_options = iam_identity_center_options.is_a?(Hash) ? ::AWSCDK::OpenSearchServerless::CfnSecurityConfig::IAMIdentityCenterConfigOptionsProperty.new(**iam_identity_center_options.transform_keys(&:to_sym)) : iam_identity_center_options
  Jsii::Type.check_type(@iam_identity_center_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19vcGVuc2VhcmNoc2VydmVybGVzcy5DZm5TZWN1cml0eUNvbmZpZy5JYW1JZGVudGl0eUNlbnRlckNvbmZpZ09wdGlvbnNQcm9wZXJ0eSJ9XX19")), "iamIdentityCenterOptions") unless @iam_identity_center_options.nil?
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") unless @name.nil?
  @saml_options = saml_options.is_a?(Hash) ? ::AWSCDK::OpenSearchServerless::CfnSecurityConfig::SamlConfigOptionsProperty.new(**saml_options.transform_keys(&:to_sym)) : saml_options
  Jsii::Type.check_type(@saml_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19vcGVuc2VhcmNoc2VydmVybGVzcy5DZm5TZWN1cml0eUNvbmZpZy5TYW1sQ29uZmlnT3B0aW9uc1Byb3BlcnR5In1dfX0=")), "samlOptions") unless @saml_options.nil?
  @type = type
  Jsii::Type.check_type(@type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "type") unless @type.nil?
end

Instance Attribute Details

#descriptionString? (readonly)

The description of the security configuration.



34
35
36
# File 'open_search_serverless/cfn_security_config_props.rb', line 34

def description
  @description
end

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

Describes IAM federation options in the form of a key-value map.

Contains configuration details about how OpenSearch Serverless integrates with external identity providers through federation.



41
42
43
# File 'open_search_serverless/cfn_security_config_props.rb', line 41

def iam_federation_options
  @iam_federation_options
end

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

Describes IAM Identity Center options in the form of a key-value map.



46
47
48
# File 'open_search_serverless/cfn_security_config_props.rb', line 46

def iam_identity_center_options
  @iam_identity_center_options
end

#nameString? (readonly)

The name of the security configuration.



51
52
53
# File 'open_search_serverless/cfn_security_config_props.rb', line 51

def name
  @name
end

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

SAML options for the security configuration in the form of a key-value map.



56
57
58
# File 'open_search_serverless/cfn_security_config_props.rb', line 56

def saml_options
  @saml_options
end

#typeString? (readonly)

The type of security configuration.

Currently the only option is saml .



63
64
65
# File 'open_search_serverless/cfn_security_config_props.rb', line 63

def type
  @type
end

Class Method Details

.jsii_propertiesObject



65
66
67
68
69
70
71
72
73
74
# File 'open_search_serverless/cfn_security_config_props.rb', line 65

def self.jsii_properties
  {
    :description => "description",
    :iam_federation_options => "iamFederationOptions",
    :iam_identity_center_options => "iamIdentityCenterOptions",
    :name => "name",
    :saml_options => "samlOptions",
    :type => "type",
  }
end

Instance Method Details

#to_jsiiObject



76
77
78
79
80
81
82
83
84
85
86
87
# File 'open_search_serverless/cfn_security_config_props.rb', line 76

def to_jsii
  result = {}
  result.merge!({
    "description" => @description,
    "iamFederationOptions" => @iam_federation_options,
    "iamIdentityCenterOptions" => @iam_identity_center_options,
    "name" => @name,
    "samlOptions" => @saml_options,
    "type" => @type,
  })
  result.compact
end