Class: AWSCDK::Elasticsearch::CfnDomain::AdvancedSecurityOptionsInputProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
elasticsearch/cfn_domain.rb

Overview

Specifies options for fine-grained access control.

The AWS::Elasticsearch::Domain resource is being replaced by the AWS::OpenSearchService::Domain resource. While the legacy Elasticsearch resource and options are still supported, we recommend modifying your existing Cloudformation templates to use the new OpenSearch Service resource, which supports both OpenSearch and Elasticsearch. For more information about the service rename, see New resource types in the Amazon OpenSearch Service Developer Guide .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(anonymous_auth_enabled: nil, enabled: nil, internal_user_database_enabled: nil, master_user_options: nil) ⇒ AdvancedSecurityOptionsInputProperty

Returns a new instance of AdvancedSecurityOptionsInputProperty.

Parameters:



768
769
770
771
772
773
774
775
776
777
# File 'elasticsearch/cfn_domain.rb', line 768

def initialize(anonymous_auth_enabled: nil, enabled: nil, internal_user_database_enabled: nil, master_user_options: nil)
  @anonymous_auth_enabled = anonymous_auth_enabled
  Jsii::Type.check_type(@anonymous_auth_enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "anonymousAuthEnabled") unless @anonymous_auth_enabled.nil?
  @enabled = enabled
  Jsii::Type.check_type(@enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "enabled") unless @enabled.nil?
  @internal_user_database_enabled = internal_user_database_enabled
  Jsii::Type.check_type(@internal_user_database_enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "internalUserDatabaseEnabled") unless @internal_user_database_enabled.nil?
  @master_user_options = master_user_options.is_a?(Hash) ? ::AWSCDK::Elasticsearch::CfnDomain::MasterUserOptionsProperty.new(**master_user_options.transform_keys(&:to_sym)) : master_user_options
  Jsii::Type.check_type(@master_user_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbGFzdGljc2VhcmNoLkNmbkRvbWFpbi5NYXN0ZXJVc2VyT3B0aW9uc1Byb3BlcnR5In1dfX0=")), "masterUserOptions") unless @master_user_options.nil?
end

Instance Attribute Details

#anonymous_auth_enabledBoolean, ... (readonly)



781
782
783
# File 'elasticsearch/cfn_domain.rb', line 781

def anonymous_auth_enabled
  @anonymous_auth_enabled
end

#enabledBoolean, ... (readonly)

True to enable fine-grained access control.

You must also enable encryption of data at rest and node-to-node encryption.



788
789
790
# File 'elasticsearch/cfn_domain.rb', line 788

def enabled
  @enabled
end

#internal_user_database_enabledBoolean, ... (readonly)

True to enable the internal user database.



793
794
795
# File 'elasticsearch/cfn_domain.rb', line 793

def internal_user_database_enabled
  @internal_user_database_enabled
end

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

Specifies information about the master user.



798
799
800
# File 'elasticsearch/cfn_domain.rb', line 798

def master_user_options
  @master_user_options
end

Class Method Details

.jsii_propertiesObject



800
801
802
803
804
805
806
807
# File 'elasticsearch/cfn_domain.rb', line 800

def self.jsii_properties
  {
    :anonymous_auth_enabled => "anonymousAuthEnabled",
    :enabled => "enabled",
    :internal_user_database_enabled => "internalUserDatabaseEnabled",
    :master_user_options => "masterUserOptions",
  }
end

Instance Method Details

#to_jsiiObject



809
810
811
812
813
814
815
816
817
818
# File 'elasticsearch/cfn_domain.rb', line 809

def to_jsii
  result = {}
  result.merge!({
    "anonymousAuthEnabled" => @anonymous_auth_enabled,
    "enabled" => @enabled,
    "internalUserDatabaseEnabled" => @internal_user_database_enabled,
    "masterUserOptions" => @master_user_options,
  })
  result.compact
end