Skip to content

Commit a8db47f

Browse files
author
awstools
committed
feat(client-glue): Added AthenaProperties parameter to Glue Connections, allowing Athena to store service specific properties on Glue Connections.
1 parent 3db793d commit a8db47f

File tree

10 files changed

+176
-20
lines changed

10 files changed

+176
-20
lines changed

clients/client-glue/src/commands/CreateConnectionCommand.ts

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,11 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types";
66

77
import { commonParams } from "../endpoint/EndpointParameters";
88
import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient";
9-
import { CreateConnectionRequest, CreateConnectionResponse } from "../models/models_1";
9+
import {
10+
CreateConnectionRequest,
11+
CreateConnectionRequestFilterSensitiveLog,
12+
CreateConnectionResponse,
13+
} from "../models/models_1";
1014
import { de_CreateConnectionCommand, se_CreateConnectionCommand } from "../protocols/Aws_json1_1";
1115

1216
/**
@@ -48,6 +52,9 @@ export interface CreateConnectionCommandOutput extends CreateConnectionResponse,
4852
* ConnectionProperties: { // ConnectionProperties // required
4953
* "<keys>": "STRING_VALUE",
5054
* },
55+
* AthenaProperties: { // PropertyMap
56+
* "<keys>": "STRING_VALUE",
57+
* },
5158
* PhysicalConnectionRequirements: { // PhysicalConnectionRequirements
5259
* SubnetId: "STRING_VALUE",
5360
* SecurityGroupIdList: [ // SecurityGroupIdList
@@ -57,7 +64,6 @@ export interface CreateConnectionCommandOutput extends CreateConnectionResponse,
5764
* },
5865
* AuthenticationConfiguration: { // AuthenticationConfigurationInput
5966
* AuthenticationType: "BASIC" || "OAUTH2" || "CUSTOM",
60-
* SecretArn: "STRING_VALUE",
6167
* OAuth2Properties: { // OAuth2PropertiesInput
6268
* OAuth2GrantType: "AUTHORIZATION_CODE" || "CLIENT_CREDENTIALS" || "JWT_BEARER",
6369
* OAuth2ClientApplication: { // OAuth2ClientApplication
@@ -73,6 +79,7 @@ export interface CreateConnectionCommandOutput extends CreateConnectionResponse,
7379
* RedirectUri: "STRING_VALUE",
7480
* },
7581
* },
82+
* SecretArn: "STRING_VALUE",
7683
* },
7784
* ValidateCredentials: true || false,
7885
* },
@@ -131,7 +138,7 @@ export class CreateConnectionCommand extends $Command
131138
})
132139
.s("AWSGlue", "CreateConnection", {})
133140
.n("GlueClient", "CreateConnectionCommand")
134-
.f(void 0, void 0)
141+
.f(CreateConnectionRequestFilterSensitiveLog, void 0)
135142
.ser(se_CreateConnectionCommand)
136143
.de(de_CreateConnectionCommand)
137144
.build() {

clients/client-glue/src/commands/GetConnectionCommand.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,9 @@ export interface GetConnectionCommandOutput extends GetConnectionResponse, __Met
5353
* // ConnectionProperties: { // ConnectionProperties
5454
* // "<keys>": "STRING_VALUE",
5555
* // },
56+
* // AthenaProperties: { // PropertyMap
57+
* // "<keys>": "STRING_VALUE",
58+
* // },
5659
* // PhysicalConnectionRequirements: { // PhysicalConnectionRequirements
5760
* // SubnetId: "STRING_VALUE",
5861
* // SecurityGroupIdList: [ // SecurityGroupIdList

clients/client-glue/src/commands/GetConnectionsCommand.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,9 @@ export interface GetConnectionsCommandOutput extends GetConnectionsResponse, __M
6161
* // ConnectionProperties: { // ConnectionProperties
6262
* // "<keys>": "STRING_VALUE",
6363
* // },
64+
* // AthenaProperties: { // PropertyMap
65+
* // "<keys>": "STRING_VALUE",
66+
* // },
6467
* // PhysicalConnectionRequirements: { // PhysicalConnectionRequirements
6568
* // SubnetId: "STRING_VALUE",
6669
* // SecurityGroupIdList: [ // SecurityGroupIdList

clients/client-glue/src/commands/TestConnectionCommand.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,11 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types";
66

77
import { commonParams } from "../endpoint/EndpointParameters";
88
import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient";
9-
import { TestConnectionRequest, TestConnectionResponse } from "../models/models_2";
9+
import {
10+
TestConnectionRequest,
11+
TestConnectionRequestFilterSensitiveLog,
12+
TestConnectionResponse,
13+
} from "../models/models_2";
1014
import { de_TestConnectionCommand, se_TestConnectionCommand } from "../protocols/Aws_json1_1";
1115

1216
/**
@@ -46,7 +50,6 @@ export interface TestConnectionCommandOutput extends TestConnectionResponse, __M
4650
* },
4751
* AuthenticationConfiguration: { // AuthenticationConfigurationInput
4852
* AuthenticationType: "BASIC" || "OAUTH2" || "CUSTOM",
49-
* SecretArn: "STRING_VALUE",
5053
* OAuth2Properties: { // OAuth2PropertiesInput
5154
* OAuth2GrantType: "AUTHORIZATION_CODE" || "CLIENT_CREDENTIALS" || "JWT_BEARER",
5255
* OAuth2ClientApplication: { // OAuth2ClientApplication
@@ -62,6 +65,7 @@ export interface TestConnectionCommandOutput extends TestConnectionResponse, __M
6265
* RedirectUri: "STRING_VALUE",
6366
* },
6467
* },
68+
* SecretArn: "STRING_VALUE",
6569
* },
6670
* },
6771
* };
@@ -126,7 +130,7 @@ export class TestConnectionCommand extends $Command
126130
})
127131
.s("AWSGlue", "TestConnection", {})
128132
.n("GlueClient", "TestConnectionCommand")
129-
.f(void 0, void 0)
133+
.f(TestConnectionRequestFilterSensitiveLog, void 0)
130134
.ser(se_TestConnectionCommand)
131135
.de(de_TestConnectionCommand)
132136
.build() {

clients/client-glue/src/commands/UpdateConnectionCommand.ts

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,11 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types";
66

77
import { commonParams } from "../endpoint/EndpointParameters";
88
import { GlueClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../GlueClient";
9-
import { UpdateConnectionRequest, UpdateConnectionResponse } from "../models/models_2";
9+
import {
10+
UpdateConnectionRequest,
11+
UpdateConnectionRequestFilterSensitiveLog,
12+
UpdateConnectionResponse,
13+
} from "../models/models_2";
1014
import { de_UpdateConnectionCommand, se_UpdateConnectionCommand } from "../protocols/Aws_json1_1";
1115

1216
/**
@@ -48,6 +52,9 @@ export interface UpdateConnectionCommandOutput extends UpdateConnectionResponse,
4852
* ConnectionProperties: { // ConnectionProperties // required
4953
* "<keys>": "STRING_VALUE",
5054
* },
55+
* AthenaProperties: { // PropertyMap
56+
* "<keys>": "STRING_VALUE",
57+
* },
5158
* PhysicalConnectionRequirements: { // PhysicalConnectionRequirements
5259
* SubnetId: "STRING_VALUE",
5360
* SecurityGroupIdList: [ // SecurityGroupIdList
@@ -57,7 +64,6 @@ export interface UpdateConnectionCommandOutput extends UpdateConnectionResponse,
5764
* },
5865
* AuthenticationConfiguration: { // AuthenticationConfigurationInput
5966
* AuthenticationType: "BASIC" || "OAUTH2" || "CUSTOM",
60-
* SecretArn: "STRING_VALUE",
6167
* OAuth2Properties: { // OAuth2PropertiesInput
6268
* OAuth2GrantType: "AUTHORIZATION_CODE" || "CLIENT_CREDENTIALS" || "JWT_BEARER",
6369
* OAuth2ClientApplication: { // OAuth2ClientApplication
@@ -73,6 +79,7 @@ export interface UpdateConnectionCommandOutput extends UpdateConnectionResponse,
7379
* RedirectUri: "STRING_VALUE",
7480
* },
7581
* },
82+
* SecretArn: "STRING_VALUE",
7683
* },
7784
* ValidateCredentials: true || false,
7885
* },
@@ -123,7 +130,7 @@ export class UpdateConnectionCommand extends $Command
123130
})
124131
.s("AWSGlue", "UpdateConnection", {})
125132
.n("GlueClient", "UpdateConnectionCommand")
126-
.f(void 0, void 0)
133+
.f(UpdateConnectionRequestFilterSensitiveLog, void 0)
127134
.ser(se_UpdateConnectionCommand)
128135
.de(de_UpdateConnectionCommand)
129136
.build() {

clients/client-glue/src/models/models_0.ts

Lines changed: 30 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -810,16 +810,16 @@ export interface AuthenticationConfigurationInput {
810810
AuthenticationType?: AuthenticationType;
811811

812812
/**
813-
* <p>The secret manager ARN to store credentials in the CreateConnection request.</p>
813+
* <p>The properties for OAuth2 authentication in the CreateConnection request.</p>
814814
* @public
815815
*/
816-
SecretArn?: string;
816+
OAuth2Properties?: OAuth2PropertiesInput;
817817

