@cdktn/provider-tls 11.1.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 +6405 -0
- package/LICENSE +355 -0
- package/README.md +94 -0
- package/lib/cert-request/index.d.ts +236 -0
- package/lib/cert-request/index.js +534 -0
- package/lib/data-tls-certificate/index.d.ts +114 -0
- package/lib/data-tls-certificate/index.js +262 -0
- package/lib/data-tls-public-key/index.d.ts +64 -0
- package/lib/data-tls-public-key/index.js +141 -0
- package/lib/index.d.ts +11 -0
- package/lib/index.js +16 -0
- package/lib/lazy-index.d.ts +4 -0
- package/lib/lazy-index.js +14 -0
- package/lib/locally-signed-cert/index.d.ts +125 -0
- package/lib/locally-signed-cert/index.js +249 -0
- package/lib/private-key/index.d.ts +76 -0
- package/lib/private-key/index.js +164 -0
- package/lib/provider/index.d.ts +86 -0
- package/lib/provider/index.js +160 -0
- package/lib/self-signed-cert/index.d.ts +303 -0
- package/lib/self-signed-cert/index.js +663 -0
- package/package.json +152 -0
|
@@ -0,0 +1,303 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) HashiCorp, Inc.
|
|
3
|
+
* SPDX-License-Identifier: MPL-2.0
|
|
4
|
+
*/
|
|
5
|
+
import { Construct } from 'constructs';
|
|
6
|
+
import * as cdktf from 'cdktf';
|
|
7
|
+
export interface SelfSignedCertConfig extends cdktf.TerraformMetaArguments {
|
|
8
|
+
/**
|
|
9
|
+
* List of key usages allowed for the issued certificate. Values are defined in [RFC 5280](https://datatracker.ietf.org/doc/html/rfc5280) and combine flags defined by both [Key Usages](https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.3) and [Extended Key Usages](https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.12). Accepted values: `any_extended`, `cert_signing`, `client_auth`, `code_signing`, `content_commitment`, `crl_signing`, `data_encipherment`, `decipher_only`, `digital_signature`, `email_protection`, `encipher_only`, `ipsec_end_system`, `ipsec_tunnel`, `ipsec_user`, `key_agreement`, `key_encipherment`, `microsoft_commercial_code_signing`, `microsoft_kernel_code_signing`, `microsoft_server_gated_crypto`, `netscape_server_gated_crypto`, `ocsp_signing`, `server_auth`, `timestamping`.
|
|
10
|
+
*
|
|
11
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#allowed_uses SelfSignedCert#allowed_uses}
|
|
12
|
+
*/
|
|
13
|
+
readonly allowedUses: string[];
|
|
14
|
+
/**
|
|
15
|
+
* List of DNS names for which a certificate is being requested (i.e. certificate subjects).
|
|
16
|
+
*
|
|
17
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#dns_names SelfSignedCert#dns_names}
|
|
18
|
+
*/
|
|
19
|
+
readonly dnsNames?: string[];
|
|
20
|
+
/**
|
|
21
|
+
* The resource will consider the certificate to have expired the given number of hours before its actual expiry time. This can be useful to deploy an updated certificate in advance of the expiration of the current certificate. However, the old certificate remains valid until its true expiration time, since this resource does not (and cannot) support certificate revocation. Also, this advance update can only be performed should the Terraform configuration be applied during the early renewal period. (default: `0`)
|
|
22
|
+
*
|
|
23
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#early_renewal_hours SelfSignedCert#early_renewal_hours}
|
|
24
|
+
*/
|
|
25
|
+
readonly earlyRenewalHours?: number;
|
|
26
|
+
/**
|
|
27
|
+
* List of IP addresses for which a certificate is being requested (i.e. certificate subjects).
|
|
28
|
+
*
|
|
29
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#ip_addresses SelfSignedCert#ip_addresses}
|
|
30
|
+
*/
|
|
31
|
+
readonly ipAddresses?: string[];
|
|
32
|
+
/**
|
|
33
|
+
* Is the generated certificate representing a Certificate Authority (CA) (default: `false`).
|
|
34
|
+
*
|
|
35
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#is_ca_certificate SelfSignedCert#is_ca_certificate}
|
|
36
|
+
*/
|
|
37
|
+
readonly isCaCertificate?: boolean | cdktf.IResolvable;
|
|
38
|
+
/**
|
|
39
|
+
* Private key in [PEM (RFC 1421)](https://datatracker.ietf.org/doc/html/rfc1421) format, that the certificate will belong to. This can be read from a separate file using the [`file`](https://www.terraform.io/language/functions/file) interpolation function.
|
|
40
|
+
*
|
|
41
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#private_key_pem SelfSignedCert#private_key_pem}
|
|
42
|
+
*/
|
|
43
|
+
readonly privateKeyPem: string;
|
|
44
|
+
/**
|
|
45
|
+
* Should the generated certificate include an [authority key identifier](https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.1): for self-signed certificates this is the same value as the [subject key identifier](https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.2) (default: `false`).
|
|
46
|
+
*
|
|
47
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#set_authority_key_id SelfSignedCert#set_authority_key_id}
|
|
48
|
+
*/
|
|
49
|
+
readonly setAuthorityKeyId?: boolean | cdktf.IResolvable;
|
|
50
|
+
/**
|
|
51
|
+
* Should the generated certificate include a [subject key identifier](https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.2) (default: `false`).
|
|
52
|
+
*
|
|
53
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#set_subject_key_id SelfSignedCert#set_subject_key_id}
|
|
54
|
+
*/
|
|
55
|
+
readonly setSubjectKeyId?: boolean | cdktf.IResolvable;
|
|
56
|
+
/**
|
|
57
|
+
* List of URIs for which a certificate is being requested (i.e. certificate subjects).
|
|
58
|
+
*
|
|
59
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#uris SelfSignedCert#uris}
|
|
60
|
+
*/
|
|
61
|
+
readonly uris?: string[];
|
|
62
|
+
/**
|
|
63
|
+
* Number of hours, after initial issuing, that the certificate will remain valid for.
|
|
64
|
+
*
|
|
65
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#validity_period_hours SelfSignedCert#validity_period_hours}
|
|
66
|
+
*/
|
|
67
|
+
readonly validityPeriodHours: number;
|
|
68
|
+
/**
|
|
69
|
+
* subject block
|
|
70
|
+
*
|
|
71
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#subject SelfSignedCert#subject}
|
|
72
|
+
*/
|
|
73
|
+
readonly subject?: SelfSignedCertSubject[] | cdktf.IResolvable;
|
|
74
|
+
}
|
|
75
|
+
export interface SelfSignedCertSubject {
|
|
76
|
+
/**
|
|
77
|
+
* Distinguished name: `CN`
|
|
78
|
+
*
|
|
79
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#common_name SelfSignedCert#common_name}
|
|
80
|
+
*/
|
|
81
|
+
readonly commonName?: string;
|
|
82
|
+
/**
|
|
83
|
+
* Distinguished name: `C`
|
|
84
|
+
*
|
|
85
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#country SelfSignedCert#country}
|
|
86
|
+
*/
|
|
87
|
+
readonly country?: string;
|
|
88
|
+
/**
|
|
89
|
+
* ASN.1 Object Identifier (OID): `1.2.840.113549.1.9.1`
|
|
90
|
+
*
|
|
91
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#email_address SelfSignedCert#email_address}
|
|
92
|
+
*/
|
|
93
|
+
readonly emailAddress?: string;
|
|
94
|
+
/**
|
|
95
|
+
* Distinguished name: `L`
|
|
96
|
+
*
|
|
97
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#locality SelfSignedCert#locality}
|
|
98
|
+
*/
|
|
99
|
+
readonly locality?: string;
|
|
100
|
+
/**
|
|
101
|
+
* Distinguished name: `O`
|
|
102
|
+
*
|
|
103
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#organization SelfSignedCert#organization}
|
|
104
|
+
*/
|
|
105
|
+
readonly organization?: string;
|
|
106
|
+
/**
|
|
107
|
+
* Distinguished name: `OU`
|
|
108
|
+
*
|
|
109
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#organizational_unit SelfSignedCert#organizational_unit}
|
|
110
|
+
*/
|
|
111
|
+
readonly organizationalUnit?: string;
|
|
112
|
+
/**
|
|
113
|
+
* Distinguished name: `PC`
|
|
114
|
+
*
|
|
115
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#postal_code SelfSignedCert#postal_code}
|
|
116
|
+
*/
|
|
117
|
+
readonly postalCode?: string;
|
|
118
|
+
/**
|
|
119
|
+
* Distinguished name: `ST`
|
|
120
|
+
*
|
|
121
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#province SelfSignedCert#province}
|
|
122
|
+
*/
|
|
123
|
+
readonly province?: string;
|
|
124
|
+
/**
|
|
125
|
+
* Distinguished name: `SERIALNUMBER`
|
|
126
|
+
*
|
|
127
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#serial_number SelfSignedCert#serial_number}
|
|
128
|
+
*/
|
|
129
|
+
readonly serialNumber?: string;
|
|
130
|
+
/**
|
|
131
|
+
* Distinguished name: `STREET`
|
|
132
|
+
*
|
|
133
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#street_address SelfSignedCert#street_address}
|
|
134
|
+
*/
|
|
135
|
+
readonly streetAddress?: string[];
|
|
136
|
+
}
|
|
137
|
+
export declare function selfSignedCertSubjectToTerraform(struct?: SelfSignedCertSubject | cdktf.IResolvable): any;
|
|
138
|
+
export declare function selfSignedCertSubjectToHclTerraform(struct?: SelfSignedCertSubject | cdktf.IResolvable): any;
|
|
139
|
+
export declare class SelfSignedCertSubjectOutputReference extends cdktf.ComplexObject {
|
|
140
|
+
private isEmptyObject;
|
|
141
|
+
private resolvableValue?;
|
|
142
|
+
/**
|
|
143
|
+
* @param terraformResource The parent resource
|
|
144
|
+
* @param terraformAttribute The attribute on the parent resource this class is referencing
|
|
145
|
+
* @param complexObjectIndex the index of this item in the list
|
|
146
|
+
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
|
|
147
|
+
*/
|
|
148
|
+
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
|
|
149
|
+
get internalValue(): SelfSignedCertSubject | cdktf.IResolvable | undefined;
|
|
150
|
+
set internalValue(value: SelfSignedCertSubject | cdktf.IResolvable | undefined);
|
|
151
|
+
private _commonName?;
|
|
152
|
+
get commonName(): string;
|
|
153
|
+
set commonName(value: string);
|
|
154
|
+
resetCommonName(): void;
|
|
155
|
+
get commonNameInput(): string | undefined;
|
|
156
|
+
private _country?;
|
|
157
|
+
get country(): string;
|
|
158
|
+
set country(value: string);
|
|
159
|
+
resetCountry(): void;
|
|
160
|
+
get countryInput(): string | undefined;
|
|
161
|
+
private _emailAddress?;
|
|
162
|
+
get emailAddress(): string;
|
|
163
|
+
set emailAddress(value: string);
|
|
164
|
+
resetEmailAddress(): void;
|
|
165
|
+
get emailAddressInput(): string | undefined;
|
|
166
|
+
private _locality?;
|
|
167
|
+
get locality(): string;
|
|
168
|
+
set locality(value: string);
|
|
169
|
+
resetLocality(): void;
|
|
170
|
+
get localityInput(): string | undefined;
|
|
171
|
+
private _organization?;
|
|
172
|
+
get organization(): string;
|
|
173
|
+
set organization(value: string);
|
|
174
|
+
resetOrganization(): void;
|
|
175
|
+
get organizationInput(): string | undefined;
|
|
176
|
+
private _organizationalUnit?;
|
|
177
|
+
get organizationalUnit(): string;
|
|
178
|
+
set organizationalUnit(value: string);
|
|
179
|
+
resetOrganizationalUnit(): void;
|
|
180
|
+
get organizationalUnitInput(): string | undefined;
|
|
181
|
+
private _postalCode?;
|
|
182
|
+
get postalCode(): string;
|
|
183
|
+
set postalCode(value: string);
|
|
184
|
+
resetPostalCode(): void;
|
|
185
|
+
get postalCodeInput(): string | undefined;
|
|
186
|
+
private _province?;
|
|
187
|
+
get province(): string;
|
|
188
|
+
set province(value: string);
|
|
189
|
+
resetProvince(): void;
|
|
190
|
+
get provinceInput(): string | undefined;
|
|
191
|
+
private _serialNumber?;
|
|
192
|
+
get serialNumber(): string;
|
|
193
|
+
set serialNumber(value: string);
|
|
194
|
+
resetSerialNumber(): void;
|
|
195
|
+
get serialNumberInput(): string | undefined;
|
|
196
|
+
private _streetAddress?;
|
|
197
|
+
get streetAddress(): string[];
|
|
198
|
+
set streetAddress(value: string[]);
|
|
199
|
+
resetStreetAddress(): void;
|
|
200
|
+
get streetAddressInput(): string[] | undefined;
|
|
201
|
+
}
|
|
202
|
+
export declare class SelfSignedCertSubjectList extends cdktf.ComplexList {
|
|
203
|
+
protected terraformResource: cdktf.IInterpolatingParent;
|
|
204
|
+
protected terraformAttribute: string;
|
|
205
|
+
protected wrapsSet: boolean;
|
|
206
|
+
internalValue?: SelfSignedCertSubject[] | cdktf.IResolvable;
|
|
207
|
+
/**
|
|
208
|
+
* @param terraformResource The parent resource
|
|
209
|
+
* @param terraformAttribute The attribute on the parent resource this class is referencing
|
|
210
|
+
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
|
|
211
|
+
*/
|
|
212
|
+
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
|
|
213
|
+
/**
|
|
214
|
+
* @param index the index of the item to return
|
|
215
|
+
*/
|
|
216
|
+
get(index: number): SelfSignedCertSubjectOutputReference;
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* Represents a {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert tls_self_signed_cert}
|
|
220
|
+
*/
|
|
221
|
+
export declare class SelfSignedCert extends cdktf.TerraformResource {
|
|
222
|
+
static readonly tfResourceType = "tls_self_signed_cert";
|
|
223
|
+
/**
|
|
224
|
+
* Generates CDKTF code for importing a SelfSignedCert resource upon running "cdktf plan <stack-name>"
|
|
225
|
+
* @param scope The scope in which to define this construct
|
|
226
|
+
* @param importToId The construct id used in the generated config for the SelfSignedCert to import
|
|
227
|
+
* @param importFromId The id of the existing SelfSignedCert that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert#import import section} in the documentation of this resource for the id to use
|
|
228
|
+
* @param provider? Optional instance of the provider where the SelfSignedCert to import is found
|
|
229
|
+
*/
|
|
230
|
+
static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): cdktf.ImportableResource;
|
|
231
|
+
/**
|
|
232
|
+
* Create a new {@link https://registry.terraform.io/providers/hashicorp/tls/4.1.0/docs/resources/self_signed_cert tls_self_signed_cert} Resource
|
|
233
|
+
*
|
|
234
|
+
* @param scope The scope in which to define this construct
|
|
235
|
+
* @param id The scoped construct ID. Must be unique amongst siblings in the same scope
|
|
236
|
+
* @param options SelfSignedCertConfig
|
|
237
|
+
*/
|
|
238
|
+
constructor(scope: Construct, id: string, config: SelfSignedCertConfig);
|
|
239
|
+
private _allowedUses?;
|
|
240
|
+
get allowedUses(): string[];
|
|
241
|
+
set allowedUses(value: string[]);
|
|
242
|
+
get allowedUsesInput(): string[] | undefined;
|
|
243
|
+
get certPem(): string;
|
|
244
|
+
private _dnsNames?;
|
|
245
|
+
get dnsNames(): string[];
|
|
246
|
+
set dnsNames(value: string[]);
|
|
247
|
+
resetDnsNames(): void;
|
|
248
|
+
get dnsNamesInput(): string[] | undefined;
|
|
249
|
+
private _earlyRenewalHours?;
|
|
250
|
+
get earlyRenewalHours(): number;
|
|
251
|
+
set earlyRenewalHours(value: number);
|
|
252
|
+
resetEarlyRenewalHours(): void;
|
|
253
|
+
get earlyRenewalHoursInput(): number | undefined;
|
|
254
|
+
get id(): string;
|
|
255
|
+
private _ipAddresses?;
|
|
256
|
+
get ipAddresses(): string[];
|
|
257
|
+
set ipAddresses(value: string[]);
|
|
258
|
+
resetIpAddresses(): void;
|
|
259
|
+
get ipAddressesInput(): string[] | undefined;
|
|
260
|
+
private _isCaCertificate?;
|
|
261
|
+
get isCaCertificate(): boolean | cdktf.IResolvable;
|
|
262
|
+
set isCaCertificate(value: boolean | cdktf.IResolvable);
|
|
263
|
+
resetIsCaCertificate(): void;
|
|
264
|
+
get isCaCertificateInput(): boolean | cdktf.IResolvable | undefined;
|
|
265
|
+
get keyAlgorithm(): string;
|
|
266
|
+
private _privateKeyPem?;
|
|
267
|
+
get privateKeyPem(): string;
|
|
268
|
+
set privateKeyPem(value: string);
|
|
269
|
+
get privateKeyPemInput(): string | undefined;
|
|
270
|
+
get readyForRenewal(): cdktf.IResolvable;
|
|
271
|
+
private _setAuthorityKeyId?;
|
|
272
|
+
get setAuthorityKeyId(): boolean | cdktf.IResolvable;
|
|
273
|
+
set setAuthorityKeyId(value: boolean | cdktf.IResolvable);
|
|
274
|
+
resetSetAuthorityKeyId(): void;
|
|
275
|
+
get setAuthorityKeyIdInput(): boolean | cdktf.IResolvable | undefined;
|
|
276
|
+
private _setSubjectKeyId?;
|
|
277
|
+
get setSubjectKeyId(): boolean | cdktf.IResolvable;
|
|
278
|
+
set setSubjectKeyId(value: boolean | cdktf.IResolvable);
|
|
279
|
+
resetSetSubjectKeyId(): void;
|
|
280
|
+
get setSubjectKeyIdInput(): boolean | cdktf.IResolvable | undefined;
|
|
281
|
+
private _uris?;
|
|
282
|
+
get uris(): string[];
|
|
283
|
+
set uris(value: string[]);
|
|
284
|
+
resetUris(): void;
|
|
285
|
+
get urisInput(): string[] | undefined;
|
|
286
|
+
get validityEndTime(): string;
|
|
287
|
+
private _validityPeriodHours?;
|
|
288
|
+
get validityPeriodHours(): number;
|
|
289
|
+
set validityPeriodHours(value: number);
|
|
290
|
+
get validityPeriodHoursInput(): number | undefined;
|
|
291
|
+
get validityStartTime(): string;
|
|
292
|
+
private _subject;
|
|
293
|
+
get subject(): SelfSignedCertSubjectList;
|
|
294
|
+
putSubject(value: SelfSignedCertSubject[] | cdktf.IResolvable): void;
|
|
295
|
+
resetSubject(): void;
|
|
296
|
+
get subjectInput(): cdktf.IResolvable | SelfSignedCertSubject[] | undefined;
|
|
297
|
+
protected synthesizeAttributes(): {
|
|
298
|
+
[name: string]: any;
|
|
299
|
+
};
|
|
300
|
+
protected synthesizeHclAttributes(): {
|
|
301
|
+
[name: string]: any;
|
|
302
|
+
};
|
|
303
|
+
}
|