# ConnectionInputProperty

A structure that is used to specify a connection to create or update.

- Source: Generated code
- Type last changed: v2.268.0 · 2 Sep 2026

## Example

```ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_glue as glue } from 'aws-cdk-lib';

declare const athenaProperties: any;
declare const connectionProperties: any;
declare const customAuthenticationCredentials: any;
declare const pythonProperties: any;
declare const sparkProperties: any;
declare const tokenUrlParametersMap: any;
const connectionInputProperty: glue.CfnConnection.ConnectionInputProperty = {
  connectionType: 'connectionType',

  // the properties below are optional
  athenaProperties: athenaProperties,
  authenticationConfiguration: {
    authenticationType: 'authenticationType',

    // the properties below are optional
    basicAuthenticationCredentials: {
      password: 'password',
      username: 'username',
    },
    customAuthenticationCredentials: customAuthenticationCredentials,
    kmsKeyArn: 'kmsKeyArn',
    oAuth2Properties: {
      authorizationCodeProperties: {
        authorizationCode: 'authorizationCode',
        redirectUri: 'redirectUri',
      },
      oAuth2ClientApplication: {
        awsManagedClientApplicationReference: 'awsManagedClientApplicationReference',
        userManagedClientApplicationClientId: 'userManagedClientApplicationClientId',
      },
      oAuth2Credentials: {
        accessToken: 'accessToken',
        jwtToken: 'jwtToken',
        refreshToken: 'refreshToken',
        userManagedClientApplicationClientSecret: 'userManagedClientApplicationClientSecret',
      },
      oAuth2GrantType: 'oAuth2GrantType',
      tokenUrl: 'tokenUrl',
      tokenUrlParametersMap: tokenUrlParametersMap,
    },
    secretArn: 'secretArn',
  },
  connectionProperties: connectionProperties,
  description: 'description',
  matchCriteria: ['matchCriteria'],
  name: 'name',
  physicalConnectionRequirements: {
    availabilityZone: 'availabilityZone',
    securityGroupIdList: ['securityGroupIdList'],
    subnetId: 'subnetId',
  },
  pythonProperties: pythonProperties,
  sparkProperties: sparkProperties,
  validateCredentials: false,
  validateForComputeEnvironments: ['validateForComputeEnvironments'],
};
```

## Properties

- `athenaProperties`: any — Connection properties specific to the Athena compute environment.

- `authenticationConfiguration`: [IResolvable](/cdk/api/v2/docs/aws-cdk-lib.IResolvable.html) | [CfnConnection.AuthenticationConfigurationProperty](/cdk/api/v2/docs/aws-cdk-lib.aws_glue.CfnConnection.AuthenticationConfigurationProperty.html) — The authentication properties of the connection.

- `connectionProperties`: any — These key-value pairs define parameters for the connection.

