From a8db47fcda3007ab20838f8772b22effa04e8bdd Mon Sep 17 00:00:00 2001 From: awstools Date: Mon, 23 Sep 2024 18:20:04 +0000 Subject: [PATCH] feat(client-glue): Added AthenaProperties parameter to Glue Connections, allowing Athena to store service specific properties on Glue Connections. --- .../src/commands/CreateConnectionCommand.ts | 13 +++-- .../src/commands/GetConnectionCommand.ts | 3 ++ .../src/commands/GetConnectionsCommand.ts | 3 ++ .../src/commands/TestConnectionCommand.ts | 10 ++-- .../src/commands/UpdateConnectionCommand.ts | 13 +++-- clients/client-glue/src/models/models_0.ts | 34 ++++++++++-- clients/client-glue/src/models/models_1.ts | 31 +++++++++++ clients/client-glue/src/models/models_2.ts | 30 +++++++++++ .../client-glue/src/protocols/Aws_json1_1.ts | 5 ++ codegen/sdk-codegen/aws-models/glue.json | 54 ++++++++++++++++--- 10 files changed, 176 insertions(+), 20 deletions(-) diff --git a/clients/client-glue/src/commands/CreateConnectionCommand.ts b/clients/client-glue/src/commands/CreateConnectionCommand.ts index ba2c934620f52..0ec455507ca4d 100644 --- a/clients/client-glue/src/commands/CreateConnectionCommand.ts +++ b/clients/client-glue/src/commands/CreateConnectionCommand.ts @@ -6,7 +6,11 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient"; -import { CreateConnectionRequest, CreateConnectionResponse } from "../models/models_1"; +import { + CreateConnectionRequest, + CreateConnectionRequestFilterSensitiveLog, + CreateConnectionResponse, +} from "../models/models_1"; import { de_CreateConnectionCommand, se_CreateConnectionCommand } from "../protocols/Aws_json1_1"; /** @@ -48,6 +52,9 @@ export interface CreateConnectionCommandOutput extends CreateConnectionResponse, * ConnectionProperties: { // ConnectionProperties // required * "": "STRING_VALUE", * }, + * AthenaProperties: { // PropertyMap + * "": "STRING_VALUE", + * }, * PhysicalConnectionRequirements: { // PhysicalConnectionRequirements * SubnetId: "STRING_VALUE", * SecurityGroupIdList: [ // SecurityGroupIdList @@ -57,7 +64,6 @@ export interface CreateConnectionCommandOutput extends CreateConnectionResponse, * }, * AuthenticationConfiguration: { // AuthenticationConfigurationInput * AuthenticationType: "BASIC" || "OAUTH2" || "CUSTOM", - * SecretArn: "STRING_VALUE", * OAuth2Properties: { // OAuth2PropertiesInput * OAuth2GrantType: "AUTHORIZATION_CODE" || "CLIENT_CREDENTIALS" || "JWT_BEARER", * OAuth2ClientApplication: { // OAuth2ClientApplication @@ -73,6 +79,7 @@ export interface CreateConnectionCommandOutput extends CreateConnectionResponse, * RedirectUri: "STRING_VALUE", * }, * }, + * SecretArn: "STRING_VALUE", * }, * ValidateCredentials: true || false, * }, @@ -131,7 +138,7 @@ export class CreateConnectionCommand extends $Command }) .s("AWSGlue", "CreateConnection", {}) .n("GlueClient", "CreateConnectionCommand") - .f(void 0, void 0) + .f(CreateConnectionRequestFilterSensitiveLog, void 0) .ser(se_CreateConnectionCommand) .de(de_CreateConnectionCommand) .build() { diff --git a/clients/client-glue/src/commands/GetConnectionCommand.ts b/clients/client-glue/src/commands/GetConnectionCommand.ts index aa3823fe18b45..c2b5817378e67 100644 --- a/clients/client-glue/src/commands/GetConnectionCommand.ts +++ b/clients/client-glue/src/commands/GetConnectionCommand.ts @@ -53,6 +53,9 @@ export interface GetConnectionCommandOutput extends GetConnectionResponse, __Met * // ConnectionProperties: { // ConnectionProperties * // "": "STRING_VALUE", * // }, + * // AthenaProperties: { // PropertyMap + * // "": "STRING_VALUE", + * // }, * // PhysicalConnectionRequirements: { // PhysicalConnectionRequirements * // SubnetId: "STRING_VALUE", * // SecurityGroupIdList: [ // SecurityGroupIdList diff --git a/clients/client-glue/src/commands/GetConnectionsCommand.ts b/clients/client-glue/src/commands/GetConnectionsCommand.ts index eb9efd91facaa..a0780864a417e 100644 --- a/clients/client-glue/src/commands/GetConnectionsCommand.ts +++ b/clients/client-glue/src/commands/GetConnectionsCommand.ts @@ -61,6 +61,9 @@ export interface GetConnectionsCommandOutput extends GetConnectionsResponse, __M * // ConnectionProperties: { // ConnectionProperties * // "": "STRING_VALUE", * // }, + * // AthenaProperties: { // PropertyMap + * // "": "STRING_VALUE", + * // }, * // PhysicalConnectionRequirements: { // PhysicalConnectionRequirements * // SubnetId: "STRING_VALUE", * // SecurityGroupIdList: [ // SecurityGroupIdList diff --git a/clients/client-glue/src/commands/TestConnectionCommand.ts b/clients/client-glue/src/commands/TestConnectionCommand.ts index 14cc24461f99f..677ef30ad3437 100644 --- a/clients/client-glue/src/commands/TestConnectionCommand.ts +++ b/clients/client-glue/src/commands/TestConnectionCommand.ts @@ -6,7 +6,11 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient"; -import { TestConnectionRequest, TestConnectionResponse } from "../models/models_2"; +import { + TestConnectionRequest, + TestConnectionRequestFilterSensitiveLog, + TestConnectionResponse, +} from "../models/models_2"; import { de_TestConnectionCommand, se_TestConnectionCommand } from "../protocols/Aws_json1_1"; /** @@ -46,7 +50,6 @@ export interface TestConnectionCommandOutput extends TestConnectionResponse, __M * }, * AuthenticationConfiguration: { // AuthenticationConfigurationInput * AuthenticationType: "BASIC" || "OAUTH2" || "CUSTOM", - * SecretArn: "STRING_VALUE", * OAuth2Properties: { // OAuth2PropertiesInput * OAuth2GrantType: "AUTHORIZATION_CODE" || "CLIENT_CREDENTIALS" || "JWT_BEARER", * OAuth2ClientApplication: { // OAuth2ClientApplication @@ -62,6 +65,7 @@ export interface TestConnectionCommandOutput extends TestConnectionResponse, __M * RedirectUri: "STRING_VALUE", * }, * }, + * SecretArn: "STRING_VALUE", * }, * }, * }; @@ -126,7 +130,7 @@ export class TestConnectionCommand extends $Command }) .s("AWSGlue", "TestConnection", {}) .n("GlueClient", "TestConnectionCommand") - .f(void 0, void 0) + .f(TestConnectionRequestFilterSensitiveLog, void 0) .ser(se_TestConnectionCommand) .de(de_TestConnectionCommand) .build() { diff --git a/clients/client-glue/src/commands/UpdateConnectionCommand.ts b/clients/client-glue/src/commands/UpdateConnectionCommand.ts index f0d8d202953dc..1e0045800732b 100644 --- a/clients/client-glue/src/commands/UpdateConnectionCommand.ts +++ b/clients/client-glue/src/commands/UpdateConnectionCommand.ts @@ -6,7 +6,11 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient"; -import { UpdateConnectionRequest, UpdateConnectionResponse } from "../models/models_2"; +import { + UpdateConnectionRequest, + UpdateConnectionRequestFilterSensitiveLog, + UpdateConnectionResponse, +} from "../models/models_2"; import { de_UpdateConnectionCommand, se_UpdateConnectionCommand } from "../protocols/Aws_json1_1"; /** @@ -48,6 +52,9 @@ export interface UpdateConnectionCommandOutput extends UpdateConnectionResponse, * ConnectionProperties: { // ConnectionProperties // required * "": "STRING_VALUE", * }, + * AthenaProperties: { // PropertyMap + * "": "STRING_VALUE", + * }, * PhysicalConnectionRequirements: { // PhysicalConnectionRequirements * SubnetId: "STRING_VALUE", * SecurityGroupIdList: [ // SecurityGroupIdList @@ -57,7 +64,6 @@ export interface UpdateConnectionCommandOutput extends UpdateConnectionResponse, * }, * AuthenticationConfiguration: { // AuthenticationConfigurationInput * AuthenticationType: "BASIC" || "OAUTH2" || "CUSTOM", - * SecretArn: "STRING_VALUE", * OAuth2Properties: { // OAuth2PropertiesInput * OAuth2GrantType: "AUTHORIZATION_CODE" || "CLIENT_CREDENTIALS" || "JWT_BEARER", * OAuth2ClientApplication: { // OAuth2ClientApplication @@ -73,6 +79,7 @@ export interface UpdateConnectionCommandOutput extends UpdateConnectionResponse, * RedirectUri: "STRING_VALUE", * }, * }, + * SecretArn: "STRING_VALUE", * }, * ValidateCredentials: true || false, * }, @@ -123,7 +130,7 @@ export class UpdateConnectionCommand extends $Command }) .s("AWSGlue", "UpdateConnection", {}) .n("GlueClient", "UpdateConnectionCommand") - .f(void 0, void 0) + .f(UpdateConnectionRequestFilterSensitiveLog, void 0) .ser(se_UpdateConnectionCommand) .de(de_UpdateConnectionCommand) .build() { diff --git a/clients/client-glue/src/models/models_0.ts b/clients/client-glue/src/models/models_0.ts index 62fa15fcc07ad..59b93d7347981 100644 --- a/clients/client-glue/src/models/models_0.ts +++ b/clients/client-glue/src/models/models_0.ts @@ -810,16 +810,16 @@ export interface AuthenticationConfigurationInput { AuthenticationType?: AuthenticationType; /** - *

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

+ *

The properties for OAuth2 authentication in the CreateConnection request.

* @public */ - SecretArn?: string; + OAuth2Properties?: OAuth2PropertiesInput; /** - *

The properties for OAuth2 authentication in the CreateConnection request.

+ *

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

* @public */ - OAuth2Properties?: OAuth2PropertiesInput; + SecretArn?: string; } /** @@ -9243,6 +9243,32 @@ export interface CancelDataQualityRuleRecommendationRunRequest { */ export interface CancelDataQualityRuleRecommendationRunResponse {} +/** + * @internal + */ +export const AuthorizationCodePropertiesFilterSensitiveLog = (obj: AuthorizationCodeProperties): any => ({ + ...obj, + ...(obj.AuthorizationCode && { AuthorizationCode: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const OAuth2PropertiesInputFilterSensitiveLog = (obj: OAuth2PropertiesInput): any => ({ + ...obj, + ...(obj.AuthorizationCodeProperties && { + AuthorizationCodeProperties: AuthorizationCodePropertiesFilterSensitiveLog(obj.AuthorizationCodeProperties), + }), +}); + +/** + * @internal + */ +export const AuthenticationConfigurationInputFilterSensitiveLog = (obj: AuthenticationConfigurationInput): any => ({ + ...obj, + ...(obj.OAuth2Properties && { OAuth2Properties: OAuth2PropertiesInputFilterSensitiveLog(obj.OAuth2Properties) }), +}); + /** * @internal */ diff --git a/clients/client-glue/src/models/models_1.ts b/clients/client-glue/src/models/models_1.ts index df56b64da2885..2fd21983ad6e1 100644 --- a/clients/client-glue/src/models/models_1.ts +++ b/clients/client-glue/src/models/models_1.ts @@ -7,6 +7,7 @@ import { Action, AuthenticationConfiguration, AuthenticationConfigurationInput, + AuthenticationConfigurationInputFilterSensitiveLog, Blueprint, Column, ConnectionsList, @@ -715,6 +716,12 @@ export interface ConnectionInput { */ ConnectionProperties: Partial> | undefined; + /** + *

This field is not currently used.

+ * @public + */ + AthenaProperties?: Record; + /** *

The physical connection requirements, such as virtual private cloud (VPC) and SecurityGroup, that are needed to successfully make this connection.

* @public @@ -5881,6 +5888,12 @@ export interface Connection { */ ConnectionProperties?: Partial>; + /** + *

This field is not currently used.

+ * @public + */ + AthenaProperties?: Record; + /** *

The physical connection requirements, such as virtual private cloud (VPC) and SecurityGroup, that are needed to make this connection successfully.

* @public @@ -7837,6 +7850,24 @@ export interface GetMLTaskRunsResponse { NextToken?: string; } +/** + * @internal + */ +export const ConnectionInputFilterSensitiveLog = (obj: ConnectionInput): any => ({ + ...obj, + ...(obj.AuthenticationConfiguration && { + AuthenticationConfiguration: AuthenticationConfigurationInputFilterSensitiveLog(obj.AuthenticationConfiguration), + }), +}); + +/** + * @internal + */ +export const CreateConnectionRequestFilterSensitiveLog = (obj: CreateConnectionRequest): any => ({ + ...obj, + ...(obj.ConnectionInput && { ConnectionInput: ConnectionInputFilterSensitiveLog(obj.ConnectionInput) }), +}); + /** * @internal */ diff --git a/clients/client-glue/src/models/models_2.ts b/clients/client-glue/src/models/models_2.ts index c3b1f64baa835..85e09ebf8b3b0 100644 --- a/clients/client-glue/src/models/models_2.ts +++ b/clients/client-glue/src/models/models_2.ts @@ -6,6 +6,7 @@ import { GlueServiceException as __BaseException } from "./GlueServiceException" import { AuditContext, AuthenticationConfigurationInput, + AuthenticationConfigurationInputFilterSensitiveLog, CrawlerTargets, CustomEntityType, DataSource, @@ -40,6 +41,7 @@ import { ColumnStatistics, Compatibility, ConnectionInput, + ConnectionInputFilterSensitiveLog, ConnectionPropertyKey, ConnectionType, CsvHeaderOption, @@ -7997,3 +7999,31 @@ export const ListDataQualityStatisticsResponseFilterSensitiveLog = (obj: ListDat ...obj, ...(obj.Statistics && { Statistics: obj.Statistics.map((item) => StatisticSummaryFilterSensitiveLog(item)) }), }); + +/** + * @internal + */ +export const TestConnectionInputFilterSensitiveLog = (obj: TestConnectionInput): any => ({ + ...obj, + ...(obj.AuthenticationConfiguration && { + AuthenticationConfiguration: AuthenticationConfigurationInputFilterSensitiveLog(obj.AuthenticationConfiguration), + }), +}); + +/** + * @internal + */ +export const TestConnectionRequestFilterSensitiveLog = (obj: TestConnectionRequest): any => ({ + ...obj, + ...(obj.TestConnectionInput && { + TestConnectionInput: TestConnectionInputFilterSensitiveLog(obj.TestConnectionInput), + }), +}); + +/** + * @internal + */ +export const UpdateConnectionRequestFilterSensitiveLog = (obj: UpdateConnectionRequest): any => ({ + ...obj, + ...(obj.ConnectionInput && { ConnectionInput: ConnectionInputFilterSensitiveLog(obj.ConnectionInput) }), +}); diff --git a/clients/client-glue/src/protocols/Aws_json1_1.ts b/clients/client-glue/src/protocols/Aws_json1_1.ts index 0780b0e1ffe62..0afae19e24d60 100644 --- a/clients/client-glue/src/protocols/Aws_json1_1.ts +++ b/clients/client-glue/src/protocols/Aws_json1_1.ts @@ -10930,6 +10930,8 @@ const se_PIIDetection = (input: PIIDetection, context: __SerdeContext): any => { // se_ProfileConfiguration omitted. +// se_PropertyMap omitted. + // se_PropertyPredicate omitted. // se_PublicKeysList omitted. @@ -12158,6 +12160,7 @@ const de_CompactionMetrics = (output: any, context: __SerdeContext): CompactionM */ const de_Connection = (output: any, context: __SerdeContext): Connection => { return take(output, { + AthenaProperties: _json, AuthenticationConfiguration: _json, ConnectionProperties: _json, ConnectionType: __expectString, @@ -14579,6 +14582,8 @@ const de_PIIDetection = (output: any, context: __SerdeContext): PIIDetection => // de_ProfileConfiguration omitted. +// de_PropertyMap omitted. + // de_PublicKeysList omitted. // de_PutDataCatalogEncryptionSettingsResponse omitted. diff --git a/codegen/sdk-codegen/aws-models/glue.json b/codegen/sdk-codegen/aws-models/glue.json index a2e31dd62d562..32c8ff979bc23 100644 --- a/codegen/sdk-codegen/aws-models/glue.json +++ b/codegen/sdk-codegen/aws-models/glue.json @@ -2465,17 +2465,17 @@ "smithy.api#documentation": "

A structure containing the authentication configuration in the CreateConnection request.

" } }, - "SecretArn": { - "target": "com.amazonaws.glue#SecretArn", - "traits": { - "smithy.api#documentation": "

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

" - } - }, "OAuth2Properties": { "target": "com.amazonaws.glue#OAuth2PropertiesInput", "traits": { "smithy.api#documentation": "

The properties for OAuth2 authentication in the CreateConnection request.

" } + }, + "SecretArn": { + "target": "com.amazonaws.glue#SecretArn", + "traits": { + "smithy.api#documentation": "

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

" + } } }, "traits": { @@ -2512,7 +2512,8 @@ "min": 1, "max": 4096 }, - "smithy.api#pattern": "^\\S+$" + "smithy.api#pattern": "^\\S+$", + "smithy.api#sensitive": {} } }, "com.amazonaws.glue#AuthorizationCodeProperties": { @@ -6860,6 +6861,12 @@ "smithy.api#documentation": "

These key-value pairs define parameters for the connection:

\n
    \n
  • \n

    \n HOST - The host URI: either the\n fully qualified domain name (FQDN) or the IPv4 address of\n the database host.

    \n
  • \n
  • \n

    \n PORT - The port number, between\n 1024 and 65535, of the port on which the database host is\n listening for database connections.

    \n
  • \n
  • \n

    \n USER_NAME - The name under which\n to log in to the database. The value string for USER_NAME is \"USERNAME\".

    \n
  • \n
  • \n

    \n PASSWORD - A password,\n if one is used, for the user name.

    \n
  • \n
  • \n

    \n ENCRYPTED_PASSWORD - When you enable connection password protection by setting ConnectionPasswordEncryption in the Data Catalog encryption settings, this field stores the encrypted password.

    \n
  • \n
  • \n

    \n JDBC_DRIVER_JAR_URI - The Amazon Simple Storage Service (Amazon S3) path of the\n JAR file that contains the JDBC driver to use.

    \n
  • \n
  • \n

    \n JDBC_DRIVER_CLASS_NAME - The class name of the JDBC driver to use.

    \n
  • \n
  • \n

    \n JDBC_ENGINE - The name of the JDBC engine to use.

    \n
  • \n
  • \n

    \n JDBC_ENGINE_VERSION - The version of the JDBC engine to use.

    \n
  • \n
  • \n

    \n CONFIG_FILES - (Reserved for future use.)

    \n
  • \n
  • \n

    \n INSTANCE_ID - The instance ID to use.

    \n
  • \n
  • \n

    \n JDBC_CONNECTION_URL - The URL for connecting to a JDBC data source.

    \n
  • \n
  • \n

    \n JDBC_ENFORCE_SSL - A Boolean string (true, false) specifying whether Secure\n Sockets Layer (SSL) with hostname matching is enforced for the JDBC connection on the\n client. The default is false.

    \n
  • \n
  • \n

    \n CUSTOM_JDBC_CERT - An Amazon S3 location specifying the customer's root certificate. Glue uses this root certificate to validate the customer’s certificate when connecting to the customer database. Glue only handles X.509 certificates. The certificate provided must be DER-encoded and supplied in Base64 encoding PEM format.

    \n
  • \n
  • \n

    \n SKIP_CUSTOM_JDBC_CERT_VALIDATION - By default, this is false. Glue validates the Signature algorithm and Subject Public Key Algorithm for the customer certificate. The only permitted algorithms for the Signature algorithm are SHA256withRSA, SHA384withRSA or SHA512withRSA. For the Subject Public Key Algorithm, the key length must be at least 2048. You can set the value of this property to true to skip Glue’s validation of the customer certificate.

    \n
  • \n
  • \n

    \n CUSTOM_JDBC_CERT_STRING - A custom JDBC certificate string which is used for domain match or distinguished name match to prevent a man-in-the-middle attack. In Oracle database, this is used as the SSL_SERVER_CERT_DN; in Microsoft SQL Server, this is used as the hostNameInCertificate.

    \n
  • \n
  • \n

    \n CONNECTION_URL - The URL for connecting to a general (non-JDBC) data source.

    \n
  • \n
  • \n

    \n SECRET_ID - The secret ID used for the secret manager of credentials.

    \n
  • \n
  • \n

    \n CONNECTOR_URL - The connector URL for a MARKETPLACE or CUSTOM connection.

    \n
  • \n
  • \n

    \n CONNECTOR_TYPE - The connector type for a MARKETPLACE or CUSTOM connection.

    \n
  • \n
  • \n

    \n CONNECTOR_CLASS_NAME - The connector class name for a MARKETPLACE or CUSTOM connection.

    \n
  • \n
  • \n

    \n KAFKA_BOOTSTRAP_SERVERS - A comma-separated list of host and port pairs that are the addresses of the Apache Kafka brokers in a Kafka cluster to which a Kafka client will connect to and bootstrap itself.

    \n
  • \n
  • \n

    \n KAFKA_SSL_ENABLED - Whether to enable or disable SSL on an Apache Kafka connection. Default value is \"true\".

    \n
  • \n
  • \n

    \n KAFKA_CUSTOM_CERT - The Amazon S3 URL for the private CA cert file (.pem format). The default is an empty string.

    \n
  • \n
  • \n

    \n KAFKA_SKIP_CUSTOM_CERT_VALIDATION - Whether to skip the validation of the CA cert file or not. Glue validates for three algorithms: SHA256withRSA, SHA384withRSA and SHA512withRSA. Default value is \"false\".

    \n
  • \n
  • \n

    \n KAFKA_CLIENT_KEYSTORE - The Amazon S3 location of the client keystore file for Kafka client side authentication (Optional).

    \n
  • \n
  • \n

    \n KAFKA_CLIENT_KEYSTORE_PASSWORD - The password to access the provided keystore (Optional).

    \n
  • \n
  • \n

    \n KAFKA_CLIENT_KEY_PASSWORD - A keystore can consist of multiple keys, so this is the password to access the client key to be used with the Kafka server side key (Optional).

    \n
  • \n
  • \n

    \n ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD - The encrypted version of the Kafka client keystore password (if the user has the Glue encrypt passwords setting selected).

    \n
  • \n
  • \n

    \n ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD - The encrypted version of the Kafka client key password (if the user has the Glue encrypt passwords setting selected).

    \n
  • \n
  • \n

    \n KAFKA_SASL_MECHANISM - \"SCRAM-SHA-512\", \"GSSAPI\", \"AWS_MSK_IAM\", or \"PLAIN\". These are the supported SASL Mechanisms.

    \n
  • \n
  • \n

    \n KAFKA_SASL_PLAIN_USERNAME - A plaintext username used to authenticate with the \"PLAIN\" mechanism.

    \n
  • \n
  • \n

    \n KAFKA_SASL_PLAIN_PASSWORD - A plaintext password used to authenticate with the \"PLAIN\" mechanism.

    \n
  • \n
  • \n

    \n ENCRYPTED_KAFKA_SASL_PLAIN_PASSWORD - The encrypted version of the Kafka SASL PLAIN password (if the user has the Glue encrypt passwords setting selected).

    \n
  • \n
  • \n

    \n KAFKA_SASL_SCRAM_USERNAME - A plaintext username used to authenticate with the \"SCRAM-SHA-512\" mechanism.

    \n
  • \n
  • \n

    \n KAFKA_SASL_SCRAM_PASSWORD - A plaintext password used to authenticate with the \"SCRAM-SHA-512\" mechanism.

    \n
  • \n
  • \n

    \n ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD - The encrypted version of the Kafka SASL SCRAM password (if the user has the Glue encrypt passwords setting selected).

    \n
  • \n
  • \n

    \n KAFKA_SASL_SCRAM_SECRETS_ARN - The Amazon Resource Name of a secret in Amazon Web Services Secrets Manager.

    \n
  • \n
  • \n

    \n KAFKA_SASL_GSSAPI_KEYTAB - The S3 location of a Kerberos keytab file. A keytab stores long-term keys for one or more principals. For more information, see MIT Kerberos Documentation: Keytab.

    \n
  • \n
  • \n

    \n KAFKA_SASL_GSSAPI_KRB5_CONF - The S3 location of a Kerberos krb5.conf file. A krb5.conf stores Kerberos configuration information, such as the location of the KDC server. For more information, see MIT Kerberos Documentation: krb5.conf.

    \n
  • \n
  • \n

    \n KAFKA_SASL_GSSAPI_SERVICE - The Kerberos service name, as set with sasl.kerberos.service.name in your Kafka Configuration.

    \n
  • \n
  • \n

    \n KAFKA_SASL_GSSAPI_PRINCIPAL - The name of the Kerberos princial used by Glue. For more information, see Kafka Documentation: Configuring Kafka Brokers.

    \n
  • \n
  • \n

    \n ROLE_ARN - The role to be used for running queries.

    \n
  • \n
  • \n

    \n REGION - The Amazon Web Services Region where queries will be run.

    \n
  • \n
  • \n

    \n WORKGROUP_NAME - The name of an Amazon Redshift serverless workgroup or Amazon Athena workgroup in which queries will run.

    \n
  • \n
  • \n

    \n CLUSTER_IDENTIFIER - The cluster identifier of an Amazon Redshift cluster in which queries will run.

    \n
  • \n
  • \n

    \n DATABASE - The Amazon Redshift database that you are connecting to.

    \n
  • \n
" } }, + "AthenaProperties": { + "target": "com.amazonaws.glue#PropertyMap", + "traits": { + "smithy.api#documentation": "

This field is not currently used.

" + } + }, "PhysicalConnectionRequirements": { "target": "com.amazonaws.glue#PhysicalConnectionRequirements", "traits": { @@ -6949,6 +6956,12 @@ "smithy.api#required": {} } }, + "AthenaProperties": { + "target": "com.amazonaws.glue#PropertyMap", + "traits": { + "smithy.api#documentation": "

This field is not currently used.

" + } + }, "PhysicalConnectionRequirements": { "target": "com.amazonaws.glue#PhysicalConnectionRequirements", "traits": { @@ -28872,6 +28885,24 @@ "smithy.api#documentation": "

Specifies the job and session values that an admin configures in an Glue usage profile.

" } }, + "com.amazonaws.glue#PropertyKey": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + } + } + }, + "com.amazonaws.glue#PropertyMap": { + "type": "map", + "key": { + "target": "com.amazonaws.glue#PropertyKey" + }, + "value": { + "target": "com.amazonaws.glue#PropertyValue" + } + }, "com.amazonaws.glue#PropertyPredicate": { "type": "structure", "members": { @@ -28898,6 +28929,15 @@ "smithy.api#documentation": "

Defines a property predicate.

" } }, + "com.amazonaws.glue#PropertyValue": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + } + } + }, "com.amazonaws.glue#PublicKeysList": { "type": "list", "member": {