pulumi-aws 7.9.1__py3-none-any.whl → 7.10.0__py3-none-any.whl
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.
- pulumi_aws/__init__.py +40 -0
- pulumi_aws/_inputs.py +40 -0
- pulumi_aws/appstream/_inputs.py +54 -0
- pulumi_aws/appstream/directory_config.py +55 -0
- pulumi_aws/appstream/outputs.py +49 -0
- pulumi_aws/bedrock/__init__.py +5 -0
- pulumi_aws/bedrock/_inputs.py +2097 -0
- pulumi_aws/bedrock/agent_agent.py +9 -7
- pulumi_aws/bedrock/agentcore_api_key_credential_provider.py +122 -1
- pulumi_aws/bedrock/agentcore_memory.py +614 -0
- pulumi_aws/bedrock/agentcore_memory_strategy.py +800 -0
- pulumi_aws/bedrock/agentcore_oauth2_credential_provider.py +477 -0
- pulumi_aws/bedrock/agentcore_token_vault_cmk.py +291 -0
- pulumi_aws/bedrock/agentcore_workload_identity.py +359 -0
- pulumi_aws/bedrock/outputs.py +1739 -0
- pulumi_aws/cloudtrail/trail.py +7 -7
- pulumi_aws/config/outputs.py +24 -0
- pulumi_aws/docdb/cluster.py +109 -1
- pulumi_aws/ec2/route.py +12 -0
- pulumi_aws/ecs/task_definition.py +7 -7
- pulumi_aws/fis/_inputs.py +3 -3
- pulumi_aws/fis/outputs.py +2 -2
- pulumi_aws/kms/key_policy.py +7 -7
- pulumi_aws/odb/network.py +47 -0
- pulumi_aws/organizations/_inputs.py +170 -42
- pulumi_aws/organizations/account.py +57 -8
- pulumi_aws/organizations/get_organization.py +7 -7
- pulumi_aws/organizations/organization.py +27 -27
- pulumi_aws/organizations/outputs.py +310 -62
- pulumi_aws/pulumi-plugin.json +1 -1
- pulumi_aws/rds/cluster.py +102 -1
- pulumi_aws/rds/instance.py +102 -1
- pulumi_aws/redshift/cluster.py +130 -1
- pulumi_aws/redshiftserverless/namespace.py +109 -1
- pulumi_aws/secretsmanager/secret_version.py +122 -1
- pulumi_aws/ssm/parameter.py +145 -2
- pulumi_aws/transfer/host_key.py +75 -1
- pulumi_aws/workspaces/get_workspace.py +19 -0
- {pulumi_aws-7.9.1.dist-info → pulumi_aws-7.10.0.dist-info}/METADATA +1 -1
- {pulumi_aws-7.9.1.dist-info → pulumi_aws-7.10.0.dist-info}/RECORD +42 -37
- {pulumi_aws-7.9.1.dist-info → pulumi_aws-7.10.0.dist-info}/WHEEL +0 -0
- {pulumi_aws-7.9.1.dist-info → pulumi_aws-7.10.0.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,477 @@
|
|
|
1
|
+
# coding=utf-8
|
|
2
|
+
# *** WARNING: this file was generated by pulumi-language-python. ***
|
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
|
|
5
|
+
import builtins as _builtins
|
|
6
|
+
import warnings
|
|
7
|
+
import sys
|
|
8
|
+
import pulumi
|
|
9
|
+
import pulumi.runtime
|
|
10
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
|
11
|
+
if sys.version_info >= (3, 11):
|
|
12
|
+
from typing import NotRequired, TypedDict, TypeAlias
|
|
13
|
+
else:
|
|
14
|
+
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
|
15
|
+
from .. import _utilities
|
|
16
|
+
from . import outputs
|
|
17
|
+
from ._inputs import *
|
|
18
|
+
|
|
19
|
+
__all__ = ['AgentcoreOauth2CredentialProviderArgs', 'AgentcoreOauth2CredentialProvider']
|
|
20
|
+
|
|
21
|
+
@pulumi.input_type
|
|
22
|
+
class AgentcoreOauth2CredentialProviderArgs:
|
|
23
|
+
def __init__(__self__, *,
|
|
24
|
+
credential_provider_vendor: pulumi.Input[_builtins.str],
|
|
25
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
26
|
+
oauth2_provider_config: Optional[pulumi.Input['AgentcoreOauth2CredentialProviderOauth2ProviderConfigArgs']] = None,
|
|
27
|
+
region: Optional[pulumi.Input[_builtins.str]] = None):
|
|
28
|
+
"""
|
|
29
|
+
The set of arguments for constructing a AgentcoreOauth2CredentialProvider resource.
|
|
30
|
+
:param pulumi.Input[_builtins.str] credential_provider_vendor: Vendor of the OAuth2 credential provider. Valid values: `CustomOauth2`, `GithubOauth2`, `GoogleOauth2`, `Microsoft`, `SalesforceOauth2`, `SlackOauth2`.
|
|
31
|
+
:param pulumi.Input[_builtins.str] name: Name of the OAuth2 credential provider.
|
|
32
|
+
:param pulumi.Input['AgentcoreOauth2CredentialProviderOauth2ProviderConfigArgs'] oauth2_provider_config: OAuth2 provider configuration. Must contain exactly one provider type. See `oauth2_provider_config` below.
|
|
33
|
+
|
|
34
|
+
The following arguments are optional:
|
|
35
|
+
:param pulumi.Input[_builtins.str] region: Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
|
|
36
|
+
"""
|
|
37
|
+
pulumi.set(__self__, "credential_provider_vendor", credential_provider_vendor)
|
|
38
|
+
if name is not None:
|
|
39
|
+
pulumi.set(__self__, "name", name)
|
|
40
|
+
if oauth2_provider_config is not None:
|
|
41
|
+
pulumi.set(__self__, "oauth2_provider_config", oauth2_provider_config)
|
|
42
|
+
if region is not None:
|
|
43
|
+
pulumi.set(__self__, "region", region)
|
|
44
|
+
|
|
45
|
+
@_builtins.property
|
|
46
|
+
@pulumi.getter(name="credentialProviderVendor")
|
|
47
|
+
def credential_provider_vendor(self) -> pulumi.Input[_builtins.str]:
|
|
48
|
+
"""
|
|
49
|
+
Vendor of the OAuth2 credential provider. Valid values: `CustomOauth2`, `GithubOauth2`, `GoogleOauth2`, `Microsoft`, `SalesforceOauth2`, `SlackOauth2`.
|
|
50
|
+
"""
|
|
51
|
+
return pulumi.get(self, "credential_provider_vendor")
|
|
52
|
+
|
|
53
|
+
@credential_provider_vendor.setter
|
|
54
|
+
def credential_provider_vendor(self, value: pulumi.Input[_builtins.str]):
|
|
55
|
+
pulumi.set(self, "credential_provider_vendor", value)
|
|
56
|
+
|
|
57
|
+
@_builtins.property
|
|
58
|
+
@pulumi.getter
|
|
59
|
+
def name(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
60
|
+
"""
|
|
61
|
+
Name of the OAuth2 credential provider.
|
|
62
|
+
"""
|
|
63
|
+
return pulumi.get(self, "name")
|
|
64
|
+
|
|
65
|
+
@name.setter
|
|
66
|
+
def name(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
67
|
+
pulumi.set(self, "name", value)
|
|
68
|
+
|
|
69
|
+
@_builtins.property
|
|
70
|
+
@pulumi.getter(name="oauth2ProviderConfig")
|
|
71
|
+
def oauth2_provider_config(self) -> Optional[pulumi.Input['AgentcoreOauth2CredentialProviderOauth2ProviderConfigArgs']]:
|
|
72
|
+
"""
|
|
73
|
+
OAuth2 provider configuration. Must contain exactly one provider type. See `oauth2_provider_config` below.
|
|
74
|
+
|
|
75
|
+
The following arguments are optional:
|
|
76
|
+
"""
|
|
77
|
+
return pulumi.get(self, "oauth2_provider_config")
|
|
78
|
+
|
|
79
|
+
@oauth2_provider_config.setter
|
|
80
|
+
def oauth2_provider_config(self, value: Optional[pulumi.Input['AgentcoreOauth2CredentialProviderOauth2ProviderConfigArgs']]):
|
|
81
|
+
pulumi.set(self, "oauth2_provider_config", value)
|
|
82
|
+
|
|
83
|
+
@_builtins.property
|
|
84
|
+
@pulumi.getter
|
|
85
|
+
def region(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
86
|
+
"""
|
|
87
|
+
Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
|
|
88
|
+
"""
|
|
89
|
+
return pulumi.get(self, "region")
|
|
90
|
+
|
|
91
|
+
@region.setter
|
|
92
|
+
def region(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
93
|
+
pulumi.set(self, "region", value)
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
@pulumi.input_type
|
|
97
|
+
class _AgentcoreOauth2CredentialProviderState:
|
|
98
|
+
def __init__(__self__, *,
|
|
99
|
+
client_secret_arns: Optional[pulumi.Input[Sequence[pulumi.Input['AgentcoreOauth2CredentialProviderClientSecretArnArgs']]]] = None,
|
|
100
|
+
credential_provider_arn: Optional[pulumi.Input[_builtins.str]] = None,
|
|
101
|
+
credential_provider_vendor: Optional[pulumi.Input[_builtins.str]] = None,
|
|
102
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
103
|
+
oauth2_provider_config: Optional[pulumi.Input['AgentcoreOauth2CredentialProviderOauth2ProviderConfigArgs']] = None,
|
|
104
|
+
region: Optional[pulumi.Input[_builtins.str]] = None):
|
|
105
|
+
"""
|
|
106
|
+
Input properties used for looking up and filtering AgentcoreOauth2CredentialProvider resources.
|
|
107
|
+
:param pulumi.Input[Sequence[pulumi.Input['AgentcoreOauth2CredentialProviderClientSecretArnArgs']]] client_secret_arns: ARN of the AWS Secrets Manager secret containing the client secret.
|
|
108
|
+
:param pulumi.Input[_builtins.str] credential_provider_arn: ARN of the OAuth2 credential provider.
|
|
109
|
+
:param pulumi.Input[_builtins.str] credential_provider_vendor: Vendor of the OAuth2 credential provider. Valid values: `CustomOauth2`, `GithubOauth2`, `GoogleOauth2`, `Microsoft`, `SalesforceOauth2`, `SlackOauth2`.
|
|
110
|
+
:param pulumi.Input[_builtins.str] name: Name of the OAuth2 credential provider.
|
|
111
|
+
:param pulumi.Input['AgentcoreOauth2CredentialProviderOauth2ProviderConfigArgs'] oauth2_provider_config: OAuth2 provider configuration. Must contain exactly one provider type. See `oauth2_provider_config` below.
|
|
112
|
+
|
|
113
|
+
The following arguments are optional:
|
|
114
|
+
:param pulumi.Input[_builtins.str] region: Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
|
|
115
|
+
"""
|
|
116
|
+
if client_secret_arns is not None:
|
|
117
|
+
pulumi.set(__self__, "client_secret_arns", client_secret_arns)
|
|
118
|
+
if credential_provider_arn is not None:
|
|
119
|
+
pulumi.set(__self__, "credential_provider_arn", credential_provider_arn)
|
|
120
|
+
if credential_provider_vendor is not None:
|
|
121
|
+
pulumi.set(__self__, "credential_provider_vendor", credential_provider_vendor)
|
|
122
|
+
if name is not None:
|
|
123
|
+
pulumi.set(__self__, "name", name)
|
|
124
|
+
if oauth2_provider_config is not None:
|
|
125
|
+
pulumi.set(__self__, "oauth2_provider_config", oauth2_provider_config)
|
|
126
|
+
if region is not None:
|
|
127
|
+
pulumi.set(__self__, "region", region)
|
|
128
|
+
|
|
129
|
+
@_builtins.property
|
|
130
|
+
@pulumi.getter(name="clientSecretArns")
|
|
131
|
+
def client_secret_arns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AgentcoreOauth2CredentialProviderClientSecretArnArgs']]]]:
|
|
132
|
+
"""
|
|
133
|
+
ARN of the AWS Secrets Manager secret containing the client secret.
|
|
134
|
+
"""
|
|
135
|
+
return pulumi.get(self, "client_secret_arns")
|
|
136
|
+
|
|
137
|
+
@client_secret_arns.setter
|
|
138
|
+
def client_secret_arns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AgentcoreOauth2CredentialProviderClientSecretArnArgs']]]]):
|
|
139
|
+
pulumi.set(self, "client_secret_arns", value)
|
|
140
|
+
|
|
141
|
+
@_builtins.property
|
|
142
|
+
@pulumi.getter(name="credentialProviderArn")
|
|
143
|
+
def credential_provider_arn(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
144
|
+
"""
|
|
145
|
+
ARN of the OAuth2 credential provider.
|
|
146
|
+
"""
|
|
147
|
+
return pulumi.get(self, "credential_provider_arn")
|
|
148
|
+
|
|
149
|
+
@credential_provider_arn.setter
|
|
150
|
+
def credential_provider_arn(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
151
|
+
pulumi.set(self, "credential_provider_arn", value)
|
|
152
|
+
|
|
153
|
+
@_builtins.property
|
|
154
|
+
@pulumi.getter(name="credentialProviderVendor")
|
|
155
|
+
def credential_provider_vendor(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
156
|
+
"""
|
|
157
|
+
Vendor of the OAuth2 credential provider. Valid values: `CustomOauth2`, `GithubOauth2`, `GoogleOauth2`, `Microsoft`, `SalesforceOauth2`, `SlackOauth2`.
|
|
158
|
+
"""
|
|
159
|
+
return pulumi.get(self, "credential_provider_vendor")
|
|
160
|
+
|
|
161
|
+
@credential_provider_vendor.setter
|
|
162
|
+
def credential_provider_vendor(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
163
|
+
pulumi.set(self, "credential_provider_vendor", value)
|
|
164
|
+
|
|
165
|
+
@_builtins.property
|
|
166
|
+
@pulumi.getter
|
|
167
|
+
def name(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
168
|
+
"""
|
|
169
|
+
Name of the OAuth2 credential provider.
|
|
170
|
+
"""
|
|
171
|
+
return pulumi.get(self, "name")
|
|
172
|
+
|
|
173
|
+
@name.setter
|
|
174
|
+
def name(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
175
|
+
pulumi.set(self, "name", value)
|
|
176
|
+
|
|
177
|
+
@_builtins.property
|
|
178
|
+
@pulumi.getter(name="oauth2ProviderConfig")
|
|
179
|
+
def oauth2_provider_config(self) -> Optional[pulumi.Input['AgentcoreOauth2CredentialProviderOauth2ProviderConfigArgs']]:
|
|
180
|
+
"""
|
|
181
|
+
OAuth2 provider configuration. Must contain exactly one provider type. See `oauth2_provider_config` below.
|
|
182
|
+
|
|
183
|
+
The following arguments are optional:
|
|
184
|
+
"""
|
|
185
|
+
return pulumi.get(self, "oauth2_provider_config")
|
|
186
|
+
|
|
187
|
+
@oauth2_provider_config.setter
|
|
188
|
+
def oauth2_provider_config(self, value: Optional[pulumi.Input['AgentcoreOauth2CredentialProviderOauth2ProviderConfigArgs']]):
|
|
189
|
+
pulumi.set(self, "oauth2_provider_config", value)
|
|
190
|
+
|
|
191
|
+
@_builtins.property
|
|
192
|
+
@pulumi.getter
|
|
193
|
+
def region(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
194
|
+
"""
|
|
195
|
+
Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
|
|
196
|
+
"""
|
|
197
|
+
return pulumi.get(self, "region")
|
|
198
|
+
|
|
199
|
+
@region.setter
|
|
200
|
+
def region(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
201
|
+
pulumi.set(self, "region", value)
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
@pulumi.type_token("aws:bedrock/agentcoreOauth2CredentialProvider:AgentcoreOauth2CredentialProvider")
|
|
205
|
+
class AgentcoreOauth2CredentialProvider(pulumi.CustomResource):
|
|
206
|
+
@overload
|
|
207
|
+
def __init__(__self__,
|
|
208
|
+
resource_name: str,
|
|
209
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
210
|
+
credential_provider_vendor: Optional[pulumi.Input[_builtins.str]] = None,
|
|
211
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
212
|
+
oauth2_provider_config: Optional[pulumi.Input[Union['AgentcoreOauth2CredentialProviderOauth2ProviderConfigArgs', 'AgentcoreOauth2CredentialProviderOauth2ProviderConfigArgsDict']]] = None,
|
|
213
|
+
region: Optional[pulumi.Input[_builtins.str]] = None,
|
|
214
|
+
__props__=None):
|
|
215
|
+
"""
|
|
216
|
+
## Example Usage
|
|
217
|
+
|
|
218
|
+
### GitHub OAuth Provider
|
|
219
|
+
|
|
220
|
+
```python
|
|
221
|
+
import pulumi
|
|
222
|
+
import pulumi_aws as aws
|
|
223
|
+
|
|
224
|
+
github = aws.bedrock.AgentcoreOauth2CredentialProvider("github",
|
|
225
|
+
name="github-oauth-provider",
|
|
226
|
+
credential_provider_vendor="GithubOauth2",
|
|
227
|
+
oauth2_provider_config={
|
|
228
|
+
"github_oauth2_provider_config": {
|
|
229
|
+
"client_id": "your-github-client-id",
|
|
230
|
+
"client_secret": "your-github-client-secret",
|
|
231
|
+
},
|
|
232
|
+
})
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
### Custom OAuth Provider with Discovery URL
|
|
236
|
+
|
|
237
|
+
### Custom OAuth Provider with Authorization Server Metadata
|
|
238
|
+
|
|
239
|
+
```python
|
|
240
|
+
import pulumi
|
|
241
|
+
import pulumi_aws as aws
|
|
242
|
+
|
|
243
|
+
keycloak = aws.bedrock.AgentcoreOauth2CredentialProvider("keycloak",
|
|
244
|
+
name="keycloak-oauth-provider",
|
|
245
|
+
credential_provider_vendor="CustomOauth2",
|
|
246
|
+
oauth2_provider_config={
|
|
247
|
+
"custom_oauth2_provider_config": {
|
|
248
|
+
"client_id_wo": "keycloak-client-id",
|
|
249
|
+
"client_secret_wo": "keycloak-client-secret",
|
|
250
|
+
"client_credentials_wo_version": 1,
|
|
251
|
+
"oauth_discovery": {
|
|
252
|
+
"authorization_server_metadata": {
|
|
253
|
+
"issuer": "https://auth.company.com/realms/production",
|
|
254
|
+
"authorization_endpoint": "https://auth.company.com/realms/production/protocol/openid-connect/auth",
|
|
255
|
+
"token_endpoint": "https://auth.company.com/realms/production/protocol/openid-connect/token",
|
|
256
|
+
"response_types": [
|
|
257
|
+
"code",
|
|
258
|
+
"id_token",
|
|
259
|
+
],
|
|
260
|
+
},
|
|
261
|
+
},
|
|
262
|
+
},
|
|
263
|
+
})
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
## Import
|
|
267
|
+
|
|
268
|
+
Using `pulumi import`, import Bedrock AgentCore OAuth2 Credential Provider using the provider name. For example:
|
|
269
|
+
|
|
270
|
+
```sh
|
|
271
|
+
$ pulumi import aws:bedrock/agentcoreOauth2CredentialProvider:AgentcoreOauth2CredentialProvider example oauth2-provider-name
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
:param str resource_name: The name of the resource.
|
|
275
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
276
|
+
:param pulumi.Input[_builtins.str] credential_provider_vendor: Vendor of the OAuth2 credential provider. Valid values: `CustomOauth2`, `GithubOauth2`, `GoogleOauth2`, `Microsoft`, `SalesforceOauth2`, `SlackOauth2`.
|
|
277
|
+
:param pulumi.Input[_builtins.str] name: Name of the OAuth2 credential provider.
|
|
278
|
+
:param pulumi.Input[Union['AgentcoreOauth2CredentialProviderOauth2ProviderConfigArgs', 'AgentcoreOauth2CredentialProviderOauth2ProviderConfigArgsDict']] oauth2_provider_config: OAuth2 provider configuration. Must contain exactly one provider type. See `oauth2_provider_config` below.
|
|
279
|
+
|
|
280
|
+
The following arguments are optional:
|
|
281
|
+
:param pulumi.Input[_builtins.str] region: Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
|
|
282
|
+
"""
|
|
283
|
+
...
|
|
284
|
+
@overload
|
|
285
|
+
def __init__(__self__,
|
|
286
|
+
resource_name: str,
|
|
287
|
+
args: AgentcoreOauth2CredentialProviderArgs,
|
|
288
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
|
289
|
+
"""
|
|
290
|
+
## Example Usage
|
|
291
|
+
|
|
292
|
+
### GitHub OAuth Provider
|
|
293
|
+
|
|
294
|
+
```python
|
|
295
|
+
import pulumi
|
|
296
|
+
import pulumi_aws as aws
|
|
297
|
+
|
|
298
|
+
github = aws.bedrock.AgentcoreOauth2CredentialProvider("github",
|
|
299
|
+
name="github-oauth-provider",
|
|
300
|
+
credential_provider_vendor="GithubOauth2",
|
|
301
|
+
oauth2_provider_config={
|
|
302
|
+
"github_oauth2_provider_config": {
|
|
303
|
+
"client_id": "your-github-client-id",
|
|
304
|
+
"client_secret": "your-github-client-secret",
|
|
305
|
+
},
|
|
306
|
+
})
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
### Custom OAuth Provider with Discovery URL
|
|
310
|
+
|
|
311
|
+
### Custom OAuth Provider with Authorization Server Metadata
|
|
312
|
+
|
|
313
|
+
```python
|
|
314
|
+
import pulumi
|
|
315
|
+
import pulumi_aws as aws
|
|
316
|
+
|
|
317
|
+
keycloak = aws.bedrock.AgentcoreOauth2CredentialProvider("keycloak",
|
|
318
|
+
name="keycloak-oauth-provider",
|
|
319
|
+
credential_provider_vendor="CustomOauth2",
|
|
320
|
+
oauth2_provider_config={
|
|
321
|
+
"custom_oauth2_provider_config": {
|
|
322
|
+
"client_id_wo": "keycloak-client-id",
|
|
323
|
+
"client_secret_wo": "keycloak-client-secret",
|
|
324
|
+
"client_credentials_wo_version": 1,
|
|
325
|
+
"oauth_discovery": {
|
|
326
|
+
"authorization_server_metadata": {
|
|
327
|
+
"issuer": "https://auth.company.com/realms/production",
|
|
328
|
+
"authorization_endpoint": "https://auth.company.com/realms/production/protocol/openid-connect/auth",
|
|
329
|
+
"token_endpoint": "https://auth.company.com/realms/production/protocol/openid-connect/token",
|
|
330
|
+
"response_types": [
|
|
331
|
+
"code",
|
|
332
|
+
"id_token",
|
|
333
|
+
],
|
|
334
|
+
},
|
|
335
|
+
},
|
|
336
|
+
},
|
|
337
|
+
})
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
## Import
|
|
341
|
+
|
|
342
|
+
Using `pulumi import`, import Bedrock AgentCore OAuth2 Credential Provider using the provider name. For example:
|
|
343
|
+
|
|
344
|
+
```sh
|
|
345
|
+
$ pulumi import aws:bedrock/agentcoreOauth2CredentialProvider:AgentcoreOauth2CredentialProvider example oauth2-provider-name
|
|
346
|
+
```
|
|
347
|
+
|
|
348
|
+
:param str resource_name: The name of the resource.
|
|
349
|
+
:param AgentcoreOauth2CredentialProviderArgs args: The arguments to use to populate this resource's properties.
|
|
350
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
351
|
+
"""
|
|
352
|
+
...
|
|
353
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
|
354
|
+
resource_args, opts = _utilities.get_resource_args_opts(AgentcoreOauth2CredentialProviderArgs, pulumi.ResourceOptions, *args, **kwargs)
|
|
355
|
+
if resource_args is not None:
|
|
356
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
|
357
|
+
else:
|
|
358
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
|
359
|
+
|
|
360
|
+
def _internal_init(__self__,
|
|
361
|
+
resource_name: str,
|
|
362
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
363
|
+
credential_provider_vendor: Optional[pulumi.Input[_builtins.str]] = None,
|
|
364
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
365
|
+
oauth2_provider_config: Optional[pulumi.Input[Union['AgentcoreOauth2CredentialProviderOauth2ProviderConfigArgs', 'AgentcoreOauth2CredentialProviderOauth2ProviderConfigArgsDict']]] = None,
|
|
366
|
+
region: Optional[pulumi.Input[_builtins.str]] = None,
|
|
367
|
+
__props__=None):
|
|
368
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
369
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
|
370
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
|
371
|
+
if opts.id is None:
|
|
372
|
+
if __props__ is not None:
|
|
373
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
|
374
|
+
__props__ = AgentcoreOauth2CredentialProviderArgs.__new__(AgentcoreOauth2CredentialProviderArgs)
|
|
375
|
+
|
|
376
|
+
if credential_provider_vendor is None and not opts.urn:
|
|
377
|
+
raise TypeError("Missing required property 'credential_provider_vendor'")
|
|
378
|
+
__props__.__dict__["credential_provider_vendor"] = credential_provider_vendor
|
|
379
|
+
__props__.__dict__["name"] = name
|
|
380
|
+
__props__.__dict__["oauth2_provider_config"] = oauth2_provider_config
|
|
381
|
+
__props__.__dict__["region"] = region
|
|
382
|
+
__props__.__dict__["client_secret_arns"] = None
|
|
383
|
+
__props__.__dict__["credential_provider_arn"] = None
|
|
384
|
+
super(AgentcoreOauth2CredentialProvider, __self__).__init__(
|
|
385
|
+
'aws:bedrock/agentcoreOauth2CredentialProvider:AgentcoreOauth2CredentialProvider',
|
|
386
|
+
resource_name,
|
|
387
|
+
__props__,
|
|
388
|
+
opts)
|
|
389
|
+
|
|
390
|
+
@staticmethod
|
|
391
|
+
def get(resource_name: str,
|
|
392
|
+
id: pulumi.Input[str],
|
|
393
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
394
|
+
client_secret_arns: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AgentcoreOauth2CredentialProviderClientSecretArnArgs', 'AgentcoreOauth2CredentialProviderClientSecretArnArgsDict']]]]] = None,
|
|
395
|
+
credential_provider_arn: Optional[pulumi.Input[_builtins.str]] = None,
|
|
396
|
+
credential_provider_vendor: Optional[pulumi.Input[_builtins.str]] = None,
|
|
397
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
398
|
+
oauth2_provider_config: Optional[pulumi.Input[Union['AgentcoreOauth2CredentialProviderOauth2ProviderConfigArgs', 'AgentcoreOauth2CredentialProviderOauth2ProviderConfigArgsDict']]] = None,
|
|
399
|
+
region: Optional[pulumi.Input[_builtins.str]] = None) -> 'AgentcoreOauth2CredentialProvider':
|
|
400
|
+
"""
|
|
401
|
+
Get an existing AgentcoreOauth2CredentialProvider resource's state with the given name, id, and optional extra
|
|
402
|
+
properties used to qualify the lookup.
|
|
403
|
+
|
|
404
|
+
:param str resource_name: The unique name of the resulting resource.
|
|
405
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
406
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
407
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['AgentcoreOauth2CredentialProviderClientSecretArnArgs', 'AgentcoreOauth2CredentialProviderClientSecretArnArgsDict']]]] client_secret_arns: ARN of the AWS Secrets Manager secret containing the client secret.
|
|
408
|
+
:param pulumi.Input[_builtins.str] credential_provider_arn: ARN of the OAuth2 credential provider.
|
|
409
|
+
:param pulumi.Input[_builtins.str] credential_provider_vendor: Vendor of the OAuth2 credential provider. Valid values: `CustomOauth2`, `GithubOauth2`, `GoogleOauth2`, `Microsoft`, `SalesforceOauth2`, `SlackOauth2`.
|
|
410
|
+
:param pulumi.Input[_builtins.str] name: Name of the OAuth2 credential provider.
|
|
411
|
+
:param pulumi.Input[Union['AgentcoreOauth2CredentialProviderOauth2ProviderConfigArgs', 'AgentcoreOauth2CredentialProviderOauth2ProviderConfigArgsDict']] oauth2_provider_config: OAuth2 provider configuration. Must contain exactly one provider type. See `oauth2_provider_config` below.
|
|
412
|
+
|
|
413
|
+
The following arguments are optional:
|
|
414
|
+
:param pulumi.Input[_builtins.str] region: Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
|
|
415
|
+
"""
|
|
416
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
417
|
+
|
|
418
|
+
__props__ = _AgentcoreOauth2CredentialProviderState.__new__(_AgentcoreOauth2CredentialProviderState)
|
|
419
|
+
|
|
420
|
+
__props__.__dict__["client_secret_arns"] = client_secret_arns
|
|
421
|
+
__props__.__dict__["credential_provider_arn"] = credential_provider_arn
|
|
422
|
+
__props__.__dict__["credential_provider_vendor"] = credential_provider_vendor
|
|
423
|
+
__props__.__dict__["name"] = name
|
|
424
|
+
__props__.__dict__["oauth2_provider_config"] = oauth2_provider_config
|
|
425
|
+
__props__.__dict__["region"] = region
|
|
426
|
+
return AgentcoreOauth2CredentialProvider(resource_name, opts=opts, __props__=__props__)
|
|
427
|
+
|
|
428
|
+
@_builtins.property
|
|
429
|
+
@pulumi.getter(name="clientSecretArns")
|
|
430
|
+
def client_secret_arns(self) -> pulumi.Output[Sequence['outputs.AgentcoreOauth2CredentialProviderClientSecretArn']]:
|
|
431
|
+
"""
|
|
432
|
+
ARN of the AWS Secrets Manager secret containing the client secret.
|
|
433
|
+
"""
|
|
434
|
+
return pulumi.get(self, "client_secret_arns")
|
|
435
|
+
|
|
436
|
+
@_builtins.property
|
|
437
|
+
@pulumi.getter(name="credentialProviderArn")
|
|
438
|
+
def credential_provider_arn(self) -> pulumi.Output[_builtins.str]:
|
|
439
|
+
"""
|
|
440
|
+
ARN of the OAuth2 credential provider.
|
|
441
|
+
"""
|
|
442
|
+
return pulumi.get(self, "credential_provider_arn")
|
|
443
|
+
|
|
444
|
+
@_builtins.property
|
|
445
|
+
@pulumi.getter(name="credentialProviderVendor")
|
|
446
|
+
def credential_provider_vendor(self) -> pulumi.Output[_builtins.str]:
|
|
447
|
+
"""
|
|
448
|
+
Vendor of the OAuth2 credential provider. Valid values: `CustomOauth2`, `GithubOauth2`, `GoogleOauth2`, `Microsoft`, `SalesforceOauth2`, `SlackOauth2`.
|
|
449
|
+
"""
|
|
450
|
+
return pulumi.get(self, "credential_provider_vendor")
|
|
451
|
+
|
|
452
|
+
@_builtins.property
|
|
453
|
+
@pulumi.getter
|
|
454
|
+
def name(self) -> pulumi.Output[_builtins.str]:
|
|
455
|
+
"""
|
|
456
|
+
Name of the OAuth2 credential provider.
|
|
457
|
+
"""
|
|
458
|
+
return pulumi.get(self, "name")
|
|
459
|
+
|
|
460
|
+
@_builtins.property
|
|
461
|
+
@pulumi.getter(name="oauth2ProviderConfig")
|
|
462
|
+
def oauth2_provider_config(self) -> pulumi.Output[Optional['outputs.AgentcoreOauth2CredentialProviderOauth2ProviderConfig']]:
|
|
463
|
+
"""
|
|
464
|
+
OAuth2 provider configuration. Must contain exactly one provider type. See `oauth2_provider_config` below.
|
|
465
|
+
|
|
466
|
+
The following arguments are optional:
|
|
467
|
+
"""
|
|
468
|
+
return pulumi.get(self, "oauth2_provider_config")
|
|
469
|
+
|
|
470
|
+
@_builtins.property
|
|
471
|
+
@pulumi.getter
|
|
472
|
+
def region(self) -> pulumi.Output[_builtins.str]:
|
|
473
|
+
"""
|
|
474
|
+
Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
|
|
475
|
+
"""
|
|
476
|
+
return pulumi.get(self, "region")
|
|
477
|
+
|