Class: AWSCDK::Elasticsearch::CfnDomain::CognitoOptionsProperty

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

Overview

Configures OpenSearch Service to use Amazon Cognito authentication for OpenSearch Dashboards.

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(enabled: nil, identity_pool_id: nil, role_arn: nil, user_pool_id: nil) ⇒ CognitoOptionsProperty

Returns a new instance of CognitoOptionsProperty.

Parameters:

  • enabled (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    Whether to enable or disable Amazon Cognito authentication for OpenSearch Dashboards.

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

    The Amazon Cognito identity pool ID that you want OpenSearch Service to use for OpenSearch Dashboards authentication.

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

    The AmazonESCognitoAccess role that allows OpenSearch Service to configure your user pool and identity pool.

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

    The Amazon Cognito user pool ID that you want OpenSearch Service to use for OpenSearch Dashboards authentication.



833
834
835
836
837
838
839
840
841
842
# File 'elasticsearch/cfn_domain.rb', line 833

def initialize(enabled: nil, identity_pool_id: nil, role_arn: nil, user_pool_id: nil)
  @enabled = enabled
  Jsii::Type.check_type(@enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "enabled") unless @enabled.nil?
  @identity_pool_id = identity_pool_id
  Jsii::Type.check_type(@identity_pool_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "identityPoolId") unless @identity_pool_id.nil?
  @role_arn = role_arn
  Jsii::Type.check_type(@role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "roleArn") unless @role_arn.nil?
  @user_pool_id = user_pool_id
  Jsii::Type.check_type(@user_pool_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "userPoolId") unless @user_pool_id.nil?
end

Instance Attribute Details

#enabledBoolean, ... (readonly)

Whether to enable or disable Amazon Cognito authentication for OpenSearch Dashboards.

See Amazon Cognito authentication for OpenSearch Dashboards .



850
851
852
# File 'elasticsearch/cfn_domain.rb', line 850

def enabled
  @enabled
end

#identity_pool_idString? (readonly)

The Amazon Cognito identity pool ID that you want OpenSearch Service to use for OpenSearch Dashboards authentication.

Required if you enable Cognito authentication.



857
858
859
# File 'elasticsearch/cfn_domain.rb', line 857

def identity_pool_id
  @identity_pool_id
end

#role_arnString? (readonly)

The AmazonESCognitoAccess role that allows OpenSearch Service to configure your user pool and identity pool.

Required if you enable Cognito authentication.



864
865
866
# File 'elasticsearch/cfn_domain.rb', line 864

def role_arn
  @role_arn
end

#user_pool_idString? (readonly)

The Amazon Cognito user pool ID that you want OpenSearch Service to use for OpenSearch Dashboards authentication.

Required if you enable Cognito authentication.



871
872
873
# File 'elasticsearch/cfn_domain.rb', line 871

def user_pool_id
  @user_pool_id
end

Class Method Details

.jsii_propertiesObject



873
874
875
876
877
878
879
880
# File 'elasticsearch/cfn_domain.rb', line 873

def self.jsii_properties
  {
    :enabled => "enabled",
    :identity_pool_id => "identityPoolId",
    :role_arn => "roleArn",
    :user_pool_id => "userPoolId",
  }
end

Instance Method Details

#to_jsiiObject



882
883
884
885
886
887
888
889
890
891
# File 'elasticsearch/cfn_domain.rb', line 882

def to_jsii
  result = {}
  result.merge!({
    "enabled" => @enabled,
    "identityPoolId" => @identity_pool_id,
    "roleArn" => @role_arn,
    "userPoolId" => @user_pool_id,
  })
  result.compact
end