818818
/**
819-
* <p>The properties for OAuth2 authentication in the CreateConnection request.</p>
819+
* <p>The secret manager ARN to store credentials in the CreateConnection request.</p>
820820
* @public
821821
*/
822-
OAuth2Properties?: OAuth2PropertiesInput;
822+
SecretArn?: string;
823823
}
824824

825825
/**
@@ -9243,6 +9243,32 @@ export interface CancelDataQualityRuleRecommendationRunRequest {
92439243
*/
92449244
export interface CancelDataQualityRuleRecommendationRunResponse {}
92459245

9246+
/**
9247+
* @internal
9248+
*/
9249+
export const AuthorizationCodePropertiesFilterSensitiveLog = (obj: AuthorizationCodeProperties): any => ({
9250+
...obj,
9251+
...(obj.AuthorizationCode && { AuthorizationCode: SENSITIVE_STRING }),
9252+
});
9253+
9254+
/**
9255+
* @internal
9256+
*/
9257+
export const OAuth2PropertiesInputFilterSensitiveLog = (obj: OAuth2PropertiesInput): any => ({
9258+
...obj,
9259+
...(obj.AuthorizationCodeProperties && {
9260+
AuthorizationCodeProperties: AuthorizationCodePropertiesFilterSensitiveLog(obj.AuthorizationCodeProperties),
9261+
}),
9262+
});
9263+
9264+
/**
9265+
* @internal
9266+
*/
9267+
export const AuthenticationConfigurationInputFilterSensitiveLog = (obj: AuthenticationConfigurationInput): any => ({
9268+
...obj,
9269+
...(obj.OAuth2Properties && { OAuth2Properties: OAuth2PropertiesInputFilterSensitiveLog(obj.OAuth2Properties) }),
9270+
});
9271+
92469272
/**
92479273
* @internal
92489274
*/

