Class: AWSCDK::Glue::CfnConnection::AuthenticationConfigurationInputProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
glue/cfn_connection.rb

Overview

A structure containing the authentication configuration in the CreateConnection request.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(authentication_type:, basic_authentication_credentials: nil, custom_authentication_credentials: nil, kms_key_arn: nil, o_auth2_properties: nil, secret_arn: nil) ⇒ AuthenticationConfigurationInputProperty

Returns a new instance of AuthenticationConfigurationInputProperty.

Parameters:

  • authentication_type (String)

    A structure containing the authentication configuration in the CreateConnection request.

  • basic_authentication_credentials (AWSCDK::IResolvable, AWSCDK::Glue::CfnConnection::BasicAuthenticationCredentialsProperty, nil) (defaults to: nil)

    The credentials used when the authentication type is basic authentication.

  • custom_authentication_credentials (Object, nil) (defaults to: nil)

    The credentials used when the authentication type is custom authentication.

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

    The ARN of the KMS key used to encrypt the connection.

  • o_auth2_properties (AWSCDK::IResolvable, AWSCDK::Glue::CfnConnection::OAuth2PropertiesInputProperty, nil) (defaults to: nil)

    The properties for OAuth2 authentication in the CreateConnection request.

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

    The secret manager ARN to store credentials in the CreateConnection request.



519
520
521
522
523
524
525
526
527
528
529
530
531
532
# File 'glue/cfn_connection.rb', line 519

def initialize(authentication_type:, basic_authentication_credentials: nil, custom_authentication_credentials: nil, kms_key_arn: nil, o_auth2_properties: nil, secret_arn: nil)
  @authentication_type = authentication_type
  Jsii::Type.check_type(@authentication_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "authenticationType")
  @basic_authentication_credentials = basic_authentication_credentials.is_a?(Hash) ? ::AWSCDK::Glue::CfnConnection::BasicAuthenticationCredentialsProperty.new(**basic_authentication_credentials.transform_keys(&:to_sym)) : basic_authentication_credentials
  Jsii::Type.check_type(@basic_authentication_credentials, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19nbHVlLkNmbkNvbm5lY3Rpb24uQmFzaWNBdXRoZW50aWNhdGlvbkNyZWRlbnRpYWxzUHJvcGVydHkifV19fQ==")), "basicAuthenticationCredentials") unless @basic_authentication_credentials.nil?
  @custom_authentication_credentials = custom_authentication_credentials
  Jsii::Type.check_type(@custom_authentication_credentials, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "customAuthenticationCredentials") unless @custom_authentication_credentials.nil?
  @kms_key_arn = kms_key_arn
  Jsii::Type.check_type(@kms_key_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "kmsKeyArn") unless @kms_key_arn.nil?
  @o_auth2_properties = o_auth2_properties.is_a?(Hash) ? ::AWSCDK::Glue::CfnConnection::OAuth2PropertiesInputProperty.new(**o_auth2_properties.transform_keys(&:to_sym)) : o_auth2_properties
  Jsii::Type.check_type(@o_auth2_properties, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19nbHVlLkNmbkNvbm5lY3Rpb24uT0F1dGgyUHJvcGVydGllc0lucHV0UHJvcGVydHkifV19fQ==")), "oAuth2Properties") unless @o_auth2_properties.nil?
  @secret_arn = secret_arn
  Jsii::Type.check_type(@secret_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "secretArn") unless @secret_arn.nil?
end

Instance Attribute Details

#authentication_typeString (readonly)

A structure containing the authentication configuration in the CreateConnection request.



538
539
540
# File 'glue/cfn_connection.rb', line 538

def authentication_type
  @authentication_type
end

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

The credentials used when the authentication type is basic authentication.



543
544
545
# File 'glue/cfn_connection.rb', line 543

def basic_authentication_credentials
  @basic_authentication_credentials
end

#custom_authentication_credentialsObject? (readonly)

The credentials used when the authentication type is custom authentication.



548
549
550
# File 'glue/cfn_connection.rb', line 548

def custom_authentication_credentials
  @custom_authentication_credentials
end

#kms_key_arnString? (readonly)

The ARN of the KMS key used to encrypt the connection.

Only taken an as input in the request and stored in the Secret Manager.



555
556
557
# File 'glue/cfn_connection.rb', line 555

def kms_key_arn
  @kms_key_arn
end

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

The properties for OAuth2 authentication in the CreateConnection request.



560
561
562
# File 'glue/cfn_connection.rb', line 560

def o_auth2_properties
  @o_auth2_properties
end

#secret_arnString? (readonly)

The secret manager ARN to store credentials in the CreateConnection request.



565
566
567
# File 'glue/cfn_connection.rb', line 565

def secret_arn
  @secret_arn
end

Class Method Details

.jsii_propertiesObject



567
568
569
570
571
572
573
574
575
576
# File 'glue/cfn_connection.rb', line 567

def self.jsii_properties
  {
    :authentication_type => "authenticationType",
    :basic_authentication_credentials => "basicAuthenticationCredentials",
    :custom_authentication_credentials => "customAuthenticationCredentials",
    :kms_key_arn => "kmsKeyArn",
    :o_auth2_properties => "oAuth2Properties",
    :secret_arn => "secretArn",
  }
end

Instance Method Details

#to_jsiiObject



578
579
580
581
582
583
584
585
586
587
588
589
# File 'glue/cfn_connection.rb', line 578

def to_jsii
  result = {}
  result.merge!({
    "authenticationType" => @authentication_type,
    "basicAuthenticationCredentials" => @basic_authentication_credentials,
    "customAuthenticationCredentials" => @custom_authentication_credentials,
    "kmsKeyArn" => @kms_key_arn,
    "oAuth2Properties" => @o_auth2_properties,
    "secretArn" => @secret_arn,
  })
  result.compact
end