- `connectionType`: string (required) — The type of the connection. Currently, these types are supported:.

  - `JDBC` - Designates a connection to a database through Java Database Connectivity (JDBC).

  `JDBC` Connections use the following ConnectionParameters.

  - Required: All of ( `HOST` , `PORT` , `JDBC_ENGINE` ) or `JDBC_CONNECTION_URL` .
  - Required: All of ( `USERNAME` , `PASSWORD` ) or `SECRET_ID` .
  - Optional: `JDBC_ENFORCE_SSL` , `CUSTOM_JDBC_CERT` , `CUSTOM_JDBC_CERT_STRING` , `SKIP_CUSTOM_JDBC_CERT_VALIDATION` . These parameters are used to configure SSL with JDBC.
  - `KAFKA` - Designates a connection to an Apache Kafka streaming platform.

  `KAFKA` Connections use the following ConnectionParameters.

  - Required: `KAFKA_BOOTSTRAP_SERVERS` .
  - Optional: `KAFKA_SSL_ENABLED` , `KAFKA_CUSTOM_CERT` , `KAFKA_SKIP_CUSTOM_CERT_VALIDATION` . These parameters are used to configure SSL with `KAFKA` .
  - Optional: `KAFKA_CLIENT_KEYSTORE` , `KAFKA_CLIENT_KEYSTORE_PASSWORD` , `KAFKA_CLIENT_KEY_PASSWORD` , `ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD` , `ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD` . These parameters are used to configure TLS client configuration with SSL in `KAFKA` .
  - Optional: `KAFKA_SASL_MECHANISM` . Can be specified as `SCRAM-SHA-512` , `GSSAPI` , or `AWS_MSK_IAM` .
  - Optional: `KAFKA_SASL_SCRAM_USERNAME` , `KAFKA_SASL_SCRAM_PASSWORD` , `ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD` . These parameters are used to configure SASL/SCRAM-SHA-512 authentication with `KAFKA` .
  - Optional: `KAFKA_SASL_GSSAPI_KEYTAB` , `KAFKA_SASL_GSSAPI_KRB5_CONF` , `KAFKA_SASL_GSSAPI_SERVICE` , `KAFKA_SASL_GSSAPI_PRINCIPAL` . These parameters are used to configure SASL/GSSAPI authentication with `KAFKA` .
  - `MONGODB` - Designates a connection to a MongoDB document database.

  `MONGODB` Connections use the following ConnectionParameters.

  - Required: `CONNECTION_URL` .
  - Required: All of ( `USERNAME` , `PASSWORD` ) or `SECRET_ID` .
  - `VIEW_VALIDATION_REDSHIFT` - Designates a connection used for view validation by Amazon Redshift.
  - `VIEW_VALIDATION_ATHENA` - Designates a connection used for view validation by Amazon Athena.
  - `NETWORK` - Designates a network connection to a data source within an Amazon Virtual Private Cloud environment (Amazon VPC).

  `NETWORK` Connections do not require ConnectionParameters. Instead, provide a PhysicalConnectionRequirements.
  - `MARKETPLACE` - Uses configuration settings contained in a connector purchased from AWS Marketplace to read from and write to data stores that are not natively supported by AWS Glue .

  `MARKETPLACE` Connections use the following ConnectionParameters.

  - Required: `CONNECTOR_TYPE` , `CONNECTOR_URL` , `CONNECTOR_CLASS_NAME` , `CONNECTION_URL` .
  - Required for `JDBC` `CONNECTOR_TYPE` connections: All of ( `USERNAME` , `PASSWORD` ) or `SECRET_ID` .
  - `CUSTOM` - Uses configuration settings contained in a custom connector to read from and write to data stores that are not natively supported by AWS Glue .

  For more information on the connection parameters needed for a particular connector, see the documentation for the connector in [Adding an AWS Glue connection](https://docs.aws.amazon.com/glue/latest/dg/console-connections.html) in the AWS Glue User Guide.

  `SFTP` is not supported.

  For more information about how optional ConnectionProperties are used to configure features in AWS Glue , consult [AWS Glue connection properties](https://docs.aws.amazon.com/glue/latest/dg/connection-defining.html) .

  For more information about how optional ConnectionProperties are used to configure features in AWS Glue Studio, consult [Using connectors and connections](https://docs.aws.amazon.com/glue/latest/ug/connectors-chapter.html) .

- `description`: string — The description of the connection.

- `matchCriteria`: string[] — A list of criteria that can be used in selecting this connection.

- `name`: string — The name of the connection.

- `physicalConnectionRequirements`: [IResolvable](/cdk/api/v2/docs/aws-cdk-lib.IResolvable.html) | [CfnConnection.PhysicalConnectionRequirementsProperty](/cdk/api/v2/docs/aws-cdk-lib.aws_glue.CfnConnection.PhysicalConnectionRequirementsProperty.html) — The physical connection requirements, such as virtual private cloud (VPC) and `SecurityGroup` , that are needed to successfully make this connection.

- `pythonProperties`: any — Connection properties specific to the Python compute environment.

- `sparkProperties`: any — Connection properties specific to the Spark compute environment.

- `validateCredentials`: boolean | [IResolvable](/cdk/api/v2/docs/aws-cdk-lib.IResolvable.html) — A flag to validate the credentials during create connection.

  Default is true.

- `validateForComputeEnvironments`: string[] — The compute environments that the specified connection properties are validated against.
