Class: AWSCDK::OpenSearchService::CfnDomain::IdentityCenterOptionsProperty

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

Overview

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.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(enabled_api_access: nil, identity_center_application_arn: nil, identity_center_instance_arn: nil, identity_store_id: nil, roles_key: nil, subject_key: nil) ⇒ IdentityCenterOptionsProperty

Returns a new instance of IdentityCenterOptionsProperty.

Parameters:

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

    Indicates whether IAM Identity Center is enabled for the application.

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

    The ARN of the IAM Identity Center application that integrates with Amazon OpenSearch Service.

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

    The Amazon Resource Name (ARN) of the IAM Identity Center instance.

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

    The identifier of the IAM Identity Store.

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

    Specifies the attribute that contains the backend role identifier (such as group name or group ID) in IAM Identity Center.

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

    Specifies the attribute that contains the subject identifier (such as username, user ID, or email) in IAM Identity Center.



1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
# File 'open_search_service/cfn_domain.rb', line 1729

def initialize(enabled_api_access: nil, identity_center_application_arn: nil, identity_center_instance_arn: nil, identity_store_id: nil, roles_key: nil, subject_key: nil)
  @enabled_api_access = enabled_api_access
  Jsii::Type.check_type(@enabled_api_access, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "enabledApiAccess") unless @enabled_api_access.nil?
  @identity_center_application_arn = identity_center_application_arn
  Jsii::Type.check_type(@identity_center_application_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "identityCenterApplicationArn") unless @identity_center_application_arn.nil?
  @identity_center_instance_arn = identity_center_instance_arn
  Jsii::Type.check_type(@identity_center_instance_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "identityCenterInstanceArn") unless @identity_center_instance_arn.nil?
  @identity_store_id = identity_store_id
  Jsii::Type.check_type(@identity_store_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "identityStoreId") unless @identity_store_id.nil?
  @roles_key = roles_key
  Jsii::Type.check_type(@roles_key, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "rolesKey") unless @roles_key.nil?
  @subject_key = subject_key
  Jsii::Type.check_type(@subject_key, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "subjectKey") unless @subject_key.nil?
end

Instance Attribute Details

#enabled_api_accessBoolean, ... (readonly)

Indicates whether IAM Identity Center is enabled for the application.



1748
1749
1750
# File 'open_search_service/cfn_domain.rb', line 1748

def enabled_api_access
  @enabled_api_access
end

#identity_center_application_arnString? (readonly)

The ARN of the IAM Identity Center application that integrates with Amazon OpenSearch Service.



1753
1754
1755
# File 'open_search_service/cfn_domain.rb', line 1753

def identity_center_application_arn
  @identity_center_application_arn
end

#identity_center_instance_arnString? (readonly)

The Amazon Resource Name (ARN) of the IAM Identity Center instance.



1758
1759
1760
# File 'open_search_service/cfn_domain.rb', line 1758

def identity_center_instance_arn
  @identity_center_instance_arn
end

#identity_store_idString? (readonly)

The identifier of the IAM Identity Store.



1763
1764
1765
# File 'open_search_service/cfn_domain.rb', line 1763

def identity_store_id
  @identity_store_id
end

#roles_keyString? (readonly)

Specifies the attribute that contains the backend role identifier (such as group name or group ID) in IAM Identity Center.



1768
1769
1770
# File 'open_search_service/cfn_domain.rb', line 1768

def roles_key
  @roles_key
end

#subject_keyString? (readonly)

Specifies the attribute that contains the subject identifier (such as username, user ID, or email) in IAM Identity Center.



1773
1774
1775
# File 'open_search_service/cfn_domain.rb', line 1773

def subject_key
  @subject_key
end

Class Method Details

.jsii_propertiesObject



1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
# File 'open_search_service/cfn_domain.rb', line 1775

def self.jsii_properties
  {
    :enabled_api_access => "enabledApiAccess",
    :identity_center_application_arn => "identityCenterApplicationArn",
    :identity_center_instance_arn => "identityCenterInstanceArn",
    :identity_store_id => "identityStoreId",
    :roles_key => "rolesKey",
    :subject_key => "subjectKey",
  }
end

Instance Method Details

#to_jsiiObject



1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
# File 'open_search_service/cfn_domain.rb', line 1786

def to_jsii
  result = {}
  result.merge!({
    "enabledApiAccess" => @enabled_api_access,
    "identityCenterApplicationArn" => @identity_center_application_arn,
    "identityCenterInstanceArn" => @identity_center_instance_arn,
    "identityStoreId" => @identity_store_id,
    "rolesKey" => @roles_key,
    "subjectKey" => @subject_key,
  })
  result.compact
end