@aws-cdk/aws-bedrock-agentcore-alpha 2.227.0-alpha.0 → 2.229.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +1385 -1080
- package/.jsii.tabl.json.gz +0 -0
- package/.warnings.jsii.js +15 -1
- package/README.md +119 -15
- package/lib/gateway/gateway-base.js +171 -0
- package/{agentcore → lib}/gateway/gateway.js +4 -4
- package/{agentcore → lib}/gateway/inbound-auth/authorizer.js +3 -3
- package/lib/gateway/outbound-auth/api-key.js +141 -0
- package/{agentcore → lib}/gateway/outbound-auth/credential-provider.js +1 -1
- package/lib/gateway/outbound-auth/oauth.js +76 -0
- package/lib/gateway/perms.d.ts +73 -0
- package/lib/gateway/perms.js +109 -0
- package/{agentcore → lib}/gateway/protocol.js +2 -2
- package/{agentcore → lib}/gateway/targets/schema/api-schema.js +4 -4
- package/{agentcore → lib}/gateway/targets/schema/tool-schema.js +4 -4
- package/{agentcore → lib}/gateway/targets/target-base.js +1 -1
- package/{agentcore → lib}/gateway/targets/target-configuration.js +5 -5
- package/lib/gateway/targets/target.js +444 -0
- package/lib/index.d.ts +30 -1
- package/lib/index.js +55 -6
- package/{agentcore → lib}/memory/memory-strategy.js +1 -1
- package/{agentcore → lib}/memory/memory.js +2 -2
- package/{agentcore → lib}/memory/strategies/managed-strategy.js +1 -1
- package/{agentcore → lib}/memory/strategies/self-managed-strategy.js +1 -1
- package/{agentcore → lib}/network/network-configuration.js +4 -4
- package/{agentcore → lib}/runtime/runtime-artifact.d.ts +30 -0
- package/lib/runtime/runtime-artifact.js +174 -0
- package/{agentcore → lib}/runtime/runtime-authorizer-configuration.js +1 -1
- package/{agentcore → lib}/runtime/runtime-base.js +1 -1
- package/{agentcore → lib}/runtime/runtime-endpoint-base.js +1 -1
- package/{agentcore → lib}/runtime/runtime-endpoint.js +1 -1
- package/{agentcore → lib}/runtime/runtime.d.ts +32 -1
- package/lib/runtime/runtime.js +694 -0
- package/lib/runtime/types.d.ts +50 -0
- package/lib/runtime/types.js +25 -0
- package/{agentcore → lib}/tools/browser.d.ts +37 -0
- package/lib/tools/browser.js +680 -0
- package/{agentcore → lib}/tools/code-interpreter.js +2 -2
- package/package.json +10 -10
- package/agentcore/gateway/gateway-base.js +0 -171
- package/agentcore/gateway/outbound-auth/api-key.js +0 -141
- package/agentcore/gateway/outbound-auth/oauth.js +0 -76
- package/agentcore/gateway/perms.d.ts +0 -75
- package/agentcore/gateway/perms.js +0 -112
- package/agentcore/gateway/targets/target.js +0 -444
- package/agentcore/index.d.ts +0 -30
- package/agentcore/index.js +0 -71
- package/agentcore/runtime/runtime-artifact.js +0 -90
- package/agentcore/runtime/runtime.js +0 -589
- package/agentcore/runtime/types.d.ts +0 -20
- package/agentcore/runtime/types.js +0 -25
- package/agentcore/tools/browser.js +0 -641
- /package/{agentcore → lib}/gateway/gateway-base.d.ts +0 -0
- /package/{agentcore → lib}/gateway/gateway.d.ts +0 -0
- /package/{agentcore → lib}/gateway/inbound-auth/authorizer.d.ts +0 -0
- /package/{agentcore → lib}/gateway/outbound-auth/api-key.d.ts +0 -0
- /package/{agentcore → lib}/gateway/outbound-auth/credential-provider.d.ts +0 -0
- /package/{agentcore → lib}/gateway/outbound-auth/iam-role.d.ts +0 -0
- /package/{agentcore → lib}/gateway/outbound-auth/iam-role.js +0 -0
- /package/{agentcore → lib}/gateway/outbound-auth/oauth.d.ts +0 -0
- /package/{agentcore → lib}/gateway/protocol.d.ts +0 -0
- /package/{agentcore → lib}/gateway/targets/schema/api-schema.d.ts +0 -0
- /package/{agentcore → lib}/gateway/targets/schema/base-schema.d.ts +0 -0
- /package/{agentcore → lib}/gateway/targets/schema/base-schema.js +0 -0
- /package/{agentcore → lib}/gateway/targets/schema/tool-schema.d.ts +0 -0
- /package/{agentcore → lib}/gateway/targets/target-base.d.ts +0 -0
- /package/{agentcore → lib}/gateway/targets/target-configuration.d.ts +0 -0
- /package/{agentcore → lib}/gateway/targets/target.d.ts +0 -0
- /package/{agentcore → lib}/gateway/validation-helpers.d.ts +0 -0
- /package/{agentcore → lib}/gateway/validation-helpers.js +0 -0
- /package/{agentcore → lib}/memory/memory-strategy.d.ts +0 -0
- /package/{agentcore → lib}/memory/memory.d.ts +0 -0
- /package/{agentcore → lib}/memory/perms.d.ts +0 -0
- /package/{agentcore → lib}/memory/perms.js +0 -0
- /package/{agentcore → lib}/memory/strategies/managed-strategy.d.ts +0 -0
- /package/{agentcore → lib}/memory/strategies/self-managed-strategy.d.ts +0 -0
- /package/{agentcore → lib}/memory/validation-helpers.d.ts +0 -0
- /package/{agentcore → lib}/memory/validation-helpers.js +0 -0
- /package/{agentcore → lib}/network/network-configuration.d.ts +0 -0
- /package/{agentcore → lib}/runtime/perms.d.ts +0 -0
- /package/{agentcore → lib}/runtime/perms.js +0 -0
- /package/{agentcore → lib}/runtime/runtime-authorizer-configuration.d.ts +0 -0
- /package/{agentcore → lib}/runtime/runtime-base.d.ts +0 -0
- /package/{agentcore → lib}/runtime/runtime-endpoint-base.d.ts +0 -0
- /package/{agentcore → lib}/runtime/runtime-endpoint.d.ts +0 -0
- /package/{agentcore → lib}/runtime/validation-helpers.d.ts +0 -0
- /package/{agentcore → lib}/runtime/validation-helpers.js +0 -0
- /package/{agentcore → lib}/tools/code-interpreter.d.ts +0 -0
- /package/{agentcore → lib}/tools/perms.d.ts +0 -0
- /package/{agentcore → lib}/tools/perms.js +0 -0
- /package/{agentcore → lib}/tools/validation-helpers.d.ts +0 -0
- /package/{agentcore → lib}/tools/validation-helpers.js +0 -0
|
@@ -79,7 +79,7 @@ const CODE_INTERPRETER_TAG_MAX_LENGTH = 256;
|
|
|
79
79
|
* Contains methods and attributes valid for Code Interpreters either created with CDK or imported.
|
|
80
80
|
*/
|
|
81
81
|
class CodeInterpreterCustomBase extends aws_cdk_lib_1.Resource {
|
|
82
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.CodeInterpreterCustomBase", version: "2.
|
|
82
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.CodeInterpreterCustomBase", version: "2.229.0-alpha.0" };
|
|
83
83
|
/**
|
|
84
84
|
* An accessor for the Connections object that will fail if this Browser does not have a VPC
|
|
85
85
|
* configured.
|
|
@@ -313,7 +313,7 @@ let CodeInterpreterCustom = (() => {
|
|
|
313
313
|
CodeInterpreterCustom = _classThis = _classDescriptor.value;
|
|
314
314
|
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
315
315
|
}
|
|
316
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.CodeInterpreterCustom", version: "2.
|
|
316
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.CodeInterpreterCustom", version: "2.229.0-alpha.0" };
|
|
317
317
|
/** Uniquely identifies this class. */
|
|
318
318
|
static PROPERTY_INJECTION_ID = '@aws-cdk.aws-bedrock-agentcore-alpha.CodeInterpreterCustom';
|
|
319
319
|
/**
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aws-cdk/aws-bedrock-agentcore-alpha",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.229.0-alpha.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "The CDK Construct Library for Amazon Bedrock",
|
|
6
6
|
"main": "lib/index.js",
|
|
@@ -78,21 +78,21 @@
|
|
|
78
78
|
},
|
|
79
79
|
"license": "Apache-2.0",
|
|
80
80
|
"devDependencies": {
|
|
81
|
-
"aws-cdk-lib": "2.
|
|
82
|
-
"@aws-cdk/aws-bedrock-alpha": "2.
|
|
83
|
-
"@aws-cdk/cdk-build-tools": "2.
|
|
84
|
-
"@aws-cdk/integ-runner": "^2.
|
|
85
|
-
"@aws-cdk/pkglint": "2.
|
|
86
|
-
"@aws-cdk/integ-tests-alpha": "2.
|
|
81
|
+
"aws-cdk-lib": "2.229.0",
|
|
82
|
+
"@aws-cdk/aws-bedrock-alpha": "2.229.0-alpha.0",
|
|
83
|
+
"@aws-cdk/cdk-build-tools": "2.229.0-alpha.0",
|
|
84
|
+
"@aws-cdk/integ-runner": "^2.192.2",
|
|
85
|
+
"@aws-cdk/pkglint": "2.229.0-alpha.0",
|
|
86
|
+
"@aws-cdk/integ-tests-alpha": "2.229.0-alpha.0",
|
|
87
87
|
"@types/jest": "^29.5.14",
|
|
88
88
|
"constructs": "^10.0.0",
|
|
89
89
|
"jest": "^29.7.0"
|
|
90
90
|
},
|
|
91
91
|
"homepage": "https://github.com/aws/aws-cdk",
|
|
92
92
|
"peerDependencies": {
|
|
93
|
-
"aws-cdk-lib": "^2.
|
|
93
|
+
"aws-cdk-lib": "^2.229.0",
|
|
94
94
|
"constructs": "^10.0.0",
|
|
95
|
-
"@aws-cdk/aws-bedrock-alpha": "2.
|
|
95
|
+
"@aws-cdk/aws-bedrock-alpha": "2.229.0-alpha.0"
|
|
96
96
|
},
|
|
97
97
|
"engines": {
|
|
98
98
|
"node": ">= 18.0.0"
|
|
@@ -123,7 +123,7 @@
|
|
|
123
123
|
},
|
|
124
124
|
"jsiiRosetta": {
|
|
125
125
|
"exampleDependencies": {
|
|
126
|
-
"@aws-cdk/aws-bedrock-alpha": "^2.
|
|
126
|
+
"@aws-cdk/aws-bedrock-alpha": "^2.229.0-alpha.0"
|
|
127
127
|
}
|
|
128
128
|
}
|
|
129
129
|
}
|
|
@@ -1,171 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GatewayBase = exports.GatewayExceptionLevel = void 0;
|
|
4
|
-
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
5
|
-
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
6
|
-
const aws_cloudwatch_1 = require("aws-cdk-lib/aws-cloudwatch");
|
|
7
|
-
const iam = require("aws-cdk-lib/aws-iam");
|
|
8
|
-
const perms_1 = require("./perms");
|
|
9
|
-
/******************************************************************************
|
|
10
|
-
* Enums
|
|
11
|
-
*****************************************************************************/
|
|
12
|
-
/**
|
|
13
|
-
* Exception levels for gateway
|
|
14
|
-
*/
|
|
15
|
-
var GatewayExceptionLevel;
|
|
16
|
-
(function (GatewayExceptionLevel) {
|
|
17
|
-
/**
|
|
18
|
-
* Debug mode for granular exception messages. Allows the return of
|
|
19
|
-
* specific error messages related to the gateway target configuration
|
|
20
|
-
* to help you with debugging.
|
|
21
|
-
*/
|
|
22
|
-
GatewayExceptionLevel["DEBUG"] = "DEBUG";
|
|
23
|
-
})(GatewayExceptionLevel || (exports.GatewayExceptionLevel = GatewayExceptionLevel = {}));
|
|
24
|
-
/******************************************************************************
|
|
25
|
-
* Base Class
|
|
26
|
-
*****************************************************************************/
|
|
27
|
-
class GatewayBase extends aws_cdk_lib_1.Resource {
|
|
28
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.GatewayBase", version: "2.227.0-alpha.0" };
|
|
29
|
-
constructor(scope, id) {
|
|
30
|
-
super(scope, id);
|
|
31
|
-
}
|
|
32
|
-
// ------------------------------------------------------
|
|
33
|
-
// Permission Methods
|
|
34
|
-
// ------------------------------------------------------
|
|
35
|
-
/**
|
|
36
|
-
* Grants IAM actions to the IAM Principal
|
|
37
|
-
*
|
|
38
|
-
* @param grantee The principal to grant permissions to
|
|
39
|
-
* @param actions The actions to grant
|
|
40
|
-
*/
|
|
41
|
-
grant(grantee, ...actions) {
|
|
42
|
-
return iam.Grant.addToPrincipal({
|
|
43
|
-
grantee: grantee,
|
|
44
|
-
resourceArns: [this.gatewayArn],
|
|
45
|
-
actions: actions,
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Grants `Get` and `List` actions on the Gateway
|
|
50
|
-
*
|
|
51
|
-
* @param grantee The principal to grant read permissions to
|
|
52
|
-
*/
|
|
53
|
-
grantRead(grantee) {
|
|
54
|
-
const resourceSpecificGrant = this.grant(grantee, ...perms_1.GatewayPerms.GET_PERMS);
|
|
55
|
-
const allResourceGrant = iam.Grant.addToPrincipal({
|
|
56
|
-
grantee: grantee,
|
|
57
|
-
resourceArns: ['*'],
|
|
58
|
-
actions: [...perms_1.GatewayPerms.LIST_PERMS],
|
|
59
|
-
});
|
|
60
|
-
// Return combined grant
|
|
61
|
-
return resourceSpecificGrant.combine(allResourceGrant);
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Grants `Create`, `Update`, and `Delete` actions on the Gateway
|
|
65
|
-
*
|
|
66
|
-
* @param grantee The principal to grant manage permissions to
|
|
67
|
-
*/
|
|
68
|
-
grantManage(grantee) {
|
|
69
|
-
return this.grant(grantee, ...perms_1.GatewayPerms.MANAGE_PERMS);
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Grants permission to invoke this Gateway
|
|
73
|
-
*
|
|
74
|
-
* @param grantee The principal to grant invoke permissions to
|
|
75
|
-
*/
|
|
76
|
-
grantInvoke(grantee) {
|
|
77
|
-
return this.grant(grantee, ...perms_1.GatewayPerms.INVOKE_PERMS);
|
|
78
|
-
}
|
|
79
|
-
// ------------------------------------------------------
|
|
80
|
-
// Metric Methods
|
|
81
|
-
// ------------------------------------------------------
|
|
82
|
-
/**
|
|
83
|
-
* Return the given named metric for this gateway.
|
|
84
|
-
*
|
|
85
|
-
* By default, the metric will be calculated as a sum over a period of 5 minutes.
|
|
86
|
-
* You can customize this by using the `statistic` and `period` properties.
|
|
87
|
-
*
|
|
88
|
-
* @param metricName The name of the metric
|
|
89
|
-
* @param dimensions Additional dimensions for the metric
|
|
90
|
-
* @param props Optional metric configuration
|
|
91
|
-
*/
|
|
92
|
-
metric(metricName, dimensions, props) {
|
|
93
|
-
const metricProps = {
|
|
94
|
-
namespace: 'AWS/Bedrock-AgentCore',
|
|
95
|
-
metricName,
|
|
96
|
-
dimensionsMap: { ...dimensions, Resource: this.gatewayArn },
|
|
97
|
-
...props,
|
|
98
|
-
};
|
|
99
|
-
return this.configureMetric(metricProps);
|
|
100
|
-
}
|
|
101
|
-
/**
|
|
102
|
-
* Return a metric containing the total number of invocations for this gateway.
|
|
103
|
-
*/
|
|
104
|
-
metricInvocations(props) {
|
|
105
|
-
return this.metric('Invocations', {}, { statistic: aws_cloudwatch_1.Stats.SUM, ...props });
|
|
106
|
-
}
|
|
107
|
-
/**
|
|
108
|
-
* Return a metric containing the number of throttled requests (429 status code) for this gateway.
|
|
109
|
-
*/
|
|
110
|
-
metricThrottles(props) {
|
|
111
|
-
return this.metric('Throttles', {}, { statistic: aws_cloudwatch_1.Stats.SUM, ...props });
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Return a metric containing the number of system errors (5xx status code) for this gateway.
|
|
115
|
-
*/
|
|
116
|
-
metricSystemErrors(props) {
|
|
117
|
-
return this.metric('SystemErrors', {}, { statistic: aws_cloudwatch_1.Stats.SUM, ...props });
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* Return a metric containing the number of user errors (4xx status code, excluding 429) for this gateway.
|
|
121
|
-
*/
|
|
122
|
-
metricUserErrors(props) {
|
|
123
|
-
return this.metric('UserErrors', {}, { statistic: aws_cloudwatch_1.Stats.SUM, ...props });
|
|
124
|
-
}
|
|
125
|
-
/**
|
|
126
|
-
* Return a metric measuring the latency of requests for this gateway.
|
|
127
|
-
*
|
|
128
|
-
* The latency metric represents the time elapsed between when the service receives
|
|
129
|
-
* the request and when it begins sending the first response token.
|
|
130
|
-
*/
|
|
131
|
-
metricLatency(props) {
|
|
132
|
-
return this.metric('Latency', {}, { statistic: aws_cloudwatch_1.Stats.AVERAGE, ...props });
|
|
133
|
-
}
|
|
134
|
-
/**
|
|
135
|
-
* Return a metric measuring the duration of requests for this gateway.
|
|
136
|
-
*
|
|
137
|
-
* The duration metric represents the total time elapsed between receiving the request
|
|
138
|
-
* and sending the final response token, representing complete end-to-end processing time.
|
|
139
|
-
*/
|
|
140
|
-
metricDuration(props) {
|
|
141
|
-
return this.metric('Duration', {}, { statistic: aws_cloudwatch_1.Stats.AVERAGE, ...props });
|
|
142
|
-
}
|
|
143
|
-
/**
|
|
144
|
-
* Return a metric measuring the target execution time for this gateway.
|
|
145
|
-
*
|
|
146
|
-
* This metric helps determine the contribution of the target (Lambda, OpenAPI, etc.)
|
|
147
|
-
* to the total latency.
|
|
148
|
-
*/
|
|
149
|
-
metricTargetExecutionTime(props) {
|
|
150
|
-
return this.metric('TargetExecutionTime', {}, { statistic: aws_cloudwatch_1.Stats.AVERAGE, ...props });
|
|
151
|
-
}
|
|
152
|
-
/**
|
|
153
|
-
* Return a metric containing the number of requests served by each target type for this gateway.
|
|
154
|
-
*/
|
|
155
|
-
metricTargetType(targetType, props) {
|
|
156
|
-
return this.metric('TargetType', { TargetType: targetType }, { statistic: aws_cloudwatch_1.Stats.SUM, ...props });
|
|
157
|
-
}
|
|
158
|
-
/**
|
|
159
|
-
* Internal method to create a metric.
|
|
160
|
-
* @internal
|
|
161
|
-
*/
|
|
162
|
-
configureMetric(props) {
|
|
163
|
-
return new aws_cloudwatch_1.Metric({
|
|
164
|
-
...props,
|
|
165
|
-
region: props?.region ?? this.stack.region,
|
|
166
|
-
account: props?.account ?? this.stack.account,
|
|
167
|
-
});
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
exports.GatewayBase = GatewayBase;
|
|
171
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2F0ZXdheS1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZ2F0ZXdheS1iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSw2Q0FBa0Q7QUFDbEQsK0RBQXNHO0FBQ3RHLDJDQUEyQztBQUszQyxtQ0FBdUM7QUFHdkM7OytFQUUrRTtBQUMvRTs7R0FFRztBQUNILElBQVkscUJBT1g7QUFQRCxXQUFZLHFCQUFxQjtJQUMvQjs7OztPQUlHO0lBQ0gsd0NBQWUsQ0FBQTtBQUNqQixDQUFDLEVBUFcscUJBQXFCLHFDQUFyQixxQkFBcUIsUUFPaEM7QUF5TUQ7OytFQUUrRTtBQUUvRSxNQUFzQixXQUFZLFNBQVEsc0JBQVE7O0lBZ0JoRCxZQUFZLEtBQWdCLEVBQUUsRUFBVTtRQUN0QyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0tBQ2xCO0lBRUQseURBQXlEO0lBQ3pELHFCQUFxQjtJQUNyQix5REFBeUQ7SUFDekQ7Ozs7O09BS0c7SUFDSSxLQUFLLENBQUMsT0FBdUIsRUFBRSxHQUFHLE9BQWlCO1FBQ3hELE9BQU8sR0FBRyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUM7WUFDOUIsT0FBTyxFQUFFLE9BQU87WUFDaEIsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztZQUMvQixPQUFPLEVBQUUsT0FBTztTQUNqQixDQUFDLENBQUM7S0FDSjtJQUVEOzs7O09BSUc7SUFDSSxTQUFTLENBQUMsT0FBdUI7UUFDdEMsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxHQUFHLG9CQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFN0UsTUFBTSxnQkFBZ0IsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQztZQUNoRCxPQUFPLEVBQUUsT0FBTztZQUNoQixZQUFZLEVBQUUsQ0FBQyxHQUFHLENBQUM7WUFDbkIsT0FBTyxFQUFFLENBQUMsR0FBRyxvQkFBWSxDQUFDLFVBQVUsQ0FBQztTQUN0QyxDQUFDLENBQUM7UUFDSCx3QkFBd0I7UUFDeEIsT0FBTyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztLQUN4RDtJQUVEOzs7O09BSUc7SUFDSSxXQUFXLENBQUMsT0FBdUI7UUFDeEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxHQUFHLG9CQUFZLENBQUMsWUFBWSxDQUFDLENBQUM7S0FDMUQ7SUFFRDs7OztPQUlHO0lBQ0ksV0FBVyxDQUFDLE9BQXVCO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsR0FBRyxvQkFBWSxDQUFDLFlBQVksQ0FBQyxDQUFDO0tBQzFEO0lBRUQseURBQXlEO0lBQ3pELGlCQUFpQjtJQUNqQix5REFBeUQ7SUFDekQ7Ozs7Ozs7OztPQVNHO0lBQ0ksTUFBTSxDQUFDLFVBQWtCLEVBQUUsVUFBeUIsRUFBRSxLQUFxQjtRQUNoRixNQUFNLFdBQVcsR0FBZ0I7WUFDL0IsU0FBUyxFQUFFLHVCQUF1QjtZQUNsQyxVQUFVO1lBQ1YsYUFBYSxFQUFFLEVBQUUsR0FBRyxVQUFVLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDM0QsR0FBRyxLQUFLO1NBQ1QsQ0FBQztRQUNGLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQztLQUMxQztJQUVEOztPQUVHO0lBQ0ksaUJBQWlCLENBQUMsS0FBcUI7UUFDNUMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsc0JBQUssQ0FBQyxHQUFHLEVBQUUsR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0tBQzNFO0lBRUQ7O09BRUc7SUFDSSxlQUFlLENBQUMsS0FBcUI7UUFDMUMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsc0JBQUssQ0FBQyxHQUFHLEVBQUUsR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0tBQ3pFO0lBRUQ7O09BRUc7SUFDSSxrQkFBa0IsQ0FBQyxLQUFxQjtRQUM3QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxFQUFFLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxzQkFBSyxDQUFDLEdBQUcsRUFBRSxHQUFHLEtBQUssRUFBRSxDQUFDLENBQUM7S0FDNUU7SUFFRDs7T0FFRztJQUNJLGdCQUFnQixDQUFDLEtBQXFCO1FBQzNDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLHNCQUFLLENBQUMsR0FBRyxFQUFFLEdBQUcsS0FBSyxFQUFFLENBQUMsQ0FBQztLQUMxRTtJQUVEOzs7OztPQUtHO0lBQ0ksYUFBYSxDQUFDLEtBQXFCO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLHNCQUFLLENBQUMsT0FBTyxFQUFFLEdBQUcsS0FBSyxFQUFFLENBQUMsQ0FBQztLQUMzRTtJQUVEOzs7OztPQUtHO0lBQ0ksY0FBYyxDQUFDLEtBQXFCO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLHNCQUFLLENBQUMsT0FBTyxFQUFFLEdBQUcsS0FBSyxFQUFFLENBQUMsQ0FBQztLQUM1RTtJQUVEOzs7OztPQUtHO0lBQ0kseUJBQXlCLENBQUMsS0FBcUI7UUFDcEQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLHFCQUFxQixFQUFFLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxzQkFBSyxDQUFDLE9BQU8sRUFBRSxHQUFHLEtBQUssRUFBRSxDQUFDLENBQUM7S0FDdkY7SUFFRDs7T0FFRztJQUNJLGdCQUFnQixDQUFDLFVBQWtCLEVBQUUsS0FBcUI7UUFDL0QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxzQkFBSyxDQUFDLEdBQUcsRUFBRSxHQUFHLEtBQUssRUFBRSxDQUFDLENBQUM7S0FDbEc7SUFFRDs7O09BR0c7SUFDSyxlQUFlLENBQUMsS0FBa0I7UUFDeEMsT0FBTyxJQUFJLHVCQUFNLENBQUM7WUFDaEIsR0FBRyxLQUFLO1lBQ1IsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNO1lBQzFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTztTQUM5QyxDQUFDLENBQUM7S0FDSjs7QUExS0gsa0NBMktDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVJlc291cmNlLCBSZXNvdXJjZSB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IERpbWVuc2lvbnNNYXAsIE1ldHJpYywgTWV0cmljT3B0aW9ucywgTWV0cmljUHJvcHMsIFN0YXRzIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWNsb3Vkd2F0Y2gnO1xuaW1wb3J0ICogYXMgaWFtIGZyb20gJ2F3cy1jZGstbGliL2F3cy1pYW0nO1xuaW1wb3J0ICogYXMga21zIGZyb20gJ2F3cy1jZGstbGliL2F3cy1rbXMnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG4vLyBJbnRlcm5hbCBpbXBvcnRzXG5pbXBvcnQgeyBJR2F0ZXdheUF1dGhvcml6ZXJDb25maWcgfSBmcm9tICcuL2luYm91bmQtYXV0aC9hdXRob3JpemVyJztcbmltcG9ydCB7IEdhdGV3YXlQZXJtcyB9IGZyb20gJy4vcGVybXMnO1xuaW1wb3J0IHsgSUdhdGV3YXlQcm90b2NvbENvbmZpZyB9IGZyb20gJy4vcHJvdG9jb2wnO1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVudW1zXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKipcbiAqIEV4Y2VwdGlvbiBsZXZlbHMgZm9yIGdhdGV3YXlcbiAqL1xuZXhwb3J0IGVudW0gR2F0ZXdheUV4Y2VwdGlvbkxldmVsIHtcbiAgLyoqXG4gICAqIERlYnVnIG1vZGUgZm9yIGdyYW51bGFyIGV4Y2VwdGlvbiBtZXNzYWdlcy4gQWxsb3dzIHRoZSByZXR1cm4gb2ZcbiAgICogc3BlY2lmaWMgZXJyb3IgbWVzc2FnZXMgcmVsYXRlZCB0byB0aGUgZ2F0ZXdheSB0YXJnZXQgY29uZmlndXJhdGlvblxuICAgKiB0byBoZWxwIHlvdSB3aXRoIGRlYnVnZ2luZy5cbiAgICovXG4gIERFQlVHID0gJ0RFQlVHJyxcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEludGVyZmFjZVxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqXG4gKiBJbnRlcmZhY2UgZm9yIEdhdGV3YXkgcmVzb3VyY2VzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUdhdGV3YXkgZXh0ZW5kcyBJUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZ2F0ZXdheSByZXNvdXJjZVxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBnYXRld2F5QXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBpZCBvZiB0aGUgZ2F0ZXdheVxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBnYXRld2F5SWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGdhdGV3YXlcbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIElBTSByb2xlIHRoYXQgcHJvdmlkZXMgcGVybWlzc2lvbnMgZm9yIHRoZSBnYXRld2F5IHRvIGFjY2VzcyBBV1Mgc2VydmljZXNcbiAgICovXG4gIHJlYWRvbmx5IHJvbGU6IGlhbS5JUm9sZTtcblxuICAvKipcbiAgICogVGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBnYXRld2F5XG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHByb3RvY29sIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBnYXRld2F5XG4gICAqL1xuICByZWFkb25seSBwcm90b2NvbENvbmZpZ3VyYXRpb246IElHYXRld2F5UHJvdG9jb2xDb25maWc7XG5cbiAgLyoqXG4gICAqIFRoZSBhdXRob3JpemVyIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBnYXRld2F5XG4gICAqL1xuICByZWFkb25seSBhdXRob3JpemVyQ29uZmlndXJhdGlvbjogSUdhdGV3YXlBdXRob3JpemVyQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBUaGUgZXhjZXB0aW9uIGxldmVsIGZvciB0aGUgZ2F0ZXdheVxuICAgKi9cbiAgcmVhZG9ubHkgZXhjZXB0aW9uTGV2ZWw/OiBHYXRld2F5RXhjZXB0aW9uTGV2ZWw7XG5cbiAgLyoqXG4gICAqIFRoZSBLTVMga2V5IHVzZWQgZm9yIGVuY3J5cHRpb25cbiAgICovXG4gIHJlYWRvbmx5IGttc0tleT86IGttcy5JS2V5O1xuXG4gIC8qKlxuICAgKiBUaGUgVVJMIGVuZHBvaW50IGZvciB0aGUgZ2F0ZXdheVxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBnYXRld2F5VXJsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RhdHVzIG9mIHRoZSBnYXRld2F5XG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IHN0YXR1cz86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHN0YXR1cyByZWFzb25zIGZvciB0aGUgZ2F0ZXdheS5cbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgc3RhdHVzUmVhc29uPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFRpbWVzdGFtcCB3aGVuIHRoZSBnYXRld2F5IHdhcyBjcmVhdGVkXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZWRBdD86IHN0cmluZztcblxuICAvKipcbiAgICogVGltZXN0YW1wIHdoZW4gdGhlIGdhdGV3YXkgd2FzIGxhc3QgdXBkYXRlZFxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSB1cGRhdGVkQXQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEdyYW50cyBJQU0gYWN0aW9ucyB0byB0aGUgSUFNIFByaW5jaXBhbFxuICAgKi9cbiAgZ3JhbnQoZ3JhbnRlZTogaWFtLklHcmFudGFibGUsIC4uLmFjdGlvbnM6IHN0cmluZ1tdKTogaWFtLkdyYW50O1xuXG4gIC8qKlxuICAgKiBHcmFudHMgYEdldGAgYW5kIGBMaXN0YCBhY3Rpb25zIG9uIHRoZSBHYXRld2F5XG4gICAqL1xuICBncmFudFJlYWQoZ3JhbnRlZTogaWFtLklHcmFudGFibGUpOiBpYW0uR3JhbnQ7XG5cbiAgLyoqXG4gICAqIEdyYW50cyBgQ3JlYXRlYCwgYFVwZGF0ZWAsIGFuZCBgRGVsZXRlYCBhY3Rpb25zIG9uIHRoZSBHYXRld2F5XG4gICAqL1xuICBncmFudE1hbmFnZShncmFudGVlOiBpYW0uSUdyYW50YWJsZSk6IGlhbS5HcmFudDtcblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gaW52b2tlIHRoaXMgR2F0ZXdheVxuICAgKi9cbiAgZ3JhbnRJbnZva2UoZ3JhbnRlZTogaWFtLklHcmFudGFibGUpOiBpYW0uR3JhbnQ7XG5cbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIE1ldHJpY3NcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8qKlxuICAgKiBSZXR1cm4gdGhlIGdpdmVuIG5hbWVkIG1ldHJpYyBmb3IgdGhpcyBnYXRld2F5LlxuICAgKlxuICAgKiBAcGFyYW0gbWV0cmljTmFtZSBUaGUgbmFtZSBvZiB0aGUgbWV0cmljXG4gICAqIEBwYXJhbSBkaW1lbnNpb25zIEFkZGl0aW9uYWwgZGltZW5zaW9ucyBmb3IgdGhlIG1ldHJpY1xuICAgKiBAcGFyYW0gcHJvcHMgT3B0aW9uYWwgbWV0cmljIGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIG1ldHJpYyhtZXRyaWNOYW1lOiBzdHJpbmcsIGRpbWVuc2lvbnM6IERpbWVuc2lvbnNNYXAsIHByb3BzPzogTWV0cmljT3B0aW9ucyk6IE1ldHJpYztcblxuICAvKipcbiAgICogUmV0dXJuIGEgbWV0cmljIGNvbnRhaW5pbmcgdGhlIHRvdGFsIG51bWJlciBvZiBpbnZvY2F0aW9ucyBmb3IgdGhpcyBnYXRld2F5LlxuICAgKlxuICAgKiBUaGlzIG1ldHJpYyB0cmFja3MgYWxsIHN1Y2Nlc3NmdWwgaW52b2NhdGlvbnMgb2YgdGhlIGdhdGV3YXkuXG4gICAqXG4gICAqIEBwYXJhbSBwcm9wcyBPcHRpb25hbCBtZXRyaWMgY29uZmlndXJhdGlvblxuICAgKiBAZGVmYXVsdCAtIFN1bSBzdGF0aXN0aWMgb3ZlciA1IG1pbnV0ZXNcbiAgICovXG4gIG1ldHJpY0ludm9jYXRpb25zKHByb3BzPzogTWV0cmljT3B0aW9ucyk6IE1ldHJpYztcblxuICAvKipcbiAgICogUmV0dXJuIGEgbWV0cmljIGNvbnRhaW5pbmcgdGhlIG51bWJlciBvZiB0aHJvdHRsZWQgcmVxdWVzdHMgKDQyOSBzdGF0dXMgY29kZSkgZm9yIHRoaXMgZ2F0ZXdheS5cbiAgICpcbiAgICogVGhpcyBtZXRyaWMgaGVscHMgaWRlbnRpZnkgd2hlbiB0aGUgZ2F0ZXdheSBpcyByYXRlIGxpbWl0aW5nIHJlcXVlc3RzLlxuICAgKlxuICAgKiBAcGFyYW0gcHJvcHMgT3B0aW9uYWwgbWV0cmljIGNvbmZpZ3VyYXRpb25cbiAgICogQGRlZmF1bHQgLSBTdW0gc3RhdGlzdGljIG92ZXIgNSBtaW51dGVzXG4gICAqL1xuICBtZXRyaWNUaHJvdHRsZXMocHJvcHM/OiBNZXRyaWNPcHRpb25zKTogTWV0cmljO1xuXG4gIC8qKlxuICAgKiBSZXR1cm4gYSBtZXRyaWMgY29udGFpbmluZyB0aGUgbnVtYmVyIG9mIHN5c3RlbSBlcnJvcnMgKDV4eCBzdGF0dXMgY29kZSkgZm9yIHRoaXMgZ2F0ZXdheS5cbiAgICpcbiAgICogVGhpcyBtZXRyaWMgdHJhY2tzIGludGVybmFsIHNlcnZlciBlcnJvcnMgYW5kIHN5c3RlbSBmYWlsdXJlcy5cbiAgICpcbiAgICogQHBhcmFtIHByb3BzIE9wdGlvbmFsIG1ldHJpYyBjb25maWd1cmF0aW9uXG4gICAqIEBkZWZhdWx0IC0gU3VtIHN0YXRpc3RpYyBvdmVyIDUgbWludXRlc1xuICAgKi9cbiAgbWV0cmljU3lzdGVtRXJyb3JzKHByb3BzPzogTWV0cmljT3B0aW9ucyk6IE1ldHJpYztcblxuICAvKipcbiAgICogUmV0dXJuIGEgbWV0cmljIGNvbnRhaW5pbmcgdGhlIG51bWJlciBvZiB1c2VyIGVycm9ycyAoNHh4IHN0YXR1cyBjb2RlLCBleGNsdWRpbmcgNDI5KSBmb3IgdGhpcyBnYXRld2F5LlxuICAgKlxuICAgKiBUaGlzIG1ldHJpYyB0cmFja3MgY2xpZW50IGVycm9ycyBsaWtlIGJhZCByZXF1ZXN0cywgdW5hdXRob3JpemVkIGFjY2VzcywgZXRjLlxuICAgKlxuICAgKiBAcGFyYW0gcHJvcHMgT3B0aW9uYWwgbWV0cmljIGNvbmZpZ3VyYXRpb25cbiAgICogQGRlZmF1bHQgLSBTdW0gc3RhdGlzdGljIG92ZXIgNSBtaW51dGVzXG4gICAqL1xuICBtZXRyaWNVc2VyRXJyb3JzKHByb3BzPzogTWV0cmljT3B0aW9ucyk6IE1ldHJpYztcblxuICAvKipcbiAgICogUmV0dXJuIGEgbWV0cmljIG1lYXN1cmluZyB0aGUgbGF0ZW5jeSBvZiByZXF1ZXN0cyBmb3IgdGhpcyBnYXRld2F5LlxuICAgKlxuICAgKiBUaGUgbGF0ZW5jeSBtZXRyaWMgcmVwcmVzZW50cyB0aGUgdGltZSBlbGFwc2VkIGJldHdlZW4gd2hlbiB0aGUgc2VydmljZSByZWNlaXZlc1xuICAgKiB0aGUgcmVxdWVzdCBhbmQgd2hlbiBpdCBiZWdpbnMgc2VuZGluZyB0aGUgZmlyc3QgcmVzcG9uc2UgdG9rZW4uXG4gICAqXG4gICAqIEBwYXJhbSBwcm9wcyBPcHRpb25hbCBtZXRyaWMgY29uZmlndXJhdGlvblxuICAgKiBAZGVmYXVsdCAtIEF2ZXJhZ2Ugc3RhdGlzdGljIG92ZXIgNSBtaW51dGVzXG4gICAqL1xuICBtZXRyaWNMYXRlbmN5KHByb3BzPzogTWV0cmljT3B0aW9ucyk6IE1ldHJpYztcblxuICAvKipcbiAgICogUmV0dXJuIGEgbWV0cmljIG1lYXN1cmluZyB0aGUgZHVyYXRpb24gb2YgcmVxdWVzdHMgZm9yIHRoaXMgZ2F0ZXdheS5cbiAgICpcbiAgICogVGhlIGR1cmF0aW9uIG1ldHJpYyByZXByZXNlbnRzIHRoZSB0b3RhbCB0aW1lIGVsYXBzZWQgYmV0d2VlbiByZWNlaXZpbmcgdGhlIHJlcXVlc3RcbiAgICogYW5kIHNlbmRpbmcgdGhlIGZpbmFsIHJlc3BvbnNlIHRva2VuLCByZXByZXNlbnRpbmcgY29tcGxldGUgZW5kLXRvLWVuZCBwcm9jZXNzaW5nIHRpbWUuXG4gICAqXG4gICAqIEBwYXJhbSBwcm9wcyBPcHRpb25hbCBtZXRyaWMgY29uZmlndXJhdGlvblxuICAgKiBAZGVmYXVsdCAtIEF2ZXJhZ2Ugc3RhdGlzdGljIG92ZXIgNSBtaW51dGVzXG4gICAqL1xuICBtZXRyaWNEdXJhdGlvbihwcm9wcz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWM7XG5cbiAgLyoqXG4gICAqIFJldHVybiBhIG1ldHJpYyBtZWFzdXJpbmcgdGhlIHRhcmdldCBleGVjdXRpb24gdGltZSBmb3IgdGhpcyBnYXRld2F5LlxuICAgKlxuICAgKiBUaGlzIG1ldHJpYyBoZWxwcyBkZXRlcm1pbmUgdGhlIGNvbnRyaWJ1dGlvbiBvZiB0aGUgdGFyZ2V0IChMYW1iZGEsIE9wZW5BUEksIGV0Yy4pXG4gICAqIHRvIHRoZSB0b3RhbCBsYXRlbmN5LlxuICAgKlxuICAgKiBAcGFyYW0gcHJvcHMgT3B0aW9uYWwgbWV0cmljIGNvbmZpZ3VyYXRpb25cbiAgICogQGRlZmF1bHQgLSBBdmVyYWdlIHN0YXRpc3RpYyBvdmVyIDUgbWludXRlc1xuICAgKi9cbiAgbWV0cmljVGFyZ2V0RXhlY3V0aW9uVGltZShwcm9wcz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWM7XG5cbiAgLyoqXG4gICAqIFJldHVybiBhIG1ldHJpYyBjb250YWluaW5nIHRoZSBudW1iZXIgb2YgcmVxdWVzdHMgc2VydmVkIGJ5IGVhY2ggdGFyZ2V0IHR5cGUgZm9yIHRoaXMgZ2F0ZXdheS5cbiAgICpcbiAgICogQHBhcmFtIHRhcmdldFR5cGUgVGhlIHR5cGUgb2YgdGFyZ2V0IChlLmcuLCAnTGFtYmRhJywgJ09wZW5BUEknLCAnU21pdGh5JylcbiAgICogQHBhcmFtIHByb3BzIE9wdGlvbmFsIG1ldHJpYyBjb25maWd1cmF0aW9uXG4gICAqIEBkZWZhdWx0IC0gU3VtIHN0YXRpc3RpYyBvdmVyIDUgbWludXRlc1xuICAgKi9cbiAgbWV0cmljVGFyZ2V0VHlwZSh0YXJnZXRUeXBlOiBzdHJpbmcsIHByb3BzPzogTWV0cmljT3B0aW9ucyk6IE1ldHJpYztcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJhc2UgQ2xhc3NcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEdhdGV3YXlCYXNlIGV4dGVuZHMgUmVzb3VyY2UgaW1wbGVtZW50cyBJR2F0ZXdheSB7XG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBnYXRld2F5QXJuOiBzdHJpbmc7XG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBnYXRld2F5SWQ6IHN0cmluZztcbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgcHJvdG9jb2xDb25maWd1cmF0aW9uOiBJR2F0ZXdheVByb3RvY29sQ29uZmlnO1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgYXV0aG9yaXplckNvbmZpZ3VyYXRpb246IElHYXRld2F5QXV0aG9yaXplckNvbmZpZztcbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGV4Y2VwdGlvbkxldmVsPzogR2F0ZXdheUV4Y2VwdGlvbkxldmVsO1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkga21zS2V5Pzoga21zLklLZXk7XG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSByb2xlOiBpYW0uSVJvbGU7XG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBnYXRld2F5VXJsPzogc3RyaW5nO1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgc3RhdHVzPzogc3RyaW5nO1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgc3RhdHVzUmVhc29uPzogc3RyaW5nW107XG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBjcmVhdGVkQXQ/OiBzdHJpbmc7XG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSB1cGRhdGVkQXQ/OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gIH1cblxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gUGVybWlzc2lvbiBNZXRob2RzXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvKipcbiAgICogR3JhbnRzIElBTSBhY3Rpb25zIHRvIHRoZSBJQU0gUHJpbmNpcGFsXG4gICAqXG4gICAqIEBwYXJhbSBncmFudGVlIFRoZSBwcmluY2lwYWwgdG8gZ3JhbnQgcGVybWlzc2lvbnMgdG9cbiAgICogQHBhcmFtIGFjdGlvbnMgVGhlIGFjdGlvbnMgdG8gZ3JhbnRcbiAgICovXG4gIHB1YmxpYyBncmFudChncmFudGVlOiBpYW0uSUdyYW50YWJsZSwgLi4uYWN0aW9uczogc3RyaW5nW10pOiBpYW0uR3JhbnQge1xuICAgIHJldHVybiBpYW0uR3JhbnQuYWRkVG9QcmluY2lwYWwoe1xuICAgICAgZ3JhbnRlZTogZ3JhbnRlZSxcbiAgICAgIHJlc291cmNlQXJuczogW3RoaXMuZ2F0ZXdheUFybl0sXG4gICAgICBhY3Rpb25zOiBhY3Rpb25zLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBgR2V0YCBhbmQgYExpc3RgIGFjdGlvbnMgb24gdGhlIEdhdGV3YXlcbiAgICpcbiAgICogQHBhcmFtIGdyYW50ZWUgVGhlIHByaW5jaXBhbCB0byBncmFudCByZWFkIHBlcm1pc3Npb25zIHRvXG4gICAqL1xuICBwdWJsaWMgZ3JhbnRSZWFkKGdyYW50ZWU6IGlhbS5JR3JhbnRhYmxlKTogaWFtLkdyYW50IHtcbiAgICBjb25zdCByZXNvdXJjZVNwZWNpZmljR3JhbnQgPSB0aGlzLmdyYW50KGdyYW50ZWUsIC4uLkdhdGV3YXlQZXJtcy5HRVRfUEVSTVMpO1xuXG4gICAgY29uc3QgYWxsUmVzb3VyY2VHcmFudCA9IGlhbS5HcmFudC5hZGRUb1ByaW5jaXBhbCh7XG4gICAgICBncmFudGVlOiBncmFudGVlLFxuICAgICAgcmVzb3VyY2VBcm5zOiBbJyonXSxcbiAgICAgIGFjdGlvbnM6IFsuLi5HYXRld2F5UGVybXMuTElTVF9QRVJNU10sXG4gICAgfSk7XG4gICAgLy8gUmV0dXJuIGNvbWJpbmVkIGdyYW50XG4gICAgcmV0dXJuIHJlc291cmNlU3BlY2lmaWNHcmFudC5jb21iaW5lKGFsbFJlc291cmNlR3JhbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBgQ3JlYXRlYCwgYFVwZGF0ZWAsIGFuZCBgRGVsZXRlYCBhY3Rpb25zIG9uIHRoZSBHYXRld2F5XG4gICAqXG4gICAqIEBwYXJhbSBncmFudGVlIFRoZSBwcmluY2lwYWwgdG8gZ3JhbnQgbWFuYWdlIHBlcm1pc3Npb25zIHRvXG4gICAqL1xuICBwdWJsaWMgZ3JhbnRNYW5hZ2UoZ3JhbnRlZTogaWFtLklHcmFudGFibGUpOiBpYW0uR3JhbnQge1xuICAgIHJldHVybiB0aGlzLmdyYW50KGdyYW50ZWUsIC4uLkdhdGV3YXlQZXJtcy5NQU5BR0VfUEVSTVMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGludm9rZSB0aGlzIEdhdGV3YXlcbiAgICpcbiAgICogQHBhcmFtIGdyYW50ZWUgVGhlIHByaW5jaXBhbCB0byBncmFudCBpbnZva2UgcGVybWlzc2lvbnMgdG9cbiAgICovXG4gIHB1YmxpYyBncmFudEludm9rZShncmFudGVlOiBpYW0uSUdyYW50YWJsZSk6IGlhbS5HcmFudCB7XG4gICAgcmV0dXJuIHRoaXMuZ3JhbnQoZ3JhbnRlZSwgLi4uR2F0ZXdheVBlcm1zLklOVk9LRV9QRVJNUyk7XG4gIH1cblxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gTWV0cmljIE1ldGhvZHNcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8qKlxuICAgKiBSZXR1cm4gdGhlIGdpdmVuIG5hbWVkIG1ldHJpYyBmb3IgdGhpcyBnYXRld2F5LlxuICAgKlxuICAgKiBCeSBkZWZhdWx0LCB0aGUgbWV0cmljIHdpbGwgYmUgY2FsY3VsYXRlZCBhcyBhIHN1bSBvdmVyIGEgcGVyaW9kIG9mIDUgbWludXRlcy5cbiAgICogWW91IGNhbiBjdXN0b21pemUgdGhpcyBieSB1c2luZyB0aGUgYHN0YXRpc3RpY2AgYW5kIGBwZXJpb2RgIHByb3BlcnRpZXMuXG4gICAqXG4gICAqIEBwYXJhbSBtZXRyaWNOYW1lIFRoZSBuYW1lIG9mIHRoZSBtZXRyaWNcbiAgICogQHBhcmFtIGRpbWVuc2lvbnMgQWRkaXRpb25hbCBkaW1lbnNpb25zIGZvciB0aGUgbWV0cmljXG4gICAqIEBwYXJhbSBwcm9wcyBPcHRpb25hbCBtZXRyaWMgY29uZmlndXJhdGlvblxuICAgKi9cbiAgcHVibGljIG1ldHJpYyhtZXRyaWNOYW1lOiBzdHJpbmcsIGRpbWVuc2lvbnM6IERpbWVuc2lvbnNNYXAsIHByb3BzPzogTWV0cmljT3B0aW9ucyk6IE1ldHJpYyB7XG4gICAgY29uc3QgbWV0cmljUHJvcHM6IE1ldHJpY1Byb3BzID0ge1xuICAgICAgbmFtZXNwYWNlOiAnQVdTL0JlZHJvY2stQWdlbnRDb3JlJyxcbiAgICAgIG1ldHJpY05hbWUsXG4gICAgICBkaW1lbnNpb25zTWFwOiB7IC4uLmRpbWVuc2lvbnMsIFJlc291cmNlOiB0aGlzLmdhdGV3YXlBcm4gfSxcbiAgICAgIC4uLnByb3BzLFxuICAgIH07XG4gICAgcmV0dXJuIHRoaXMuY29uZmlndXJlTWV0cmljKG1ldHJpY1Byb3BzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm4gYSBtZXRyaWMgY29udGFpbmluZyB0aGUgdG90YWwgbnVtYmVyIG9mIGludm9jYXRpb25zIGZvciB0aGlzIGdhdGV3YXkuXG4gICAqL1xuICBwdWJsaWMgbWV0cmljSW52b2NhdGlvbnMocHJvcHM/OiBNZXRyaWNPcHRpb25zKTogTWV0cmljIHtcbiAgICByZXR1cm4gdGhpcy5tZXRyaWMoJ0ludm9jYXRpb25zJywge30sIHsgc3RhdGlzdGljOiBTdGF0cy5TVU0sIC4uLnByb3BzIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybiBhIG1ldHJpYyBjb250YWluaW5nIHRoZSBudW1iZXIgb2YgdGhyb3R0bGVkIHJlcXVlc3RzICg0Mjkgc3RhdHVzIGNvZGUpIGZvciB0aGlzIGdhdGV3YXkuXG4gICAqL1xuICBwdWJsaWMgbWV0cmljVGhyb3R0bGVzKHByb3BzPzogTWV0cmljT3B0aW9ucyk6IE1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljKCdUaHJvdHRsZXMnLCB7fSwgeyBzdGF0aXN0aWM6IFN0YXRzLlNVTSwgLi4ucHJvcHMgfSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIGEgbWV0cmljIGNvbnRhaW5pbmcgdGhlIG51bWJlciBvZiBzeXN0ZW0gZXJyb3JzICg1eHggc3RhdHVzIGNvZGUpIGZvciB0aGlzIGdhdGV3YXkuXG4gICAqL1xuICBwdWJsaWMgbWV0cmljU3lzdGVtRXJyb3JzKHByb3BzPzogTWV0cmljT3B0aW9ucyk6IE1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljKCdTeXN0ZW1FcnJvcnMnLCB7fSwgeyBzdGF0aXN0aWM6IFN0YXRzLlNVTSwgLi4ucHJvcHMgfSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIGEgbWV0cmljIGNvbnRhaW5pbmcgdGhlIG51bWJlciBvZiB1c2VyIGVycm9ycyAoNHh4IHN0YXR1cyBjb2RlLCBleGNsdWRpbmcgNDI5KSBmb3IgdGhpcyBnYXRld2F5LlxuICAgKi9cbiAgcHVibGljIG1ldHJpY1VzZXJFcnJvcnMocHJvcHM/OiBNZXRyaWNPcHRpb25zKTogTWV0cmljIHtcbiAgICByZXR1cm4gdGhpcy5tZXRyaWMoJ1VzZXJFcnJvcnMnLCB7fSwgeyBzdGF0aXN0aWM6IFN0YXRzLlNVTSwgLi4ucHJvcHMgfSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIGEgbWV0cmljIG1lYXN1cmluZyB0aGUgbGF0ZW5jeSBvZiByZXF1ZXN0cyBmb3IgdGhpcyBnYXRld2F5LlxuICAgKlxuICAgKiBUaGUgbGF0ZW5jeSBtZXRyaWMgcmVwcmVzZW50cyB0aGUgdGltZSBlbGFwc2VkIGJldHdlZW4gd2hlbiB0aGUgc2VydmljZSByZWNlaXZlc1xuICAgKiB0aGUgcmVxdWVzdCBhbmQgd2hlbiBpdCBiZWdpbnMgc2VuZGluZyB0aGUgZmlyc3QgcmVzcG9uc2UgdG9rZW4uXG4gICAqL1xuICBwdWJsaWMgbWV0cmljTGF0ZW5jeShwcm9wcz86IE1ldHJpY09wdGlvbnMpOiBNZXRyaWMge1xuICAgIHJldHVybiB0aGlzLm1ldHJpYygnTGF0ZW5jeScsIHt9LCB7IHN0YXRpc3RpYzogU3RhdHMuQVZFUkFHRSwgLi4ucHJvcHMgfSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIGEgbWV0cmljIG1lYXN1cmluZyB0aGUgZHVyYXRpb24gb2YgcmVxdWVzdHMgZm9yIHRoaXMgZ2F0ZXdheS5cbiAgICpcbiAgICogVGhlIGR1cmF0aW9uIG1ldHJpYyByZXByZXNlbnRzIHRoZSB0b3RhbCB0aW1lIGVsYXBzZWQgYmV0d2VlbiByZWNlaXZpbmcgdGhlIHJlcXVlc3RcbiAgICogYW5kIHNlbmRpbmcgdGhlIGZpbmFsIHJlc3BvbnNlIHRva2VuLCByZXByZXNlbnRpbmcgY29tcGxldGUgZW5kLXRvLWVuZCBwcm9jZXNzaW5nIHRpbWUuXG4gICAqL1xuICBwdWJsaWMgbWV0cmljRHVyYXRpb24ocHJvcHM/OiBNZXRyaWNPcHRpb25zKTogTWV0cmljIHtcbiAgICByZXR1cm4gdGhpcy5tZXRyaWMoJ0R1cmF0aW9uJywge30sIHsgc3RhdGlzdGljOiBTdGF0cy5BVkVSQUdFLCAuLi5wcm9wcyB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm4gYSBtZXRyaWMgbWVhc3VyaW5nIHRoZSB0YXJnZXQgZXhlY3V0aW9uIHRpbWUgZm9yIHRoaXMgZ2F0ZXdheS5cbiAgICpcbiAgICogVGhpcyBtZXRyaWMgaGVscHMgZGV0ZXJtaW5lIHRoZSBjb250cmlidXRpb24gb2YgdGhlIHRhcmdldCAoTGFtYmRhLCBPcGVuQVBJLCBldGMuKVxuICAgKiB0byB0aGUgdG90YWwgbGF0ZW5jeS5cbiAgICovXG4gIHB1YmxpYyBtZXRyaWNUYXJnZXRFeGVjdXRpb25UaW1lKHByb3BzPzogTWV0cmljT3B0aW9ucyk6IE1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljKCdUYXJnZXRFeGVjdXRpb25UaW1lJywge30sIHsgc3RhdGlzdGljOiBTdGF0cy5BVkVSQUdFLCAuLi5wcm9wcyB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm4gYSBtZXRyaWMgY29udGFpbmluZyB0aGUgbnVtYmVyIG9mIHJlcXVlc3RzIHNlcnZlZCBieSBlYWNoIHRhcmdldCB0eXBlIGZvciB0aGlzIGdhdGV3YXkuXG4gICAqL1xuICBwdWJsaWMgbWV0cmljVGFyZ2V0VHlwZSh0YXJnZXRUeXBlOiBzdHJpbmcsIHByb3BzPzogTWV0cmljT3B0aW9ucyk6IE1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljKCdUYXJnZXRUeXBlJywgeyBUYXJnZXRUeXBlOiB0YXJnZXRUeXBlIH0sIHsgc3RhdGlzdGljOiBTdGF0cy5TVU0sIC4uLnByb3BzIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEludGVybmFsIG1ldGhvZCB0byBjcmVhdGUgYSBtZXRyaWMuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHJpdmF0ZSBjb25maWd1cmVNZXRyaWMocHJvcHM6IE1ldHJpY1Byb3BzKSB7XG4gICAgcmV0dXJuIG5ldyBNZXRyaWMoe1xuICAgICAgLi4ucHJvcHMsXG4gICAgICByZWdpb246IHByb3BzPy5yZWdpb24gPz8gdGhpcy5zdGFjay5yZWdpb24sXG4gICAgICBhY2NvdW50OiBwcm9wcz8uYWNjb3VudCA/PyB0aGlzLnN0YWNrLmFjY291bnQsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ApiKeyCredentialProviderConfiguration = exports.ApiKeyCredentialLocation = exports.ApiKeyCredentialLocationType = void 0;
|
|
4
|
-
const jsiiDeprecationWarnings = require("../../../.warnings.jsii.js");
|
|
5
|
-
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
-
const aws_iam_1 = require("aws-cdk-lib/aws-iam");
|
|
7
|
-
const credential_provider_1 = require("./credential-provider");
|
|
8
|
-
const perms_1 = require("../perms");
|
|
9
|
-
/**
|
|
10
|
-
* API Key credential location type
|
|
11
|
-
* @internal
|
|
12
|
-
*/
|
|
13
|
-
var ApiKeyCredentialLocationType;
|
|
14
|
-
(function (ApiKeyCredentialLocationType) {
|
|
15
|
-
ApiKeyCredentialLocationType["HEADER"] = "HEADER";
|
|
16
|
-
ApiKeyCredentialLocationType["QUERY_PARAMETER"] = "QUERY_PARAMETER";
|
|
17
|
-
})(ApiKeyCredentialLocationType || (exports.ApiKeyCredentialLocationType = ApiKeyCredentialLocationType = {}));
|
|
18
|
-
/**
|
|
19
|
-
* API Key location within the request
|
|
20
|
-
*/
|
|
21
|
-
class ApiKeyCredentialLocation {
|
|
22
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-bedrock-agentcore-alpha.ApiKeyCredentialLocation", version: "2.227.0-alpha.0" };
|
|
23
|
-
/**
|
|
24
|
-
* Create a header-based API key credential location
|
|
25
|
-
* @param config - Optional configuration for the credential location
|
|
26
|
-
* @returns ApiKeyCredentialLocation configured for header placement
|
|
27
|
-
*/
|
|
28
|
-
static header(config) {
|
|
29
|
-
try {
|
|
30
|
-
jsiiDeprecationWarnings._aws_cdk_aws_bedrock_agentcore_alpha_ApiKeyAdditionalConfiguration(config);
|
|
31
|
-
}
|
|
32
|
-
catch (error) {
|
|
33
|
-
if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
|
|
34
|
-
Error.captureStackTrace(error, this.header);
|
|
35
|
-
}
|
|
36
|
-
throw error;
|
|
37
|
-
}
|
|
38
|
-
return new ApiKeyCredentialLocation(ApiKeyCredentialLocationType.HEADER, config?.credentialParameterName ?? 'Authorization', config?.credentialPrefix ?? 'Bearer ');
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Create a query parameter-based API key credential location
|
|
42
|
-
* @param config - Optional configuration for the credential location
|
|
43
|
-
* @returns ApiKeyCredentialLocation configured for query parameter placement
|
|
44
|
-
*/
|
|
45
|
-
static queryParameter(config) {
|
|
46
|
-
try {
|
|
47
|
-
jsiiDeprecationWarnings._aws_cdk_aws_bedrock_agentcore_alpha_ApiKeyAdditionalConfiguration(config);
|
|
48
|
-
}
|
|
49
|
-
catch (error) {
|
|
50
|
-
if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
|
|
51
|
-
Error.captureStackTrace(error, this.queryParameter);
|
|
52
|
-
}
|
|
53
|
-
throw error;
|
|
54
|
-
}
|
|
55
|
-
return new ApiKeyCredentialLocation(ApiKeyCredentialLocationType.QUERY_PARAMETER, config?.credentialParameterName ?? 'api_key', config?.credentialPrefix);
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* The name of the credential parameter
|
|
59
|
-
*/
|
|
60
|
-
credentialParameterName;
|
|
61
|
-
/**
|
|
62
|
-
* The prefix for the credential value
|
|
63
|
-
*/
|
|
64
|
-
credentialPrefix;
|
|
65
|
-
/**
|
|
66
|
-
* The type of credential location (HEADER or QUERY_PARAMETER)
|
|
67
|
-
*/
|
|
68
|
-
credentialLocationType;
|
|
69
|
-
constructor(credentialLocationType, credentialParameterName, credentialPrefix) {
|
|
70
|
-
this.credentialLocationType = credentialLocationType;
|
|
71
|
-
this.credentialParameterName = credentialParameterName;
|
|
72
|
-
this.credentialPrefix = credentialPrefix;
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
exports.ApiKeyCredentialLocation = ApiKeyCredentialLocation;
|
|
76
|
-
/**
|
|
77
|
-
* API Key credential provider configuration implementation
|
|
78
|
-
* Can be used with OpenAPI targets
|
|
79
|
-
* @internal
|
|
80
|
-
*/
|
|
81
|
-
class ApiKeyCredentialProviderConfiguration {
|
|
82
|
-
credentialProviderType = credential_provider_1.CredentialProviderType.API_KEY;
|
|
83
|
-
/**
|
|
84
|
-
* The ARN of the API key provider
|
|
85
|
-
*/
|
|
86
|
-
providerArn;
|
|
87
|
-
/**
|
|
88
|
-
* The ARN of the Secrets Manager secret
|
|
89
|
-
*/
|
|
90
|
-
secretArn;
|
|
91
|
-
/**
|
|
92
|
-
* The location configuration for the API key credential
|
|
93
|
-
*/
|
|
94
|
-
credentialLocation;
|
|
95
|
-
constructor(configuration) {
|
|
96
|
-
this.providerArn = configuration.providerArn;
|
|
97
|
-
this.secretArn = configuration.secretArn;
|
|
98
|
-
this.credentialLocation = configuration.credentialLocation ?? ApiKeyCredentialLocation.header();
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Grant the needed permissions to the role for API key authentication
|
|
102
|
-
*/
|
|
103
|
-
grantNeededPermissionsToRole(role) {
|
|
104
|
-
const statements = [
|
|
105
|
-
new aws_iam_1.PolicyStatement({
|
|
106
|
-
actions: [
|
|
107
|
-
...perms_1.GatewayPerms.GATEWAY_API_KEY_PERMS,
|
|
108
|
-
...perms_1.GatewayPerms.GATEWAY_WORKLOAD_IDENTITY_PERMS,
|
|
109
|
-
],
|
|
110
|
-
resources: [this.providerArn],
|
|
111
|
-
}),
|
|
112
|
-
new aws_iam_1.PolicyStatement({
|
|
113
|
-
actions: perms_1.GatewayPerms.SECRETS_PERMS,
|
|
114
|
-
resources: [this.secretArn],
|
|
115
|
-
}),
|
|
116
|
-
];
|
|
117
|
-
return aws_iam_1.Grant.addToPrincipal({
|
|
118
|
-
grantee: role,
|
|
119
|
-
actions: statements.flatMap(s => s.actions),
|
|
120
|
-
resourceArns: statements.flatMap(s => s.resources),
|
|
121
|
-
});
|
|
122
|
-
}
|
|
123
|
-
/**
|
|
124
|
-
* @internal
|
|
125
|
-
*/
|
|
126
|
-
_render() {
|
|
127
|
-
return {
|
|
128
|
-
credentialProviderType: this.credentialProviderType,
|
|
129
|
-
credentialProvider: {
|
|
130
|
-
apiKeyCredentialProvider: {
|
|
131
|
-
providerArn: this.providerArn,
|
|
132
|
-
credentialLocation: this.credentialLocation.credentialLocationType,
|
|
133
|
-
credentialParameterName: this.credentialLocation.credentialParameterName,
|
|
134
|
-
credentialPrefix: this.credentialLocation.credentialPrefix,
|
|
135
|
-
},
|
|
136
|
-
},
|
|
137
|
-
};
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
exports.ApiKeyCredentialProviderConfiguration = ApiKeyCredentialProviderConfiguration;
|
|
141
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLWtleS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImFwaS1rZXkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxpREFBb0U7QUFDcEUsK0RBQTBGO0FBQzFGLG9DQUF3QztBQTZCeEM7OztHQUdHO0FBQ0gsSUFBWSw0QkFHWDtBQUhELFdBQVksNEJBQTRCO0lBQ3RDLGlEQUFpQixDQUFBO0lBQ2pCLG1FQUFtQyxDQUFBO0FBQ3JDLENBQUMsRUFIVyw0QkFBNEIsNENBQTVCLDRCQUE0QixRQUd2QztBQUVEOztHQUVHO0FBQ0gsTUFBYSx3QkFBd0I7O0lBQ25DOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQXNDOzs7Ozs7Ozs7O1FBQ3pELE9BQU8sSUFBSSx3QkFBd0IsQ0FDakMsNEJBQTRCLENBQUMsTUFBTSxFQUNuQyxNQUFNLEVBQUUsdUJBQXVCLElBQUksZUFBZSxFQUNsRCxNQUFNLEVBQUUsZ0JBQWdCLElBQUksU0FBUyxDQUN0QyxDQUFDO0tBQ0g7SUFFRDs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFzQzs7Ozs7Ozs7OztRQUNqRSxPQUFPLElBQUksd0JBQXdCLENBQ2pDLDRCQUE0QixDQUFDLGVBQWUsRUFDNUMsTUFBTSxFQUFFLHVCQUF1QixJQUFJLFNBQVMsRUFDNUMsTUFBTSxFQUFFLGdCQUFnQixDQUN6QixDQUFDO0tBQ0g7SUFFRDs7T0FFRztJQUNhLHVCQUF1QixDQUFTO0lBQ2hEOztPQUVHO0lBQ2EsZ0JBQWdCLENBQVU7SUFDMUM7O09BRUc7SUFDYSxzQkFBc0IsQ0FBUztJQUUvQyxZQUNFLHNCQUE4QixFQUM5Qix1QkFBK0IsRUFDL0IsZ0JBQXlCO1FBRXpCLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxzQkFBc0IsQ0FBQztRQUNyRCxJQUFJLENBQUMsdUJBQXVCLEdBQUcsdUJBQXVCLENBQUM7UUFDdkQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLGdCQUFnQixDQUFDO0tBQzFDOztBQWhESCw0REFpREM7QUE2QkQ7Ozs7R0FJRztBQUNILE1BQWEscUNBQXFDO0lBQ2hDLHNCQUFzQixHQUFHLDRDQUFzQixDQUFDLE9BQU8sQ0FBQztJQUN4RTs7T0FFRztJQUNhLFdBQVcsQ0FBUztJQUNwQzs7T0FFRztJQUNhLFNBQVMsQ0FBUztJQUNsQzs7T0FFRztJQUNhLGtCQUFrQixDQUEyQjtJQUU3RCxZQUFZLGFBQTRDO1FBQ3RELElBQUksQ0FBQyxXQUFXLEdBQUcsYUFBYSxDQUFDLFdBQVcsQ0FBQztRQUM3QyxJQUFJLENBQUMsU0FBUyxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUM7UUFDekMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLGFBQWEsQ0FBQyxrQkFBa0IsSUFBSSx3QkFBd0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQztLQUNqRztJQUVEOztPQUVHO0lBQ0gsNEJBQTRCLENBQUMsSUFBVztRQUN0QyxNQUFNLFVBQVUsR0FBRztZQUNqQixJQUFJLHlCQUFlLENBQUM7Z0JBQ2xCLE9BQU8sRUFBRTtvQkFDUCxHQUFHLG9CQUFZLENBQUMscUJBQXFCO29CQUNyQyxHQUFHLG9CQUFZLENBQUMsK0JBQStCO2lCQUNoRDtnQkFDRCxTQUFTLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO2FBQzlCLENBQUM7WUFDRixJQUFJLHlCQUFlLENBQUM7Z0JBQ2xCLE9BQU8sRUFBRSxvQkFBWSxDQUFDLGFBQWE7Z0JBQ25DLFNBQVMsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7YUFDNUIsQ0FBQztTQUNILENBQUM7UUFFRixPQUFPLGVBQUssQ0FBQyxjQUFjLENBQUM7WUFDMUIsT0FBTyxFQUFFLElBQUk7WUFDYixPQUFPLEVBQUUsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7WUFDM0MsWUFBWSxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1NBQ25ELENBQUMsQ0FBQztLQUNKO0lBRUQ7O09BRUc7SUFDSCxPQUFPO1FBQ0wsT0FBTztZQUNMLHNCQUFzQixFQUFFLElBQUksQ0FBQyxzQkFBc0I7WUFDbkQsa0JBQWtCLEVBQUU7Z0JBQ2xCLHdCQUF3QixFQUFFO29CQUN4QixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7b0JBQzdCLGtCQUFrQixFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxzQkFBc0I7b0JBQ2xFLHVCQUF1QixFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyx1QkFBdUI7b0JBQ3hFLGdCQUFnQixFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxnQkFBZ0I7aUJBQzNEO2FBQ0Y7U0FDRixDQUFDO0tBQ0g7Q0FDRjtBQTlERCxzRkE4REMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHcmFudCwgSVJvbGUsIFBvbGljeVN0YXRlbWVudCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1pYW0nO1xuaW1wb3J0IHsgQ3JlZGVudGlhbFByb3ZpZGVyVHlwZSwgSUNyZWRlbnRpYWxQcm92aWRlckNvbmZpZyB9IGZyb20gJy4vY3JlZGVudGlhbC1wcm92aWRlcic7XG5pbXBvcnQgeyBHYXRld2F5UGVybXMgfSBmcm9tICcuLi9wZXJtcyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQVBJIEtFWVxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqXG4gKiBBUEkgS2V5IGFkZGl0aW9uYWwgY29uZmlndXJhdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFwaUtleUFkZGl0aW9uYWxDb25maWd1cmF0aW9uIHtcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGNyZWRlbnRpYWwgcGFyYW1ldGVyIGZvciB0aGUgQVBJIGtleS5cbiAgICogVGhpcyBwYXJhbWV0ZXIgbmFtZSBpcyB1c2VkIHdoZW4gc2VuZGluZyB0aGUgQVBJIGtleSB0byB0aGUgdGFyZ2V0IGVuZHBvaW50LlxuICAgKlxuICAgKiBMZW5ndGggQ29uc3RyYWludHM6IE1pbmltdW0gbGVuZ3RoIG9mIDEuIE1heGltdW0gbGVuZ3RoIG9mIDY0LlxuICAgKiBAZGVmYXVsdCAtICdBdXRob3JpemF0aW9uJyBmb3IgSEVBREVSLCAnYXBpX2tleScgZm9yIFFVRVJZX1BBUkFNRVRFUlxuICAgKi9cbiAgcmVhZG9ubHkgY3JlZGVudGlhbFBhcmFtZXRlck5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBwcmVmaXggZm9yIHRoZSBBUEkga2V5IGNyZWRlbnRpYWwuXG4gICAqIFRoaXMgcHJlZml4IGlzIGFkZGVkIHRvIHRoZSBBUEkga2V5IHdoZW4gc2VuZGluZyBpdCB0byB0aGUgdGFyZ2V0IGVuZHBvaW50LlxuICAgKlxuICAgKiBMZW5ndGggQ29uc3RyYWludHM6IE1pbmltdW0gbGVuZ3RoIG9mIDEuIE1heGltdW0gbGVuZ3RoIG9mIDY0LlxuICAgKiBAZGVmYXVsdCAtICdCZWFyZXIgJyBmb3IgSEVBREVSLCBubyBwcmVmaXggZm9yIFFVRVJZX1BBUkFNRVRFUlxuICAgKi9cbiAgcmVhZG9ubHkgY3JlZGVudGlhbFByZWZpeD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBBUEkgS2V5IGNyZWRlbnRpYWwgbG9jYXRpb24gdHlwZVxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBlbnVtIEFwaUtleUNyZWRlbnRpYWxMb2NhdGlvblR5cGUge1xuICBIRUFERVIgPSAnSEVBREVSJyxcbiAgUVVFUllfUEFSQU1FVEVSID0gJ1FVRVJZX1BBUkFNRVRFUicsXG59XG5cbi8qKlxuICogQVBJIEtleSBsb2NhdGlvbiB3aXRoaW4gdGhlIHJlcXVlc3RcbiAqL1xuZXhwb3J0IGNsYXNzIEFwaUtleUNyZWRlbnRpYWxMb2NhdGlvbiB7XG4gIC8qKlxuICAgKiBDcmVhdGUgYSBoZWFkZXItYmFzZWQgQVBJIGtleSBjcmVkZW50aWFsIGxvY2F0aW9uXG4gICAqIEBwYXJhbSBjb25maWcgLSBPcHRpb25hbCBjb25maWd1cmF0aW9uIGZvciB0aGUgY3JlZGVudGlhbCBsb2NhdGlvblxuICAgKiBAcmV0dXJucyBBcGlLZXlDcmVkZW50aWFsTG9jYXRpb24gY29uZmlndXJlZCBmb3IgaGVhZGVyIHBsYWNlbWVudFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBoZWFkZXIoY29uZmlnPzogQXBpS2V5QWRkaXRpb25hbENvbmZpZ3VyYXRpb24pIHtcbiAgICByZXR1cm4gbmV3IEFwaUtleUNyZWRlbnRpYWxMb2NhdGlvbihcbiAgICAgIEFwaUtleUNyZWRlbnRpYWxMb2NhdGlvblR5cGUuSEVBREVSLFxuICAgICAgY29uZmlnPy5jcmVkZW50aWFsUGFyYW1ldGVyTmFtZSA/PyAnQXV0aG9yaXphdGlvbicsXG4gICAgICBjb25maWc/LmNyZWRlbnRpYWxQcmVmaXggPz8gJ0JlYXJlciAnLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgcXVlcnkgcGFyYW1ldGVyLWJhc2VkIEFQSSBrZXkgY3JlZGVudGlhbCBsb2NhdGlvblxuICAgKiBAcGFyYW0gY29uZmlnIC0gT3B0aW9uYWwgY29uZmlndXJhdGlvbiBmb3IgdGhlIGNyZWRlbnRpYWwgbG9jYXRpb25cbiAgICogQHJldHVybnMgQXBpS2V5Q3JlZGVudGlhbExvY2F0aW9uIGNvbmZpZ3VyZWQgZm9yIHF1ZXJ5IHBhcmFtZXRlciBwbGFjZW1lbnRcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcXVlcnlQYXJhbWV0ZXIoY29uZmlnPzogQXBpS2V5QWRkaXRpb25hbENvbmZpZ3VyYXRpb24pIHtcbiAgICByZXR1cm4gbmV3IEFwaUtleUNyZWRlbnRpYWxMb2NhdGlvbihcbiAgICAgIEFwaUtleUNyZWRlbnRpYWxMb2NhdGlvblR5cGUuUVVFUllfUEFSQU1FVEVSLFxuICAgICAgY29uZmlnPy5jcmVkZW50aWFsUGFyYW1ldGVyTmFtZSA/PyAnYXBpX2tleScsXG4gICAgICBjb25maWc/LmNyZWRlbnRpYWxQcmVmaXgsXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgY3JlZGVudGlhbCBwYXJhbWV0ZXJcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjcmVkZW50aWFsUGFyYW1ldGVyTmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIHByZWZpeCBmb3IgdGhlIGNyZWRlbnRpYWwgdmFsdWVcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjcmVkZW50aWFsUHJlZml4Pzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIHR5cGUgb2YgY3JlZGVudGlhbCBsb2NhdGlvbiAoSEVBREVSIG9yIFFVRVJZX1BBUkFNRVRFUilcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjcmVkZW50aWFsTG9jYXRpb25UeXBlOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcihcbiAgICBjcmVkZW50aWFsTG9jYXRpb25UeXBlOiBzdHJpbmcsXG4gICAgY3JlZGVudGlhbFBhcmFtZXRlck5hbWU6IHN0cmluZyxcbiAgICBjcmVkZW50aWFsUHJlZml4Pzogc3RyaW5nLFxuICApIHtcbiAgICB0aGlzLmNyZWRlbnRpYWxMb2NhdGlvblR5cGUgPSBjcmVkZW50aWFsTG9jYXRpb25UeXBlO1xuICAgIHRoaXMuY3JlZGVudGlhbFBhcmFtZXRlck5hbWUgPSBjcmVkZW50aWFsUGFyYW1ldGVyTmFtZTtcbiAgICB0aGlzLmNyZWRlbnRpYWxQcmVmaXggPSBjcmVkZW50aWFsUHJlZml4O1xuICB9XG59XG5cbi8qKlxuICogQVBJIEtleSBjb25maWd1cmF0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVyUHJvcHMge1xuICAvKipcbiAgICogVGhlIEFQSSBrZXkgY3JlZGVudGlhbCBwcm92aWRlciBBUk4uXG4gICAqIFRoaXMgaXMgcmV0dXJuZWQgd2hlbiBjcmVhdGluZyB0aGUgQVBJIGtleSBjcmVkZW50aWFsIHByb3ZpZGVyIHZpYSBDb25zb2xlIG9yIEFQSS5cbiAgICogRm9ybWF0OiBhcm46YXdzOmJlZHJvY2stYWdlbnRjb3JlOnJlZ2lvbjphY2NvdW50OnRva2VuLXZhdWx0L2lkL2FwaWtleWNyZWRlbnRpYWxwcm92aWRlci9uYW1lXG4gICAqL1xuICByZWFkb25seSBwcm92aWRlckFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBTZWNyZXRzIE1hbmFnZXIgc2VjcmV0IGNvbnRhaW5pbmcgdGhlIEFQSSBrZXkuXG4gICAqIFRoaXMgaXMgcmV0dXJuZWQgd2hlbiBjcmVhdGluZyB0aGUgQVBJIGtleSBjcmVkZW50aWFsIHByb3ZpZGVyIHZpYSBDb25zb2xlIG9yIEFQSS5cbiAgICogRm9ybWF0OiBhcm46YXdzOnNlY3JldHNtYW5hZ2VyOnJlZ2lvbjphY2NvdW50OnNlY3JldDpuYW1lXG4gICAqL1xuICByZWFkb25seSBzZWNyZXRBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGxvY2F0aW9uIG9mIHRoZSBBUEkga2V5IGNyZWRlbnRpYWwuXG4gICAqIFRoaXMgZmllbGQgc3BlY2lmaWVzIHdoZXJlIGluIHRoZSByZXF1ZXN0IHRoZSBBUEkga2V5IHNob3VsZCBiZSBwbGFjZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gSEVBREVSXG4gICAqL1xuICByZWFkb25seSBjcmVkZW50aWFsTG9jYXRpb24/OiBBcGlLZXlDcmVkZW50aWFsTG9jYXRpb247XG59XG5cbi8qKlxuICogQVBJIEtleSBjcmVkZW50aWFsIHByb3ZpZGVyIGNvbmZpZ3VyYXRpb24gaW1wbGVtZW50YXRpb25cbiAqIENhbiBiZSB1c2VkIHdpdGggT3BlbkFQSSB0YXJnZXRzXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIEFwaUtleUNyZWRlbnRpYWxQcm92aWRlckNvbmZpZ3VyYXRpb24gaW1wbGVtZW50cyBJQ3JlZGVudGlhbFByb3ZpZGVyQ29uZmlnIHtcbiAgcHVibGljIHJlYWRvbmx5IGNyZWRlbnRpYWxQcm92aWRlclR5cGUgPSBDcmVkZW50aWFsUHJvdmlkZXJUeXBlLkFQSV9LRVk7XG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBBUEkga2V5IHByb3ZpZGVyXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvdmlkZXJBcm46IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIFNlY3JldHMgTWFuYWdlciBzZWNyZXRcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzZWNyZXRBcm46IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBsb2NhdGlvbiBjb25maWd1cmF0aW9uIGZvciB0aGUgQVBJIGtleSBjcmVkZW50aWFsXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY3JlZGVudGlhbExvY2F0aW9uOiBBcGlLZXlDcmVkZW50aWFsTG9jYXRpb247XG5cbiAgY29uc3RydWN0b3IoY29uZmlndXJhdGlvbjogQXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVyUHJvcHMpIHtcbiAgICB0aGlzLnByb3ZpZGVyQXJuID0gY29uZmlndXJhdGlvbi5wcm92aWRlckFybjtcbiAgICB0aGlzLnNlY3JldEFybiA9IGNvbmZpZ3VyYXRpb24uc2VjcmV0QXJuO1xuICAgIHRoaXMuY3JlZGVudGlhbExvY2F0aW9uID0gY29uZmlndXJhdGlvbi5jcmVkZW50aWFsTG9jYXRpb24gPz8gQXBpS2V5Q3JlZGVudGlhbExvY2F0aW9uLmhlYWRlcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50IHRoZSBuZWVkZWQgcGVybWlzc2lvbnMgdG8gdGhlIHJvbGUgZm9yIEFQSSBrZXkgYXV0aGVudGljYXRpb25cbiAgICovXG4gIGdyYW50TmVlZGVkUGVybWlzc2lvbnNUb1JvbGUocm9sZTogSVJvbGUpOiBHcmFudCB8IHVuZGVmaW5lZCB7XG4gICAgY29uc3Qgc3RhdGVtZW50cyA9IFtcbiAgICAgIG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgLi4uR2F0ZXdheVBlcm1zLkdBVEVXQVlfQVBJX0tFWV9QRVJNUyxcbiAgICAgICAgICAuLi5HYXRld2F5UGVybXMuR0FURVdBWV9XT1JLTE9BRF9JREVOVElUWV9QRVJNUyxcbiAgICAgICAgXSxcbiAgICAgICAgcmVzb3VyY2VzOiBbdGhpcy5wcm92aWRlckFybl0sXG4gICAgICB9KSxcbiAgICAgIG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICBhY3Rpb25zOiBHYXRld2F5UGVybXMuU0VDUkVUU19QRVJNUyxcbiAgICAgICAgcmVzb3VyY2VzOiBbdGhpcy5zZWNyZXRBcm5dLFxuICAgICAgfSksXG4gICAgXTtcblxuICAgIHJldHVybiBHcmFudC5hZGRUb1ByaW5jaXBhbCh7XG4gICAgICBncmFudGVlOiByb2xlLFxuICAgICAgYWN0aW9uczogc3RhdGVtZW50cy5mbGF0TWFwKHMgPT4gcy5hY3Rpb25zKSxcbiAgICAgIHJlc291cmNlQXJuczogc3RhdGVtZW50cy5mbGF0TWFwKHMgPT4gcy5yZXNvdXJjZXMpLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgX3JlbmRlcigpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICBjcmVkZW50aWFsUHJvdmlkZXJUeXBlOiB0aGlzLmNyZWRlbnRpYWxQcm92aWRlclR5cGUsXG4gICAgICBjcmVkZW50aWFsUHJvdmlkZXI6IHtcbiAgICAgICAgYXBpS2V5Q3JlZGVudGlhbFByb3ZpZGVyOiB7XG4gICAgICAgICAgcHJvdmlkZXJBcm46IHRoaXMucHJvdmlkZXJBcm4sXG4gICAgICAgICAgY3JlZGVudGlhbExvY2F0aW9uOiB0aGlzLmNyZWRlbnRpYWxMb2NhdGlvbi5jcmVkZW50aWFsTG9jYXRpb25UeXBlLFxuICAgICAgICAgIGNyZWRlbnRpYWxQYXJhbWV0ZXJOYW1lOiB0aGlzLmNyZWRlbnRpYWxMb2NhdGlvbi5jcmVkZW50aWFsUGFyYW1ldGVyTmFtZSxcbiAgICAgICAgICBjcmVkZW50aWFsUHJlZml4OiB0aGlzLmNyZWRlbnRpYWxMb2NhdGlvbi5jcmVkZW50aWFsUHJlZml4LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuICB9XG59XG4iXX0=
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.OAuthCredentialProviderConfiguration = void 0;
|
|
4
|
-
const aws_iam_1 = require("aws-cdk-lib/aws-iam");
|
|
5
|
-
const credential_provider_1 = require("./credential-provider");
|
|
6
|
-
const perms_1 = require("../perms");
|
|
7
|
-
/**
|
|
8
|
-
* OAuth credential provider configuration implementation
|
|
9
|
-
* Can be used with OpenAPI targets
|
|
10
|
-
* @internal
|
|
11
|
-
*/
|
|
12
|
-
class OAuthCredentialProviderConfiguration {
|
|
13
|
-
credentialProviderType = credential_provider_1.CredentialProviderType.OAUTH;
|
|
14
|
-
/**
|
|
15
|
-
* The ARN of the OAuth provider
|
|
16
|
-
*/
|
|
17
|
-
providerArn;
|
|
18
|
-
/**
|
|
19
|
-
* The ARN of the Secrets Manager secret
|
|
20
|
-
*/
|
|
21
|
-
secretArn;
|
|
22
|
-
/**
|
|
23
|
-
* The OAuth scopes to request
|
|
24
|
-
*/
|
|
25
|
-
scopes;
|
|
26
|
-
/**
|
|
27
|
-
* Custom parameters for the OAuth flow
|
|
28
|
-
*/
|
|
29
|
-
customParameters;
|
|
30
|
-
constructor(configuration) {
|
|
31
|
-
this.providerArn = configuration.providerArn;
|
|
32
|
-
this.secretArn = configuration.secretArn;
|
|
33
|
-
this.scopes = configuration.scopes;
|
|
34
|
-
this.customParameters = configuration.customParameters;
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Grant the needed permissions to the role for OAuth authentication
|
|
38
|
-
*/
|
|
39
|
-
grantNeededPermissionsToRole(role) {
|
|
40
|
-
const statements = [
|
|
41
|
-
new aws_iam_1.PolicyStatement({
|
|
42
|
-
actions: [
|
|
43
|
-
...perms_1.GatewayPerms.GATEWAY_OAUTH_PERMS,
|
|
44
|
-
...perms_1.GatewayPerms.GATEWAY_WORKLOAD_IDENTITY_PERMS,
|
|
45
|
-
],
|
|
46
|
-
resources: [this.providerArn],
|
|
47
|
-
}),
|
|
48
|
-
new aws_iam_1.PolicyStatement({
|
|
49
|
-
actions: perms_1.GatewayPerms.SECRETS_PERMS,
|
|
50
|
-
resources: [this.secretArn],
|
|
51
|
-
}),
|
|
52
|
-
];
|
|
53
|
-
return aws_iam_1.Grant.addToPrincipal({
|
|
54
|
-
grantee: role,
|
|
55
|
-
actions: statements.flatMap(s => s.actions),
|
|
56
|
-
resourceArns: statements.flatMap(s => s.resources),
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* @internal
|
|
61
|
-
*/
|
|
62
|
-
_render() {
|
|
63
|
-
return {
|
|
64
|
-
credentialProviderType: this.credentialProviderType,
|
|
65
|
-
credentialProvider: {
|
|
66
|
-
oauthCredentialProvider: {
|
|
67
|
-
providerArn: this.providerArn,
|
|
68
|
-
scopes: this.scopes,
|
|
69
|
-
customParameters: this.customParameters,
|
|
70
|
-
},
|
|
71
|
-
},
|
|
72
|
-
};
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
exports.OAuthCredentialProviderConfiguration = OAuthCredentialProviderConfiguration;
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2F1dGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJvYXV0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxpREFBb0U7QUFDcEUsK0RBQTBGO0FBQzFGLG9DQUF3QztBQW9EeEM7Ozs7R0FJRztBQUNILE1BQWEsb0NBQW9DO0lBQy9CLHNCQUFzQixHQUFHLDRDQUFzQixDQUFDLEtBQUssQ0FBQztJQUN0RTs7T0FFRztJQUNhLFdBQVcsQ0FBUztJQUNwQzs7T0FFRztJQUNhLFNBQVMsQ0FBUztJQUNsQzs7T0FFRztJQUNhLE1BQU0sQ0FBVztJQUNqQzs7T0FFRztJQUNhLGdCQUFnQixDQUEwQjtJQUUxRCxZQUFZLGFBQWlDO1FBQzNDLElBQUksQ0FBQyxXQUFXLEdBQUcsYUFBYSxDQUFDLFdBQVcsQ0FBQztRQUM3QyxJQUFJLENBQUMsU0FBUyxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUM7UUFDekMsSUFBSSxDQUFDLE1BQU0sR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDO1FBQ25DLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxhQUFhLENBQUMsZ0JBQWdCLENBQUM7S0FDeEQ7SUFFRDs7T0FFRztJQUNILDRCQUE0QixDQUFDLElBQVc7UUFDdEMsTUFBTSxVQUFVLEdBQUc7WUFDakIsSUFBSSx5QkFBZSxDQUFDO2dCQUNsQixPQUFPLEVBQUU7b0JBQ1AsR0FBRyxvQkFBWSxDQUFDLG1CQUFtQjtvQkFDbkMsR0FBRyxvQkFBWSxDQUFDLCtCQUErQjtpQkFDaEQ7Z0JBQ0QsU0FBUyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQzthQUM5QixDQUFDO1lBQ0YsSUFBSSx5QkFBZSxDQUFDO2dCQUNsQixPQUFPLEVBQUUsb0JBQVksQ0FBQyxhQUFhO2dCQUNuQyxTQUFTLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO2FBQzVCLENBQUM7U0FDSCxDQUFDO1FBRUYsT0FBTyxlQUFLLENBQUMsY0FBYyxDQUFDO1lBQzFCLE9BQU8sRUFBRSxJQUFJO1lBQ2IsT0FBTyxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO1lBQzNDLFlBQVksRUFBRSxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztTQUNuRCxDQUFDLENBQUM7S0FDSjtJQUVEOztPQUVHO0lBQ0gsT0FBTztRQUNMLE9BQU87WUFDTCxzQkFBc0IsRUFBRSxJQUFJLENBQUMsc0JBQXNCO1lBQ25ELGtCQUFrQixFQUFFO2dCQUNsQix1QkFBdUIsRUFBRTtvQkFDdkIsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO29CQUM3QixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07b0JBQ25CLGdCQUFnQixFQUFFLElBQUksQ0FBQyxnQkFBZ0I7aUJBQ3hDO2FBQ0Y7U0FDRixDQUFDO0tBQ0g7Q0FDRjtBQWxFRCxvRkFrRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHcmFudCwgSVJvbGUsIFBvbGljeVN0YXRlbWVudCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1pYW0nO1xuaW1wb3J0IHsgQ3JlZGVudGlhbFByb3ZpZGVyVHlwZSwgSUNyZWRlbnRpYWxQcm92aWRlckNvbmZpZyB9IGZyb20gJy4vY3JlZGVudGlhbC1wcm92aWRlcic7XG5pbXBvcnQgeyBHYXRld2F5UGVybXMgfSBmcm9tICcuLi9wZXJtcyc7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPQXV0aFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKipcbiAqIE9BdXRoIGNvbmZpZ3VyYXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBPQXV0aENvbmZpZ3VyYXRpb24ge1xuICAvKipcbiAgICogVGhlIE9BdXRoIGNyZWRlbnRpYWwgcHJvdmlkZXIgQVJOLlxuICAgKiBUaGlzIGlzIHJldHVybmVkIHdoZW4gY3JlYXRpbmcgdGhlIE9BdXRoIGNyZWRlbnRpYWwgcHJvdmlkZXIgdmlhIENvbnNvbGUgb3IgQVBJLlxuICAgKiBGb3JtYXQ6IGFybjphd3M6YmVkcm9jay1hZ2VudGNvcmU6cmVnaW9uOmFjY291bnQ6dG9rZW4tdmF1bHQvaWQvb2F1dGgyY3JlZGVudGlhbHByb3ZpZGVyL25hbWVcbiAgICogUmVxdWlyZWQ6IFllc1xuICAgKi9cbiAgcmVhZG9ubHkgcHJvdmlkZXJBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgU2VjcmV0cyBNYW5hZ2VyIHNlY3JldCBjb250YWluaW5nIE9BdXRoIGNyZWRlbnRpYWxzIChjbGllbnQgSUQgYW5kIHNlY3JldCkuXG4gICAqIFRoaXMgaXMgcmV0dXJuZWQgd2hlbiBjcmVhdGluZyB0aGUgT0F1dGggY3JlZGVudGlhbCBwcm92aWRlciB2aWEgQ29uc29sZSBvciBBUEkuXG4gICAqIEZvcm1hdDogYXJuOmF3czpzZWNyZXRzbWFuYWdlcjpyZWdpb246YWNjb3VudDpzZWNyZXQ6bmFtZVxuICAgKiBSZXF1aXJlZDogWWVzXG4gICAqL1xuICByZWFkb25seSBzZWNyZXRBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIE9BdXRoIHNjb3BlcyBmb3IgdGhlIGNyZWRlbnRpYWwgcHJvdmlkZXIuXG4gICAqIFRoZXNlIHNjb3BlcyBkZWZpbmUgdGhlIGxldmVsIG9mIGFjY2VzcyByZXF1ZXN0ZWQgZnJvbSB0aGUgT0F1dGggcHJvdmlkZXIuXG4gICAqXG4gICAqIEFycmF5IE1lbWJlcnM6IE1pbmltdW0gbnVtYmVyIG9mIDAgaXRlbXMuIE1heGltdW0gbnVtYmVyIG9mIDEwMCBpdGVtcy5cbiAgICogTGVuZ3RoIENvbnN0cmFpbnRzOiBNaW5pbXVtIGxlbmd0aCBvZiAxLiBNYXhpbXVtIGxlbmd0aCBvZiA2NC5cbiAgICogUmVxdWlyZWQ6IFllc1xuICAgKi9cbiAgcmVhZG9ubHkgc2NvcGVzOiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVGhlIGN1c3RvbSBwYXJhbWV0ZXJzIGZvciB0aGUgT0F1dGggY3JlZGVudGlhbCBwcm92aWRlci5cbiAgICogVGhlc2UgcGFyYW1ldGVycyBwcm92aWRlIGFkZGl0aW9uYWwgY29uZmlndXJhdGlvbiBmb3IgdGhlIE9BdXRoIGF1dGhlbnRpY2F0aW9uIHByb2Nlc3MuXG4gICAqXG4gICAqIE1hcCBFbnRyaWVzOiBNYXhpbXVtIG51bWJlciBvZiAxMCBpdGVtcy5cbiAgICogS2V5IExlbmd0aCBDb25zdHJhaW50czogTWluaW11bSBsZW5ndGggb2YgMS4gTWF4aW11bSBsZW5ndGggb2YgMjU2LlxuICAgKiBWYWx1ZSBMZW5ndGggQ29uc3RyYWludHM6IE1pbmltdW0gbGVuZ3RoIG9mIDEuIE1heGltdW0gbGVuZ3RoIG9mIDIwNDguXG4gICAqIFJlcXVpcmVkOiBOb1xuICAgKi9cbiAgLyoqXG4gICAqIEN1c3RvbSBwYXJhbWV0ZXJzIGZvciB0aGUgT0F1dGggZmxvd1xuICAgKiBAZGVmYXVsdCAtIE5vIGN1c3RvbSBwYXJhbWV0ZXJzXG4gICAqL1xuICByZWFkb25seSBjdXN0b21QYXJhbWV0ZXJzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbn1cblxuLyoqXG4gKiBPQXV0aCBjcmVkZW50aWFsIHByb3ZpZGVyIGNvbmZpZ3VyYXRpb24gaW1wbGVtZW50YXRpb25cbiAqIENhbiBiZSB1c2VkIHdpdGggT3BlbkFQSSB0YXJnZXRzXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIE9BdXRoQ3JlZGVudGlhbFByb3ZpZGVyQ29uZmlndXJhdGlvbiBpbXBsZW1lbnRzIElDcmVkZW50aWFsUHJvdmlkZXJDb25maWcge1xuICBwdWJsaWMgcmVhZG9ubHkgY3JlZGVudGlhbFByb3ZpZGVyVHlwZSA9IENyZWRlbnRpYWxQcm92aWRlclR5cGUuT0FVVEg7XG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBPQXV0aCBwcm92aWRlclxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3ZpZGVyQXJuOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBTZWNyZXRzIE1hbmFnZXIgc2VjcmV0XG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgc2VjcmV0QXJuOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgT0F1dGggc2NvcGVzIHRvIHJlcXVlc3RcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzY29wZXM6IHN0cmluZ1tdO1xuICAvKipcbiAgICogQ3VzdG9tIHBhcmFtZXRlcnMgZm9yIHRoZSBPQXV0aCBmbG93XG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY3VzdG9tUGFyYW1ldGVycz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG5cbiAgY29uc3RydWN0b3IoY29uZmlndXJhdGlvbjogT0F1dGhDb25maWd1cmF0aW9uKSB7XG4gICAgdGhpcy5wcm92aWRlckFybiA9IGNvbmZpZ3VyYXRpb24ucHJvdmlkZXJBcm47XG4gICAgdGhpcy5zZWNyZXRBcm4gPSBjb25maWd1cmF0aW9uLnNlY3JldEFybjtcbiAgICB0aGlzLnNjb3BlcyA9IGNvbmZpZ3VyYXRpb24uc2NvcGVzO1xuICAgIHRoaXMuY3VzdG9tUGFyYW1ldGVycyA9IGNvbmZpZ3VyYXRpb24uY3VzdG9tUGFyYW1ldGVycztcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudCB0aGUgbmVlZGVkIHBlcm1pc3Npb25zIHRvIHRoZSByb2xlIGZvciBPQXV0aCBhdXRoZW50aWNhdGlvblxuICAgKi9cbiAgZ3JhbnROZWVkZWRQZXJtaXNzaW9uc1RvUm9sZShyb2xlOiBJUm9sZSk6IEdyYW50IHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBzdGF0ZW1lbnRzID0gW1xuICAgICAgbmV3IFBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAuLi5HYXRld2F5UGVybXMuR0FURVdBWV9PQVVUSF9QRVJNUyxcbiAgICAgICAgICAuLi5HYXRld2F5UGVybXMuR0FURVdBWV9XT1JLTE9BRF9JREVOVElUWV9QRVJNUyxcbiAgICAgICAgXSxcbiAgICAgICAgcmVzb3VyY2VzOiBbdGhpcy5wcm92aWRlckFybl0sXG4gICAgICB9KSxcbiAgICAgIG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICBhY3Rpb25zOiBHYXRld2F5UGVybXMuU0VDUkVUU19QRVJNUyxcbiAgICAgICAgcmVzb3VyY2VzOiBbdGhpcy5zZWNyZXRBcm5dLFxuICAgICAgfSksXG4gICAgXTtcblxuICAgIHJldHVybiBHcmFudC5hZGRUb1ByaW5jaXBhbCh7XG4gICAgICBncmFudGVlOiByb2xlLFxuICAgICAgYWN0aW9uczogc3RhdGVtZW50cy5mbGF0TWFwKHMgPT4gcy5hY3Rpb25zKSxcbiAgICAgIHJlc291cmNlQXJuczogc3RhdGVtZW50cy5mbGF0TWFwKHMgPT4gcy5yZXNvdXJjZXMpLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgX3JlbmRlcigpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICBjcmVkZW50aWFsUHJvdmlkZXJUeXBlOiB0aGlzLmNyZWRlbnRpYWxQcm92aWRlclR5cGUsXG4gICAgICBjcmVkZW50aWFsUHJvdmlkZXI6IHtcbiAgICAgICAgb2F1dGhDcmVkZW50aWFsUHJvdmlkZXI6IHtcbiAgICAgICAgICBwcm92aWRlckFybjogdGhpcy5wcm92aWRlckFybixcbiAgICAgICAgICBzY29wZXM6IHRoaXMuc2NvcGVzLFxuICAgICAgICAgIGN1c3RvbVBhcmFtZXRlcnM6IHRoaXMuY3VzdG9tUGFyYW1ldGVycyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxufVxuIl19
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
export declare namespace GatewayPerms {
|
|
2
|
-
/******************************************************************************
|
|
3
|
-
* Data Plane Permissions
|
|
4
|
-
*****************************************************************************/
|
|
5
|
-
/**
|
|
6
|
-
* Permissions to invoke the gateway
|
|
7
|
-
* Used by agents or other services that need to call the gateway
|
|
8
|
-
*/
|
|
9
|
-
const INVOKE_PERMS: string[];
|
|
10
|
-
/******************************************************************************
|
|
11
|
-
* Execution Role Permissions
|
|
12
|
-
*****************************************************************************/
|
|
13
|
-
/**
|
|
14
|
-
* KMS permissions for encryption
|
|
15
|
-
* Required when using KMS keys for encryption
|
|
16
|
-
*/
|
|
17
|
-
const KMS_KEY_PERMS: string[];
|
|
18
|
-
/**
|
|
19
|
-
* Assume role permission
|
|
20
|
-
* Required for the gateway service to assume the execution role
|
|
21
|
-
*/
|
|
22
|
-
const ASSUME_ROLE: string[];
|
|
23
|
-
/**
|
|
24
|
-
* Outbound auth - Workload identity permissions
|
|
25
|
-
* Used to obtain access tokens for workload identity
|
|
26
|
-
*/
|
|
27
|
-
const GATEWAY_WORKLOAD_IDENTITY_PERMS: string[];
|
|
28
|
-
/**
|
|
29
|
-
* Outbound auth - OAuth permissions
|
|
30
|
-
* Used to obtain OAuth tokens for target authentication
|
|
31
|
-
*/
|
|
32
|
-
const GATEWAY_OAUTH_PERMS: string[];
|
|
33
|
-
/**
|
|
34
|
-
* Outbound auth - API Key permissions
|
|
35
|
-
* Used to retrieve API keys for target authentication
|
|
36
|
-
*/
|
|
37
|
-
const GATEWAY_API_KEY_PERMS: string[];
|
|
38
|
-
/**
|
|
39
|
-
* Secrets Manager permissions
|
|
40
|
-
* Required for storing and retrieving API keys and OAuth credentials
|
|
41
|
-
*/
|
|
42
|
-
const SECRETS_PERMS: string[];
|
|
43
|
-
/******************************************************************************
|
|
44
|
-
* Control Plane Permissions
|
|
45
|
-
*****************************************************************************/
|
|
46
|
-
/**
|
|
47
|
-
* Get permissions for gateway resources
|
|
48
|
-
*/
|
|
49
|
-
const GET_PERMS: string[];
|
|
50
|
-
/**
|
|
51
|
-
* List permissions for gateway resources
|
|
52
|
-
*/
|
|
53
|
-
const LIST_PERMS: string[];
|
|
54
|
-
/**
|
|
55
|
-
* Create permissions for gateway resources
|
|
56
|
-
*/
|
|
57
|
-
const CREATE_PERMS: string[];
|
|
58
|
-
/**
|
|
59
|
-
* Update permissions for gateway resources
|
|
60
|
-
*/
|
|
61
|
-
const UPDATE_PERMS: string[];
|
|
62
|
-
/**
|
|
63
|
-
* Delete permissions for gateway resources
|
|
64
|
-
*/
|
|
65
|
-
const DELETE_PERMS: string[];
|
|
66
|
-
/**
|
|
67
|
-
* Combined manage permissions (create, update, delete)
|
|
68
|
-
*/
|
|
69
|
-
const MANAGE_PERMS: string[];
|
|
70
|
-
/**
|
|
71
|
-
* Synchronization permissions for MCP server targets
|
|
72
|
-
* Used to refresh tool catalogs when MCP server tools change
|
|
73
|
-
*/
|
|
74
|
-
const SYNC_PERMS: string[];
|
|
75
|
-
}
|