Class: AWSCDK::QBusiness::CfnDataAccessor::DataAccessorAuthenticationDetailProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
q_business/cfn_data_accessor.rb

Overview

Contains the authentication configuration details for a data accessor.

This structure defines how the ISV authenticates when accessing data through the data accessor.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(authentication_type:, authentication_configuration: nil, external_ids: nil) ⇒ DataAccessorAuthenticationDetailProperty

Returns a new instance of DataAccessorAuthenticationDetailProperty.

Parameters:



865
866
867
868
869
870
871
872
# File 'q_business/cfn_data_accessor.rb', line 865

def initialize(authentication_type:, authentication_configuration: nil, external_ids: nil)
  @authentication_type = authentication_type
  Jsii::Type.check_type(@authentication_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "authenticationType")
  @authentication_configuration = authentication_configuration.is_a?(Hash) ? ::AWSCDK::QBusiness::CfnDataAccessor::DataAccessorAuthenticationConfigurationProperty.new(**authentication_configuration.transform_keys(&:to_sym)) : authentication_configuration
  Jsii::Type.check_type(@authentication_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19xYnVzaW5lc3MuQ2ZuRGF0YUFjY2Vzc29yLkRhdGFBY2Nlc3NvckF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "authenticationConfiguration") unless @authentication_configuration.nil?
  @external_ids = external_ids
  Jsii::Type.check_type(@external_ids, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "externalIds") unless @external_ids.nil?
end

Instance Attribute Details

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

The specific authentication configuration based on the authentication type.



888
889
890
# File 'q_business/cfn_data_accessor.rb', line 888

def authentication_configuration
  @authentication_configuration
end

#authentication_typeString (readonly)

The type of authentication to use for the data accessor.

This determines how the ISV authenticates when accessing data. You can use one of two authentication types:

  • AWS_IAM_IDC_TTI - Authentication using IAM Identity Center Trusted Token Issuer (TTI). This authentication type allows the ISV to use a trusted token issuer to generate tokens for accessing the data.
  • AWS_IAM_IDC_AUTH_CODE - Authentication using IAM Identity Center authorization code flow. This authentication type uses the standard OAuth 2.0 authorization code flow for authentication.


883
884
885
# File 'q_business/cfn_data_accessor.rb', line 883

def authentication_type
  @authentication_type
end

#external_idsArray<String>? (readonly)

A list of external identifiers associated with this authentication configuration.

These are used to correlate the data accessor with external systems.



895
896
897
# File 'q_business/cfn_data_accessor.rb', line 895

def external_ids
  @external_ids
end

Class Method Details

.jsii_propertiesObject



897
898
899
900
901
902
903
# File 'q_business/cfn_data_accessor.rb', line 897

def self.jsii_properties
  {
    :authentication_type => "authenticationType",
    :authentication_configuration => "authenticationConfiguration",
    :external_ids => "externalIds",
  }
end

Instance Method Details

#to_jsiiObject



905
906
907
908
909
910
911
912
913
# File 'q_business/cfn_data_accessor.rb', line 905

def to_jsii
  result = {}
  result.merge!({
    "authenticationType" => @authentication_type,
    "authenticationConfiguration" => @authentication_configuration,
    "externalIds" => @external_ids,
  })
  result.compact
end