pulumi-akamai 9.1.0a1757049021__py3-none-any.whl → 9.2.0a1757567369__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.

Potentially problematic release.


This version of pulumi-akamai might be problematic. Click here for more details.

@@ -0,0 +1,654 @@
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__ = ['MtlskeystoreClientCertificateAkamaiArgs', 'MtlskeystoreClientCertificateAkamai']
20
+
21
+ @pulumi.input_type
22
+ class MtlskeystoreClientCertificateAkamaiArgs:
23
+ def __init__(__self__, *,
24
+ certificate_name: pulumi.Input[_builtins.str],
25
+ contract_id: pulumi.Input[_builtins.str],
26
+ geography: pulumi.Input[_builtins.str],
27
+ group_id: pulumi.Input[_builtins.int],
28
+ notification_emails: pulumi.Input[Sequence[pulumi.Input[_builtins.str]]],
29
+ secure_network: pulumi.Input[_builtins.str],
30
+ key_algorithm: Optional[pulumi.Input[_builtins.str]] = None,
31
+ subject: Optional[pulumi.Input[_builtins.str]] = None):
32
+ """
33
+ The set of arguments for constructing a MtlskeystoreClientCertificateAkamai resource.
34
+ :param pulumi.Input[_builtins.str] certificate_name: The name of the client certificate. Must be between 1 and 64 characters.
35
+ :param pulumi.Input[_builtins.str] contract_id: The contract assigned to the client certificate. Must have a length of at least 1.
36
+ :param pulumi.Input[_builtins.str] geography: Specifies the type of network to deploy the client certificate. Possible values: `CORE`, `RUSSIA_AND_CORE`, or `CHINA_AND_CORE`.
37
+ :param pulumi.Input[_builtins.int] group_id: The group assigned to the client certificate. Must be greater than or equal to 0.
38
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] notification_emails: The email addresses to notify for client certificate-related issues. Must have at least one email address.
39
+ :param pulumi.Input[_builtins.str] secure_network: Identifies the network deployment type. Possible values: `STANDARD_TLS` or `ENHANCED_TLS`.
40
+ :param pulumi.Input[_builtins.str] key_algorithm: The cryptographic algorithm used for key generation. Possible values: `RSA` or `ECDSA`.
41
+ :param pulumi.Input[_builtins.str] subject: The CA certificate’s key value details. The `CN` attribute is required and included in the subject. When not specified, the subject is constructed in this format: `/C=US/O=Akamai Technologies, Inc./OU={vcd_id} {contract_id} {group_id}/CN={certificate_name}/`.
42
+ """
43
+ pulumi.set(__self__, "certificate_name", certificate_name)
44
+ pulumi.set(__self__, "contract_id", contract_id)
45
+ pulumi.set(__self__, "geography", geography)
46
+ pulumi.set(__self__, "group_id", group_id)
47
+ pulumi.set(__self__, "notification_emails", notification_emails)
48
+ pulumi.set(__self__, "secure_network", secure_network)
49
+ if key_algorithm is not None:
50
+ pulumi.set(__self__, "key_algorithm", key_algorithm)
51
+ if subject is not None:
52
+ pulumi.set(__self__, "subject", subject)
53
+
54
+ @_builtins.property
55
+ @pulumi.getter(name="certificateName")
56
+ def certificate_name(self) -> pulumi.Input[_builtins.str]:
57
+ """
58
+ The name of the client certificate. Must be between 1 and 64 characters.
59
+ """
60
+ return pulumi.get(self, "certificate_name")
61
+
62
+ @certificate_name.setter
63
+ def certificate_name(self, value: pulumi.Input[_builtins.str]):
64
+ pulumi.set(self, "certificate_name", value)
65
+
66
+ @_builtins.property
67
+ @pulumi.getter(name="contractId")
68
+ def contract_id(self) -> pulumi.Input[_builtins.str]:
69
+ """
70
+ The contract assigned to the client certificate. Must have a length of at least 1.
71
+ """
72
+ return pulumi.get(self, "contract_id")
73
+
74
+ @contract_id.setter
75
+ def contract_id(self, value: pulumi.Input[_builtins.str]):
76
+ pulumi.set(self, "contract_id", value)
77
+
78
+ @_builtins.property
79
+ @pulumi.getter
80
+ def geography(self) -> pulumi.Input[_builtins.str]:
81
+ """
82
+ Specifies the type of network to deploy the client certificate. Possible values: `CORE`, `RUSSIA_AND_CORE`, or `CHINA_AND_CORE`.
83
+ """
84
+ return pulumi.get(self, "geography")
85
+
86
+ @geography.setter
87
+ def geography(self, value: pulumi.Input[_builtins.str]):
88
+ pulumi.set(self, "geography", value)
89
+
90
+ @_builtins.property
91
+ @pulumi.getter(name="groupId")
92
+ def group_id(self) -> pulumi.Input[_builtins.int]:
93
+ """
94
+ The group assigned to the client certificate. Must be greater than or equal to 0.
95
+ """
96
+ return pulumi.get(self, "group_id")
97
+
98
+ @group_id.setter
99
+ def group_id(self, value: pulumi.Input[_builtins.int]):
100
+ pulumi.set(self, "group_id", value)
101
+
102
+ @_builtins.property
103
+ @pulumi.getter(name="notificationEmails")
104
+ def notification_emails(self) -> pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]:
105
+ """
106
+ The email addresses to notify for client certificate-related issues. Must have at least one email address.
107
+ """
108
+ return pulumi.get(self, "notification_emails")
109
+
110
+ @notification_emails.setter
111
+ def notification_emails(self, value: pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]):
112
+ pulumi.set(self, "notification_emails", value)
113
+
114
+ @_builtins.property
115
+ @pulumi.getter(name="secureNetwork")
116
+ def secure_network(self) -> pulumi.Input[_builtins.str]:
117
+ """
118
+ Identifies the network deployment type. Possible values: `STANDARD_TLS` or `ENHANCED_TLS`.
119
+ """
120
+ return pulumi.get(self, "secure_network")
121
+
122
+ @secure_network.setter
123
+ def secure_network(self, value: pulumi.Input[_builtins.str]):
124
+ pulumi.set(self, "secure_network", value)
125
+
126
+ @_builtins.property
127
+ @pulumi.getter(name="keyAlgorithm")
128
+ def key_algorithm(self) -> Optional[pulumi.Input[_builtins.str]]:
129
+ """
130
+ The cryptographic algorithm used for key generation. Possible values: `RSA` or `ECDSA`.
131
+ """
132
+ return pulumi.get(self, "key_algorithm")
133
+
134
+ @key_algorithm.setter
135
+ def key_algorithm(self, value: Optional[pulumi.Input[_builtins.str]]):
136
+ pulumi.set(self, "key_algorithm", value)
137
+
138
+ @_builtins.property
139
+ @pulumi.getter
140
+ def subject(self) -> Optional[pulumi.Input[_builtins.str]]:
141
+ """
142
+ The CA certificate’s key value details. The `CN` attribute is required and included in the subject. When not specified, the subject is constructed in this format: `/C=US/O=Akamai Technologies, Inc./OU={vcd_id} {contract_id} {group_id}/CN={certificate_name}/`.
143
+ """
144
+ return pulumi.get(self, "subject")
145
+
146
+ @subject.setter
147
+ def subject(self, value: Optional[pulumi.Input[_builtins.str]]):
148
+ pulumi.set(self, "subject", value)
149
+
150
+
151
+ @pulumi.input_type
152
+ class _MtlskeystoreClientCertificateAkamaiState:
153
+ def __init__(__self__, *,
154
+ certificate_id: Optional[pulumi.Input[_builtins.int]] = None,
155
+ certificate_name: Optional[pulumi.Input[_builtins.str]] = None,
156
+ contract_id: Optional[pulumi.Input[_builtins.str]] = None,
157
+ created_by: Optional[pulumi.Input[_builtins.str]] = None,
158
+ created_date: Optional[pulumi.Input[_builtins.str]] = None,
159
+ current_guid: Optional[pulumi.Input[_builtins.str]] = None,
160
+ geography: Optional[pulumi.Input[_builtins.str]] = None,
161
+ group_id: Optional[pulumi.Input[_builtins.int]] = None,
162
+ key_algorithm: Optional[pulumi.Input[_builtins.str]] = None,
163
+ notification_emails: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
164
+ previous_guid: Optional[pulumi.Input[_builtins.str]] = None,
165
+ secure_network: Optional[pulumi.Input[_builtins.str]] = None,
166
+ subject: Optional[pulumi.Input[_builtins.str]] = None,
167
+ versions: Optional[pulumi.Input[Sequence[pulumi.Input['MtlskeystoreClientCertificateAkamaiVersionArgs']]]] = None):
168
+ """
169
+ Input properties used for looking up and filtering MtlskeystoreClientCertificateAkamai resources.
170
+ :param pulumi.Input[_builtins.int] certificate_id: The unique identifier of the client certificate.
171
+ :param pulumi.Input[_builtins.str] certificate_name: The name of the client certificate. Must be between 1 and 64 characters.
172
+ :param pulumi.Input[_builtins.str] contract_id: The contract assigned to the client certificate. Must have a length of at least 1.
173
+ :param pulumi.Input[_builtins.str] created_by: The user who created the client certificate. Read-only.
174
+ :param pulumi.Input[_builtins.str] created_date: An ISO 8601 timestamp indicating the client certificate's creation. Read-only.
175
+ :param pulumi.Input[_builtins.str] current_guid: Unique identifier for the `current` client certificate version.
176
+ :param pulumi.Input[_builtins.str] geography: Specifies the type of network to deploy the client certificate. Possible values: `CORE`, `RUSSIA_AND_CORE`, or `CHINA_AND_CORE`.
177
+ :param pulumi.Input[_builtins.int] group_id: The group assigned to the client certificate. Must be greater than or equal to 0.
178
+ :param pulumi.Input[_builtins.str] key_algorithm: The cryptographic algorithm used for key generation. Possible values: `RSA` or `ECDSA`.
179
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] notification_emails: The email addresses to notify for client certificate-related issues. Must have at least one email address.
180
+ :param pulumi.Input[_builtins.str] previous_guid: Unique identifier for the `previous` client certificate version.
181
+ :param pulumi.Input[_builtins.str] secure_network: Identifies the network deployment type. Possible values: `STANDARD_TLS` or `ENHANCED_TLS`.
182
+ :param pulumi.Input[_builtins.str] subject: The CA certificate’s key value details. The `CN` attribute is required and included in the subject. When not specified, the subject is constructed in this format: `/C=US/O=Akamai Technologies, Inc./OU={vcd_id} {contract_id} {group_id}/CN={certificate_name}/`.
183
+ :param pulumi.Input[Sequence[pulumi.Input['MtlskeystoreClientCertificateAkamaiVersionArgs']]] versions: A list of client certificate versions. Each version represents a specific iteration of the client certificate.
184
+ """
185
+ if certificate_id is not None:
186
+ pulumi.set(__self__, "certificate_id", certificate_id)
187
+ if certificate_name is not None:
188
+ pulumi.set(__self__, "certificate_name", certificate_name)
189
+ if contract_id is not None:
190
+ pulumi.set(__self__, "contract_id", contract_id)
191
+ if created_by is not None:
192
+ pulumi.set(__self__, "created_by", created_by)
193
+ if created_date is not None:
194
+ pulumi.set(__self__, "created_date", created_date)
195
+ if current_guid is not None:
196
+ pulumi.set(__self__, "current_guid", current_guid)
197
+ if geography is not None:
198
+ pulumi.set(__self__, "geography", geography)
199
+ if group_id is not None:
200
+ pulumi.set(__self__, "group_id", group_id)
201
+ if key_algorithm is not None:
202
+ pulumi.set(__self__, "key_algorithm", key_algorithm)
203
+ if notification_emails is not None:
204
+ pulumi.set(__self__, "notification_emails", notification_emails)
205
+ if previous_guid is not None:
206
+ pulumi.set(__self__, "previous_guid", previous_guid)
207
+ if secure_network is not None:
208
+ pulumi.set(__self__, "secure_network", secure_network)
209
+ if subject is not None:
210
+ pulumi.set(__self__, "subject", subject)
211
+ if versions is not None:
212
+ pulumi.set(__self__, "versions", versions)
213
+
214
+ @_builtins.property
215
+ @pulumi.getter(name="certificateId")
216
+ def certificate_id(self) -> Optional[pulumi.Input[_builtins.int]]:
217
+ """
218
+ The unique identifier of the client certificate.
219
+ """
220
+ return pulumi.get(self, "certificate_id")
221
+
222
+ @certificate_id.setter
223
+ def certificate_id(self, value: Optional[pulumi.Input[_builtins.int]]):
224
+ pulumi.set(self, "certificate_id", value)
225
+
226
+ @_builtins.property
227
+ @pulumi.getter(name="certificateName")
228
+ def certificate_name(self) -> Optional[pulumi.Input[_builtins.str]]:
229
+ """
230
+ The name of the client certificate. Must be between 1 and 64 characters.
231
+ """
232
+ return pulumi.get(self, "certificate_name")
233
+
234
+ @certificate_name.setter
235
+ def certificate_name(self, value: Optional[pulumi.Input[_builtins.str]]):
236
+ pulumi.set(self, "certificate_name", value)
237
+
238
+ @_builtins.property
239
+ @pulumi.getter(name="contractId")
240
+ def contract_id(self) -> Optional[pulumi.Input[_builtins.str]]:
241
+ """
242
+ The contract assigned to the client certificate. Must have a length of at least 1.
243
+ """
244
+ return pulumi.get(self, "contract_id")
245
+
246
+ @contract_id.setter
247
+ def contract_id(self, value: Optional[pulumi.Input[_builtins.str]]):
248
+ pulumi.set(self, "contract_id", value)
249
+
250
+ @_builtins.property
251
+ @pulumi.getter(name="createdBy")
252
+ def created_by(self) -> Optional[pulumi.Input[_builtins.str]]:
253
+ """
254
+ The user who created the client certificate. Read-only.
255
+ """
256
+ return pulumi.get(self, "created_by")
257
+
258
+ @created_by.setter
259
+ def created_by(self, value: Optional[pulumi.Input[_builtins.str]]):
260
+ pulumi.set(self, "created_by", value)
261
+
262
+ @_builtins.property
263
+ @pulumi.getter(name="createdDate")
264
+ def created_date(self) -> Optional[pulumi.Input[_builtins.str]]:
265
+ """
266
+ An ISO 8601 timestamp indicating the client certificate's creation. Read-only.
267
+ """
268
+ return pulumi.get(self, "created_date")
269
+
270
+ @created_date.setter
271
+ def created_date(self, value: Optional[pulumi.Input[_builtins.str]]):
272
+ pulumi.set(self, "created_date", value)
273
+
274
+ @_builtins.property
275
+ @pulumi.getter(name="currentGuid")
276
+ def current_guid(self) -> Optional[pulumi.Input[_builtins.str]]:
277
+ """
278
+ Unique identifier for the `current` client certificate version.
279
+ """
280
+ return pulumi.get(self, "current_guid")
281
+
282
+ @current_guid.setter
283
+ def current_guid(self, value: Optional[pulumi.Input[_builtins.str]]):
284
+ pulumi.set(self, "current_guid", value)
285
+
286
+ @_builtins.property
287
+ @pulumi.getter
288
+ def geography(self) -> Optional[pulumi.Input[_builtins.str]]:
289
+ """
290
+ Specifies the type of network to deploy the client certificate. Possible values: `CORE`, `RUSSIA_AND_CORE`, or `CHINA_AND_CORE`.
291
+ """
292
+ return pulumi.get(self, "geography")
293
+
294
+ @geography.setter
295
+ def geography(self, value: Optional[pulumi.Input[_builtins.str]]):
296
+ pulumi.set(self, "geography", value)
297
+
298
+ @_builtins.property
299
+ @pulumi.getter(name="groupId")
300
+ def group_id(self) -> Optional[pulumi.Input[_builtins.int]]:
301
+ """
302
+ The group assigned to the client certificate. Must be greater than or equal to 0.
303
+ """
304
+ return pulumi.get(self, "group_id")
305
+
306
+ @group_id.setter
307
+ def group_id(self, value: Optional[pulumi.Input[_builtins.int]]):
308
+ pulumi.set(self, "group_id", value)
309
+
310
+ @_builtins.property
311
+ @pulumi.getter(name="keyAlgorithm")
312
+ def key_algorithm(self) -> Optional[pulumi.Input[_builtins.str]]:
313
+ """
314
+ The cryptographic algorithm used for key generation. Possible values: `RSA` or `ECDSA`.
315
+ """
316
+ return pulumi.get(self, "key_algorithm")
317
+
318
+ @key_algorithm.setter
319
+ def key_algorithm(self, value: Optional[pulumi.Input[_builtins.str]]):
320
+ pulumi.set(self, "key_algorithm", value)
321
+
322
+ @_builtins.property
323
+ @pulumi.getter(name="notificationEmails")
324
+ def notification_emails(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
325
+ """
326
+ The email addresses to notify for client certificate-related issues. Must have at least one email address.
327
+ """
328
+ return pulumi.get(self, "notification_emails")
329
+
330
+ @notification_emails.setter
331
+ def notification_emails(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
332
+ pulumi.set(self, "notification_emails", value)
333
+
334
+ @_builtins.property
335
+ @pulumi.getter(name="previousGuid")
336
+ def previous_guid(self) -> Optional[pulumi.Input[_builtins.str]]:
337
+ """
338
+ Unique identifier for the `previous` client certificate version.
339
+ """
340
+ return pulumi.get(self, "previous_guid")
341
+
342
+ @previous_guid.setter
343
+ def previous_guid(self, value: Optional[pulumi.Input[_builtins.str]]):
344
+ pulumi.set(self, "previous_guid", value)
345
+
346
+ @_builtins.property
347
+ @pulumi.getter(name="secureNetwork")
348
+ def secure_network(self) -> Optional[pulumi.Input[_builtins.str]]:
349
+ """
350
+ Identifies the network deployment type. Possible values: `STANDARD_TLS` or `ENHANCED_TLS`.
351
+ """
352
+ return pulumi.get(self, "secure_network")
353
+
354
+ @secure_network.setter
355
+ def secure_network(self, value: Optional[pulumi.Input[_builtins.str]]):
356
+ pulumi.set(self, "secure_network", value)
357
+
358
+ @_builtins.property
359
+ @pulumi.getter
360
+ def subject(self) -> Optional[pulumi.Input[_builtins.str]]:
361
+ """
362
+ The CA certificate’s key value details. The `CN` attribute is required and included in the subject. When not specified, the subject is constructed in this format: `/C=US/O=Akamai Technologies, Inc./OU={vcd_id} {contract_id} {group_id}/CN={certificate_name}/`.
363
+ """
364
+ return pulumi.get(self, "subject")
365
+
366
+ @subject.setter
367
+ def subject(self, value: Optional[pulumi.Input[_builtins.str]]):
368
+ pulumi.set(self, "subject", value)
369
+
370
+ @_builtins.property
371
+ @pulumi.getter
372
+ def versions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['MtlskeystoreClientCertificateAkamaiVersionArgs']]]]:
373
+ """
374
+ A list of client certificate versions. Each version represents a specific iteration of the client certificate.
375
+ """
376
+ return pulumi.get(self, "versions")
377
+
378
+ @versions.setter
379
+ def versions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['MtlskeystoreClientCertificateAkamaiVersionArgs']]]]):
380
+ pulumi.set(self, "versions", value)
381
+
382
+
383
+ @pulumi.type_token("akamai:index/mtlskeystoreClientCertificateAkamai:MtlskeystoreClientCertificateAkamai")
384
+ class MtlskeystoreClientCertificateAkamai(pulumi.CustomResource):
385
+ @overload
386
+ def __init__(__self__,
387
+ resource_name: str,
388
+ opts: Optional[pulumi.ResourceOptions] = None,
389
+ certificate_name: Optional[pulumi.Input[_builtins.str]] = None,
390
+ contract_id: Optional[pulumi.Input[_builtins.str]] = None,
391
+ geography: Optional[pulumi.Input[_builtins.str]] = None,
392
+ group_id: Optional[pulumi.Input[_builtins.int]] = None,
393
+ key_algorithm: Optional[pulumi.Input[_builtins.str]] = None,
394
+ notification_emails: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
395
+ secure_network: Optional[pulumi.Input[_builtins.str]] = None,
396
+ subject: Optional[pulumi.Input[_builtins.str]] = None,
397
+ __props__=None):
398
+ """
399
+ Create a MtlskeystoreClientCertificateAkamai resource with the given unique name, props, and options.
400
+ :param str resource_name: The name of the resource.
401
+ :param pulumi.ResourceOptions opts: Options for the resource.
402
+ :param pulumi.Input[_builtins.str] certificate_name: The name of the client certificate. Must be between 1 and 64 characters.
403
+ :param pulumi.Input[_builtins.str] contract_id: The contract assigned to the client certificate. Must have a length of at least 1.
404
+ :param pulumi.Input[_builtins.str] geography: Specifies the type of network to deploy the client certificate. Possible values: `CORE`, `RUSSIA_AND_CORE`, or `CHINA_AND_CORE`.
405
+ :param pulumi.Input[_builtins.int] group_id: The group assigned to the client certificate. Must be greater than or equal to 0.
406
+ :param pulumi.Input[_builtins.str] key_algorithm: The cryptographic algorithm used for key generation. Possible values: `RSA` or `ECDSA`.
407
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] notification_emails: The email addresses to notify for client certificate-related issues. Must have at least one email address.
408
+ :param pulumi.Input[_builtins.str] secure_network: Identifies the network deployment type. Possible values: `STANDARD_TLS` or `ENHANCED_TLS`.
409
+ :param pulumi.Input[_builtins.str] subject: The CA certificate’s key value details. The `CN` attribute is required and included in the subject. When not specified, the subject is constructed in this format: `/C=US/O=Akamai Technologies, Inc./OU={vcd_id} {contract_id} {group_id}/CN={certificate_name}/`.
410
+ """
411
+ ...
412
+ @overload
413
+ def __init__(__self__,
414
+ resource_name: str,
415
+ args: MtlskeystoreClientCertificateAkamaiArgs,
416
+ opts: Optional[pulumi.ResourceOptions] = None):
417
+ """
418
+ Create a MtlskeystoreClientCertificateAkamai resource with the given unique name, props, and options.
419
+ :param str resource_name: The name of the resource.
420
+ :param MtlskeystoreClientCertificateAkamaiArgs args: The arguments to use to populate this resource's properties.
421
+ :param pulumi.ResourceOptions opts: Options for the resource.
422
+ """
423
+ ...
424
+ def __init__(__self__, resource_name: str, *args, **kwargs):
425
+ resource_args, opts = _utilities.get_resource_args_opts(MtlskeystoreClientCertificateAkamaiArgs, pulumi.ResourceOptions, *args, **kwargs)
426
+ if resource_args is not None:
427
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
428
+ else:
429
+ __self__._internal_init(resource_name, *args, **kwargs)
430
+
431
+ def _internal_init(__self__,
432
+ resource_name: str,
433
+ opts: Optional[pulumi.ResourceOptions] = None,
434
+ certificate_name: Optional[pulumi.Input[_builtins.str]] = None,
435
+ contract_id: Optional[pulumi.Input[_builtins.str]] = None,
436
+ geography: Optional[pulumi.Input[_builtins.str]] = None,
437
+ group_id: Optional[pulumi.Input[_builtins.int]] = None,
438
+ key_algorithm: Optional[pulumi.Input[_builtins.str]] = None,
439
+ notification_emails: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
440
+ secure_network: Optional[pulumi.Input[_builtins.str]] = None,
441
+ subject: Optional[pulumi.Input[_builtins.str]] = None,
442
+ __props__=None):
443
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
444
+ if not isinstance(opts, pulumi.ResourceOptions):
445
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
446
+ if opts.id is None:
447
+ if __props__ is not None:
448
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
449
+ __props__ = MtlskeystoreClientCertificateAkamaiArgs.__new__(MtlskeystoreClientCertificateAkamaiArgs)
450
+
451
+ if certificate_name is None and not opts.urn:
452
+ raise TypeError("Missing required property 'certificate_name'")
453
+ __props__.__dict__["certificate_name"] = certificate_name
454
+ if contract_id is None and not opts.urn:
455
+ raise TypeError("Missing required property 'contract_id'")
456
+ __props__.__dict__["contract_id"] = contract_id
457
+ if geography is None and not opts.urn:
458
+ raise TypeError("Missing required property 'geography'")
459
+ __props__.__dict__["geography"] = geography
460
+ if group_id is None and not opts.urn:
461
+ raise TypeError("Missing required property 'group_id'")
462
+ __props__.__dict__["group_id"] = group_id
463
+ __props__.__dict__["key_algorithm"] = key_algorithm
464
+ if notification_emails is None and not opts.urn:
465
+ raise TypeError("Missing required property 'notification_emails'")
466
+ __props__.__dict__["notification_emails"] = notification_emails
467
+ if secure_network is None and not opts.urn:
468
+ raise TypeError("Missing required property 'secure_network'")
469
+ __props__.__dict__["secure_network"] = secure_network
470
+ __props__.__dict__["subject"] = subject
471
+ __props__.__dict__["certificate_id"] = None
472
+ __props__.__dict__["created_by"] = None
473
+ __props__.__dict__["created_date"] = None
474
+ __props__.__dict__["current_guid"] = None
475
+ __props__.__dict__["previous_guid"] = None
476
+ __props__.__dict__["versions"] = None
477
+ super(MtlskeystoreClientCertificateAkamai, __self__).__init__(
478
+ 'akamai:index/mtlskeystoreClientCertificateAkamai:MtlskeystoreClientCertificateAkamai',
479
+ resource_name,
480
+ __props__,
481
+ opts)
482
+
483
+ @staticmethod
484
+ def get(resource_name: str,
485
+ id: pulumi.Input[str],
486
+ opts: Optional[pulumi.ResourceOptions] = None,
487
+ certificate_id: Optional[pulumi.Input[_builtins.int]] = None,
488
+ certificate_name: Optional[pulumi.Input[_builtins.str]] = None,
489
+ contract_id: Optional[pulumi.Input[_builtins.str]] = None,
490
+ created_by: Optional[pulumi.Input[_builtins.str]] = None,
491
+ created_date: Optional[pulumi.Input[_builtins.str]] = None,
492
+ current_guid: Optional[pulumi.Input[_builtins.str]] = None,
493
+ geography: Optional[pulumi.Input[_builtins.str]] = None,
494
+ group_id: Optional[pulumi.Input[_builtins.int]] = None,
495
+ key_algorithm: Optional[pulumi.Input[_builtins.str]] = None,
496
+ notification_emails: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
497
+ previous_guid: Optional[pulumi.Input[_builtins.str]] = None,
498
+ secure_network: Optional[pulumi.Input[_builtins.str]] = None,
499
+ subject: Optional[pulumi.Input[_builtins.str]] = None,
500
+ versions: Optional[pulumi.Input[Sequence[pulumi.Input[Union['MtlskeystoreClientCertificateAkamaiVersionArgs', 'MtlskeystoreClientCertificateAkamaiVersionArgsDict']]]]] = None) -> 'MtlskeystoreClientCertificateAkamai':
501
+ """
502
+ Get an existing MtlskeystoreClientCertificateAkamai resource's state with the given name, id, and optional extra
503
+ properties used to qualify the lookup.
504
+
505
+ :param str resource_name: The unique name of the resulting resource.
506
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
507
+ :param pulumi.ResourceOptions opts: Options for the resource.
508
+ :param pulumi.Input[_builtins.int] certificate_id: The unique identifier of the client certificate.
509
+ :param pulumi.Input[_builtins.str] certificate_name: The name of the client certificate. Must be between 1 and 64 characters.
510
+ :param pulumi.Input[_builtins.str] contract_id: The contract assigned to the client certificate. Must have a length of at least 1.
511
+ :param pulumi.Input[_builtins.str] created_by: The user who created the client certificate. Read-only.
512
+ :param pulumi.Input[_builtins.str] created_date: An ISO 8601 timestamp indicating the client certificate's creation. Read-only.
513
+ :param pulumi.Input[_builtins.str] current_guid: Unique identifier for the `current` client certificate version.
514
+ :param pulumi.Input[_builtins.str] geography: Specifies the type of network to deploy the client certificate. Possible values: `CORE`, `RUSSIA_AND_CORE`, or `CHINA_AND_CORE`.
515
+ :param pulumi.Input[_builtins.int] group_id: The group assigned to the client certificate. Must be greater than or equal to 0.
516
+ :param pulumi.Input[_builtins.str] key_algorithm: The cryptographic algorithm used for key generation. Possible values: `RSA` or `ECDSA`.
517
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] notification_emails: The email addresses to notify for client certificate-related issues. Must have at least one email address.
518
+ :param pulumi.Input[_builtins.str] previous_guid: Unique identifier for the `previous` client certificate version.
519
+ :param pulumi.Input[_builtins.str] secure_network: Identifies the network deployment type. Possible values: `STANDARD_TLS` or `ENHANCED_TLS`.
520
+ :param pulumi.Input[_builtins.str] subject: The CA certificate’s key value details. The `CN` attribute is required and included in the subject. When not specified, the subject is constructed in this format: `/C=US/O=Akamai Technologies, Inc./OU={vcd_id} {contract_id} {group_id}/CN={certificate_name}/`.
521
+ :param pulumi.Input[Sequence[pulumi.Input[Union['MtlskeystoreClientCertificateAkamaiVersionArgs', 'MtlskeystoreClientCertificateAkamaiVersionArgsDict']]]] versions: A list of client certificate versions. Each version represents a specific iteration of the client certificate.
522
+ """
523
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
524
+
525
+ __props__ = _MtlskeystoreClientCertificateAkamaiState.__new__(_MtlskeystoreClientCertificateAkamaiState)
526
+
527
+ __props__.__dict__["certificate_id"] = certificate_id
528
+ __props__.__dict__["certificate_name"] = certificate_name
529
+ __props__.__dict__["contract_id"] = contract_id
530
+ __props__.__dict__["created_by"] = created_by
531
+ __props__.__dict__["created_date"] = created_date
532
+ __props__.__dict__["current_guid"] = current_guid
533
+ __props__.__dict__["geography"] = geography
534
+ __props__.__dict__["group_id"] = group_id
535
+ __props__.__dict__["key_algorithm"] = key_algorithm
536
+ __props__.__dict__["notification_emails"] = notification_emails
537
+ __props__.__dict__["previous_guid"] = previous_guid
538
+ __props__.__dict__["secure_network"] = secure_network
539
+ __props__.__dict__["subject"] = subject
540
+ __props__.__dict__["versions"] = versions
541
+ return MtlskeystoreClientCertificateAkamai(resource_name, opts=opts, __props__=__props__)
542
+
543
+ @_builtins.property
544
+ @pulumi.getter(name="certificateId")
545
+ def certificate_id(self) -> pulumi.Output[_builtins.int]:
546
+ """
547
+ The unique identifier of the client certificate.
548
+ """
549
+ return pulumi.get(self, "certificate_id")
550
+
551
+ @_builtins.property
552
+ @pulumi.getter(name="certificateName")
553
+ def certificate_name(self) -> pulumi.Output[_builtins.str]:
554
+ """
555
+ The name of the client certificate. Must be between 1 and 64 characters.
556
+ """
557
+ return pulumi.get(self, "certificate_name")
558
+
559
+ @_builtins.property
560
+ @pulumi.getter(name="contractId")
561
+ def contract_id(self) -> pulumi.Output[_builtins.str]:
562
+ """
563
+ The contract assigned to the client certificate. Must have a length of at least 1.
564
+ """
565
+ return pulumi.get(self, "contract_id")
566
+
567
+ @_builtins.property
568
+ @pulumi.getter(name="createdBy")
569
+ def created_by(self) -> pulumi.Output[_builtins.str]:
570
+ """
571
+ The user who created the client certificate. Read-only.
572
+ """
573
+ return pulumi.get(self, "created_by")
574
+
575
+ @_builtins.property
576
+ @pulumi.getter(name="createdDate")
577
+ def created_date(self) -> pulumi.Output[_builtins.str]:
578
+ """
579
+ An ISO 8601 timestamp indicating the client certificate's creation. Read-only.
580
+ """
581
+ return pulumi.get(self, "created_date")
582
+
583
+ @_builtins.property
584
+ @pulumi.getter(name="currentGuid")
585
+ def current_guid(self) -> pulumi.Output[_builtins.str]:
586
+ """
587
+ Unique identifier for the `current` client certificate version.
588
+ """
589
+ return pulumi.get(self, "current_guid")
590
+
591
+ @_builtins.property
592
+ @pulumi.getter
593
+ def geography(self) -> pulumi.Output[_builtins.str]:
594
+ """
595
+ Specifies the type of network to deploy the client certificate. Possible values: `CORE`, `RUSSIA_AND_CORE`, or `CHINA_AND_CORE`.
596
+ """
597
+ return pulumi.get(self, "geography")
598
+
599
+ @_builtins.property
600
+ @pulumi.getter(name="groupId")
601
+ def group_id(self) -> pulumi.Output[_builtins.int]:
602
+ """
603
+ The group assigned to the client certificate. Must be greater than or equal to 0.
604
+ """
605
+ return pulumi.get(self, "group_id")
606
+
607
+ @_builtins.property
608
+ @pulumi.getter(name="keyAlgorithm")
609
+ def key_algorithm(self) -> pulumi.Output[_builtins.str]:
610
+ """
611
+ The cryptographic algorithm used for key generation. Possible values: `RSA` or `ECDSA`.
612
+ """
613
+ return pulumi.get(self, "key_algorithm")
614
+
615
+ @_builtins.property
616
+ @pulumi.getter(name="notificationEmails")
617
+ def notification_emails(self) -> pulumi.Output[Sequence[_builtins.str]]:
618
+ """
619
+ The email addresses to notify for client certificate-related issues. Must have at least one email address.
620
+ """
621
+ return pulumi.get(self, "notification_emails")
622
+
623
+ @_builtins.property
624
+ @pulumi.getter(name="previousGuid")
625
+ def previous_guid(self) -> pulumi.Output[_builtins.str]:
626
+ """
627
+ Unique identifier for the `previous` client certificate version.
628
+ """
629
+ return pulumi.get(self, "previous_guid")
630
+
631
+ @_builtins.property
632
+ @pulumi.getter(name="secureNetwork")
633
+ def secure_network(self) -> pulumi.Output[_builtins.str]:
634
+ """
635
+ Identifies the network deployment type. Possible values: `STANDARD_TLS` or `ENHANCED_TLS`.
636
+ """
637
+ return pulumi.get(self, "secure_network")
638
+
639
+ @_builtins.property
640
+ @pulumi.getter
641
+ def subject(self) -> pulumi.Output[_builtins.str]:
642
+ """
643
+ The CA certificate’s key value details. The `CN` attribute is required and included in the subject. When not specified, the subject is constructed in this format: `/C=US/O=Akamai Technologies, Inc./OU={vcd_id} {contract_id} {group_id}/CN={certificate_name}/`.
644
+ """
645
+ return pulumi.get(self, "subject")
646
+
647
+ @_builtins.property
648
+ @pulumi.getter
649
+ def versions(self) -> pulumi.Output[Sequence['outputs.MtlskeystoreClientCertificateAkamaiVersion']]:
650
+ """
651
+ A list of client certificate versions. Each version represents a specific iteration of the client certificate.
652
+ """
653
+ return pulumi.get(self, "versions")
654
+