clients/client-glue/src/models/models_1.ts

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import {
77
Action,
88
AuthenticationConfiguration,
99
AuthenticationConfigurationInput,
10+
AuthenticationConfigurationInputFilterSensitiveLog,
1011
Blueprint,
1112
Column,
1213
ConnectionsList,
@@ -715,6 +716,12 @@ export interface ConnectionInput {
715716
*/
716717
ConnectionProperties: Partial<Record<ConnectionPropertyKey, string>> | undefined;
717718

719+
/**
720+
* <p>This field is not currently used.</p>
721+
* @public
722+
*/
723+
AthenaProperties?: Record<string, string>;
724+
718725
/**
719726
* <p>The physical connection requirements, such as virtual private cloud (VPC) and <code>SecurityGroup</code>, that are needed to successfully make this connection.</p>
720727
* @public
@@ -5881,6 +5888,12 @@ export interface Connection {
58815888
*/
58825889
ConnectionProperties?: Partial<Record<ConnectionPropertyKey, string>>;
58835890

5891+
/**
5892+
* <p>This field is not currently used.</p>
5893+
* @public
5894+
*/
5895+
AthenaProperties?: Record<string, string>;
5896+
58845897
/**
58855898
* <p>The physical connection requirements, such as virtual private cloud (VPC) and <code>SecurityGroup</code>, that are needed to make this connection successfully.</p>
58865899
* @public
@@ -7837,6 +7850,24 @@ export interface GetMLTaskRunsResponse {
78377850
NextToken?: string;
78387851
}
78397852

7853+
/**
7854+
* @internal
7855+
*/
7856+
export const ConnectionInputFilterSensitiveLog = (obj: ConnectionInput): any => ({
7857+
...obj,
7858+
...(obj.AuthenticationConfiguration && {
7859+
AuthenticationConfiguration: AuthenticationConfigurationInputFilterSensitiveLog(obj.AuthenticationConfiguration),
7860+
}),
7861+
});
7862+
7863+
/**
7864+
* @internal
7865+
*/
7866+
export const CreateConnectionRequestFilterSensitiveLog = (obj: CreateConnectionRequest): any => ({
7867+
...obj,
7868+
...(obj.ConnectionInput && { ConnectionInput: ConnectionInputFilterSensitiveLog(obj.ConnectionInput) }),
7869+
});
7870+
78407871
/**
78417872
* @internal
78427873
*/

clients/client-glue/src/models/models_2.ts

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import { GlueServiceException as __BaseException } from "./GlueServiceException"
66
import {
77
AuditContext,
88
AuthenticationConfigurationInput,
9+
AuthenticationConfigurationInputFilterSensitiveLog,
910
CrawlerTargets,
1011
CustomEntityType,
1112
DataSource,
@@ -40,6 +41,7 @@ import {
4041
ColumnStatistics,
4142
Compatibility,
4243
ConnectionInput,
44+
ConnectionInputFilterSensitiveLog,
4345
ConnectionPropertyKey,
4446
ConnectionType,
4547
CsvHeaderOption,
@@ -7997,3 +7999,31 @@ export const ListDataQualityStatisticsResponseFilterSensitiveLog = (obj: ListDat
79977999
...obj,
79988000
...(obj.Statistics && { Statistics: obj.Statistics.map((item) => StatisticSummaryFilterSensitiveLog(item)) }),
79998001
});
8002+
8003+
/**
8004+
* @internal
8005+
*/
8006+
export const TestConnectionInputFilterSensitiveLog = (obj: TestConnectionInput): any => ({
8007+
...obj,
8008+
...(obj.AuthenticationConfiguration && {
8009+
AuthenticationConfiguration: AuthenticationConfigurationInputFilterSensitiveLog(obj.AuthenticationConfiguration),
8010+
}),
8011+
});
8012+
8013+
/**
8014+
* @internal
8015+
*/
8016+
export const TestConnectionRequestFilterSensitiveLog = (obj: TestConnectionRequest): any => ({
8017+
...obj,
8018+
...(obj.TestConnectionInput && {
8019+
TestConnectionInput: TestConnectionInputFilterSensitiveLog(obj.TestConnectionInput),
8020+
}),
8021+
});
8022+
8023+
/**
8024+
* @internal
8025+
*/
8026+
export const UpdateConnectionRequestFilterSensitiveLog = (obj: UpdateConnectionRequest): any => ({
8027+
...obj,
8028+
...(obj.ConnectionInput && { ConnectionInput: ConnectionInputFilterSensitiveLog(obj.ConnectionInput) }),
8029+
});

clients/client-glue/src/protocols/Aws_json1_1.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10930,6 +10930,8 @@ const se_PIIDetection = (input: PIIDetection, context: __SerdeContext): any => {
1093010930

1093110931
// se_ProfileConfiguration omitted.
1093210932

10933+
// se_PropertyMap omitted.
10934+
1093310935
// se_PropertyPredicate omitted.
1093410936

1093510937
// se_PublicKeysList omitted.
@@ -12158,6 +12160,7 @@ const de_CompactionMetrics = (output: any, context: __SerdeContext): CompactionM
1215812160
*/
1215912161
const de_Connection = (output: any, context: __SerdeContext): Connection => {
1216012162
return take(output, {
12163+
AthenaProperties: _json,
1216112164
AuthenticationConfiguration: _json,
1216212165
ConnectionProperties: _json,
1216312166
ConnectionType: __expectString,
@@ -14579,6 +14582,8 @@ const de_PIIDetection = (output: any, context: __SerdeContext): PIIDetection =>
1457914582

1458014583
// de_ProfileConfiguration omitted.
1458114584

14585+
// de_PropertyMap omitted.
14586+
1458214587
// de_PublicKeysList omitted.
1458314588

1458414589
// de_PutDataCatalogEncryptionSettingsResponse omitted.

0 commit comments

Comments
 (0)