pulumi-akamai 9.1.0a1754716222__py3-none-any.whl → 10.3.0a1766467020__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.

Files changed (75) hide show
  1. pulumi_akamai/__init__.py +190 -0
  2. pulumi_akamai/_inputs.py +4025 -396
  3. pulumi_akamai/apidefinitions_activation.py +415 -0
  4. pulumi_akamai/apidefinitions_api.py +368 -0
  5. pulumi_akamai/apidefinitions_resource_operations.py +226 -0
  6. pulumi_akamai/app_sec_ip_geo.py +156 -107
  7. pulumi_akamai/app_sec_siem_settings.py +47 -0
  8. pulumi_akamai/app_sec_slow_post.py +7 -14
  9. pulumi_akamai/appsec_advanced_settings_ase_penalty_box.py +248 -0
  10. pulumi_akamai/appsec_advanced_settings_ja4_fingerprint.py +197 -0
  11. pulumi_akamai/apr_general_settings.py +233 -0
  12. pulumi_akamai/apr_protected_operations.py +281 -0
  13. pulumi_akamai/apr_user_allow_list.py +184 -0
  14. pulumi_akamai/apr_user_risk_response_strategy.py +185 -0
  15. pulumi_akamai/clientlist_list.py +7 -7
  16. pulumi_akamai/cloud_access_key.py +21 -56
  17. pulumi_akamai/cloudcertificates_certificate.py +793 -0
  18. pulumi_akamai/cloudcertificates_upload_signed_certificate.py +516 -0
  19. pulumi_akamai/cloudlets_application_load_balancer.py +7 -21
  20. pulumi_akamai/datastream.py +112 -17
  21. pulumi_akamai/edge_host_name.py +7 -14
  22. pulumi_akamai/get_apidefinitions_api.py +152 -0
  23. pulumi_akamai/get_apidefinitions_openapi.py +115 -0
  24. pulumi_akamai/get_apidefinitions_resource_operations.py +137 -0
  25. pulumi_akamai/get_app_sec_ip_geo.py +40 -28
  26. pulumi_akamai/get_appsec_advanced_settings_ase_penalty_box.py +107 -0
  27. pulumi_akamai/get_appsec_advanced_settings_ja4_fingerprint.py +107 -0
  28. pulumi_akamai/get_appsec_custom_rules_usage.py +134 -0
  29. pulumi_akamai/get_appsec_rapid_rules.py +16 -1
  30. pulumi_akamai/get_apr_general_settings.py +111 -0
  31. pulumi_akamai/get_apr_protected_operations.py +126 -0
  32. pulumi_akamai/get_apr_user_allow_list.py +96 -0
  33. pulumi_akamai/get_apr_user_risk_response_strategy.py +96 -0
  34. pulumi_akamai/get_clientlist_list.py +119 -0
  35. pulumi_akamai/get_clientlist_lists.py +0 -3
  36. pulumi_akamai/get_cloudcertificates_certificate.py +365 -0
  37. pulumi_akamai/get_cloudcertificates_certificates.py +232 -0
  38. pulumi_akamai/get_cloudcertificates_hostname_bindings.py +157 -0
  39. pulumi_akamai/get_dns_record_set.py +16 -16
  40. pulumi_akamai/get_edge_worker.py +5 -1
  41. pulumi_akamai/get_mtlskeystore_account_ca_certificates.py +97 -0
  42. pulumi_akamai/get_mtlskeystore_client_certificate.py +233 -0
  43. pulumi_akamai/get_mtlskeystore_client_certificates.py +82 -0
  44. pulumi_akamai/get_mtlstruststore_ca_set.py +267 -0
  45. pulumi_akamai/get_mtlstruststore_ca_set_activation.py +189 -0
  46. pulumi_akamai/get_mtlstruststore_ca_set_activations.py +172 -0
  47. pulumi_akamai/get_mtlstruststore_ca_set_activities.py +183 -0
  48. pulumi_akamai/get_mtlstruststore_ca_set_associations.py +124 -0
  49. pulumi_akamai/get_mtlstruststore_ca_set_certificates.py +173 -0
  50. pulumi_akamai/get_mtlstruststore_ca_set_versions.py +128 -0
  51. pulumi_akamai/get_mtlstruststore_ca_sets.py +112 -0
  52. pulumi_akamai/get_property_domainownership_domain.py +189 -0
  53. pulumi_akamai/get_property_domainownership_domains.py +82 -0
  54. pulumi_akamai/get_property_domainownership_search_domains.py +87 -0
  55. pulumi_akamai/gtm_domain.py +7 -14
  56. pulumi_akamai/iam_api_client.py +25 -50
  57. pulumi_akamai/imaging_policy_image.py +7 -21
  58. pulumi_akamai/imaging_policy_video.py +7 -21
  59. pulumi_akamai/mtlskeystore_client_certificate_akamai.py +782 -0
  60. pulumi_akamai/mtlskeystore_client_certificate_third_party.py +618 -0
  61. pulumi_akamai/mtlskeystore_client_certificate_upload.py +451 -0
  62. pulumi_akamai/mtlstruststore_ca_set.py +654 -0
  63. pulumi_akamai/mtlstruststore_ca_set_activation.py +394 -0
  64. pulumi_akamai/network_list.py +7 -14
  65. pulumi_akamai/outputs.py +19539 -12627
  66. pulumi_akamai/property.py +7 -14
  67. pulumi_akamai/property_bootstrap.py +7 -14
  68. pulumi_akamai/property_domainownership_domains.py +152 -0
  69. pulumi_akamai/property_domainownership_validation.py +186 -0
  70. pulumi_akamai/property_hostname_bucket.py +35 -63
  71. pulumi_akamai/pulumi-plugin.json +1 -1
  72. {pulumi_akamai-9.1.0a1754716222.dist-info → pulumi_akamai-10.3.0a1766467020.dist-info}/METADATA +1 -1
  73. {pulumi_akamai-9.1.0a1754716222.dist-info → pulumi_akamai-10.3.0a1766467020.dist-info}/RECORD +75 -29
  74. {pulumi_akamai-9.1.0a1754716222.dist-info → pulumi_akamai-10.3.0a1766467020.dist-info}/WHEEL +0 -0
  75. {pulumi_akamai-9.1.0a1754716222.dist-info → pulumi_akamai-10.3.0a1766467020.dist-info}/top_level.txt +0 -0
@@ -30,8 +30,7 @@ class AppSecSlowPostArgs:
30
30
  :param pulumi.Input[_builtins.int] config_id: Unique identifier of the security configuration
31
31
  :param pulumi.Input[_builtins.str] security_policy_id: Unique identifier of the security policy
32
32
  :param pulumi.Input[_builtins.str] slow_rate_action: Action to be taken when slow POST protection is triggered
33
- :param pulumi.Input[_builtins.int] duration_threshold_timeout: Maximum amount of time (in seconds) within which the first 8KB of the POST body must be received to avoid triggering the
34
- specified action
33
+ :param pulumi.Input[_builtins.int] duration_threshold_timeout: Maximum amount of time (in seconds) within which the first 8KB of the POST body must be received to avoid triggering the specified action
35
34
  :param pulumi.Input[_builtins.int] slow_rate_threshold_period: Amount of time (in seconds) that the server should allow a request before marking the request as being too slow
36
35
  :param pulumi.Input[_builtins.int] slow_rate_threshold_rate: Average rate (in bytes per second over the specified time period) allowed before the specified action is triggered
37
36
  """
@@ -85,8 +84,7 @@ class AppSecSlowPostArgs:
85
84
  @pulumi.getter(name="durationThresholdTimeout")
86
85
  def duration_threshold_timeout(self) -> Optional[pulumi.Input[_builtins.int]]:
87
86
  """
88
- Maximum amount of time (in seconds) within which the first 8KB of the POST body must be received to avoid triggering the
89
- specified action
87
+ Maximum amount of time (in seconds) within which the first 8KB of the POST body must be received to avoid triggering the specified action
90
88
  """
91
89
  return pulumi.get(self, "duration_threshold_timeout")
92
90
 
@@ -131,8 +129,7 @@ class _AppSecSlowPostState:
131
129
  """
132
130
  Input properties used for looking up and filtering AppSecSlowPost resources.
133
131
  :param pulumi.Input[_builtins.int] config_id: Unique identifier of the security configuration
134
- :param pulumi.Input[_builtins.int] duration_threshold_timeout: Maximum amount of time (in seconds) within which the first 8KB of the POST body must be received to avoid triggering the
135
- specified action
132
+ :param pulumi.Input[_builtins.int] duration_threshold_timeout: Maximum amount of time (in seconds) within which the first 8KB of the POST body must be received to avoid triggering the specified action
136
133
  :param pulumi.Input[_builtins.str] security_policy_id: Unique identifier of the security policy
137
134
  :param pulumi.Input[_builtins.str] slow_rate_action: Action to be taken when slow POST protection is triggered
138
135
  :param pulumi.Input[_builtins.int] slow_rate_threshold_period: Amount of time (in seconds) that the server should allow a request before marking the request as being too slow
@@ -167,8 +164,7 @@ class _AppSecSlowPostState:
167
164
  @pulumi.getter(name="durationThresholdTimeout")
168
165
  def duration_threshold_timeout(self) -> Optional[pulumi.Input[_builtins.int]]:
169
166
  """
170
- Maximum amount of time (in seconds) within which the first 8KB of the POST body must be received to avoid triggering the
171
- specified action
167
+ Maximum amount of time (in seconds) within which the first 8KB of the POST body must be received to avoid triggering the specified action
172
168
  """
173
169
  return pulumi.get(self, "duration_threshold_timeout")
174
170
 
@@ -243,8 +239,7 @@ class AppSecSlowPost(pulumi.CustomResource):
243
239
  :param str resource_name: The name of the resource.
244
240
  :param pulumi.ResourceOptions opts: Options for the resource.
245
241
  :param pulumi.Input[_builtins.int] config_id: Unique identifier of the security configuration
246
- :param pulumi.Input[_builtins.int] duration_threshold_timeout: Maximum amount of time (in seconds) within which the first 8KB of the POST body must be received to avoid triggering the
247
- specified action
242
+ :param pulumi.Input[_builtins.int] duration_threshold_timeout: Maximum amount of time (in seconds) within which the first 8KB of the POST body must be received to avoid triggering the specified action
248
243
  :param pulumi.Input[_builtins.str] security_policy_id: Unique identifier of the security policy
249
244
  :param pulumi.Input[_builtins.str] slow_rate_action: Action to be taken when slow POST protection is triggered
250
245
  :param pulumi.Input[_builtins.int] slow_rate_threshold_period: Amount of time (in seconds) that the server should allow a request before marking the request as being too slow
@@ -324,8 +319,7 @@ class AppSecSlowPost(pulumi.CustomResource):
324
319
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
325
320
  :param pulumi.ResourceOptions opts: Options for the resource.
326
321
  :param pulumi.Input[_builtins.int] config_id: Unique identifier of the security configuration
327
- :param pulumi.Input[_builtins.int] duration_threshold_timeout: Maximum amount of time (in seconds) within which the first 8KB of the POST body must be received to avoid triggering the
328
- specified action
322
+ :param pulumi.Input[_builtins.int] duration_threshold_timeout: Maximum amount of time (in seconds) within which the first 8KB of the POST body must be received to avoid triggering the specified action
329
323
  :param pulumi.Input[_builtins.str] security_policy_id: Unique identifier of the security policy
330
324
  :param pulumi.Input[_builtins.str] slow_rate_action: Action to be taken when slow POST protection is triggered
331
325
  :param pulumi.Input[_builtins.int] slow_rate_threshold_period: Amount of time (in seconds) that the server should allow a request before marking the request as being too slow
@@ -355,8 +349,7 @@ class AppSecSlowPost(pulumi.CustomResource):
355
349
  @pulumi.getter(name="durationThresholdTimeout")
356
350
  def duration_threshold_timeout(self) -> pulumi.Output[Optional[_builtins.int]]:
357
351
  """
358
- Maximum amount of time (in seconds) within which the first 8KB of the POST body must be received to avoid triggering the
359
- specified action
352
+ Maximum amount of time (in seconds) within which the first 8KB of the POST body must be received to avoid triggering the specified action
360
353
  """
361
354
  return pulumi.get(self, "duration_threshold_timeout")
362
355
 
@@ -0,0 +1,248 @@
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__ = ['AppsecAdvancedSettingsAsePenaltyBoxArgs', 'AppsecAdvancedSettingsAsePenaltyBox']
20
+
21
+ @pulumi.input_type
22
+ class AppsecAdvancedSettingsAsePenaltyBoxArgs:
23
+ def __init__(__self__, *,
24
+ block_duration: pulumi.Input[_builtins.int],
25
+ config_id: pulumi.Input[_builtins.int],
26
+ qualification_exclusions: pulumi.Input['AppsecAdvancedSettingsAsePenaltyBoxQualificationExclusionsArgs']):
27
+ """
28
+ The set of arguments for constructing a AppsecAdvancedSettingsAsePenaltyBox resource.
29
+ :param pulumi.Input[_builtins.int] block_duration: Block duration for ASE Penalty Box in minutes.
30
+ :param pulumi.Input[_builtins.int] config_id: Unique identifier of the security configuration.
31
+ :param pulumi.Input['AppsecAdvancedSettingsAsePenaltyBoxQualificationExclusionsArgs'] qualification_exclusions: Qualification exclusions for ASE Penalty Box. Contains attack groups and rules.
32
+ """
33
+ pulumi.set(__self__, "block_duration", block_duration)
34
+ pulumi.set(__self__, "config_id", config_id)
35
+ pulumi.set(__self__, "qualification_exclusions", qualification_exclusions)
36
+
37
+ @_builtins.property
38
+ @pulumi.getter(name="blockDuration")
39
+ def block_duration(self) -> pulumi.Input[_builtins.int]:
40
+ """
41
+ Block duration for ASE Penalty Box in minutes.
42
+ """
43
+ return pulumi.get(self, "block_duration")
44
+
45
+ @block_duration.setter
46
+ def block_duration(self, value: pulumi.Input[_builtins.int]):
47
+ pulumi.set(self, "block_duration", value)
48
+
49
+ @_builtins.property
50
+ @pulumi.getter(name="configId")
51
+ def config_id(self) -> pulumi.Input[_builtins.int]:
52
+ """
53
+ Unique identifier of the security configuration.
54
+ """
55
+ return pulumi.get(self, "config_id")
56
+
57
+ @config_id.setter
58
+ def config_id(self, value: pulumi.Input[_builtins.int]):
59
+ pulumi.set(self, "config_id", value)
60
+
61
+ @_builtins.property
62
+ @pulumi.getter(name="qualificationExclusions")
63
+ def qualification_exclusions(self) -> pulumi.Input['AppsecAdvancedSettingsAsePenaltyBoxQualificationExclusionsArgs']:
64
+ """
65
+ Qualification exclusions for ASE Penalty Box. Contains attack groups and rules.
66
+ """
67
+ return pulumi.get(self, "qualification_exclusions")
68
+
69
+ @qualification_exclusions.setter
70
+ def qualification_exclusions(self, value: pulumi.Input['AppsecAdvancedSettingsAsePenaltyBoxQualificationExclusionsArgs']):
71
+ pulumi.set(self, "qualification_exclusions", value)
72
+
73
+
74
+ @pulumi.input_type
75
+ class _AppsecAdvancedSettingsAsePenaltyBoxState:
76
+ def __init__(__self__, *,
77
+ block_duration: Optional[pulumi.Input[_builtins.int]] = None,
78
+ config_id: Optional[pulumi.Input[_builtins.int]] = None,
79
+ qualification_exclusions: Optional[pulumi.Input['AppsecAdvancedSettingsAsePenaltyBoxQualificationExclusionsArgs']] = None):
80
+ """
81
+ Input properties used for looking up and filtering AppsecAdvancedSettingsAsePenaltyBox resources.
82
+ :param pulumi.Input[_builtins.int] block_duration: Block duration for ASE Penalty Box in minutes.
83
+ :param pulumi.Input[_builtins.int] config_id: Unique identifier of the security configuration.
84
+ :param pulumi.Input['AppsecAdvancedSettingsAsePenaltyBoxQualificationExclusionsArgs'] qualification_exclusions: Qualification exclusions for ASE Penalty Box. Contains attack groups and rules.
85
+ """
86
+ if block_duration is not None:
87
+ pulumi.set(__self__, "block_duration", block_duration)
88
+ if config_id is not None:
89
+ pulumi.set(__self__, "config_id", config_id)
90
+ if qualification_exclusions is not None:
91
+ pulumi.set(__self__, "qualification_exclusions", qualification_exclusions)
92
+
93
+ @_builtins.property
94
+ @pulumi.getter(name="blockDuration")
95
+ def block_duration(self) -> Optional[pulumi.Input[_builtins.int]]:
96
+ """
97
+ Block duration for ASE Penalty Box in minutes.
98
+ """
99
+ return pulumi.get(self, "block_duration")
100
+
101
+ @block_duration.setter
102
+ def block_duration(self, value: Optional[pulumi.Input[_builtins.int]]):
103
+ pulumi.set(self, "block_duration", value)
104
+
105
+ @_builtins.property
106
+ @pulumi.getter(name="configId")
107
+ def config_id(self) -> Optional[pulumi.Input[_builtins.int]]:
108
+ """
109
+ Unique identifier of the security configuration.
110
+ """
111
+ return pulumi.get(self, "config_id")
112
+
113
+ @config_id.setter
114
+ def config_id(self, value: Optional[pulumi.Input[_builtins.int]]):
115
+ pulumi.set(self, "config_id", value)
116
+
117
+ @_builtins.property
118
+ @pulumi.getter(name="qualificationExclusions")
119
+ def qualification_exclusions(self) -> Optional[pulumi.Input['AppsecAdvancedSettingsAsePenaltyBoxQualificationExclusionsArgs']]:
120
+ """
121
+ Qualification exclusions for ASE Penalty Box. Contains attack groups and rules.
122
+ """
123
+ return pulumi.get(self, "qualification_exclusions")
124
+
125
+ @qualification_exclusions.setter
126
+ def qualification_exclusions(self, value: Optional[pulumi.Input['AppsecAdvancedSettingsAsePenaltyBoxQualificationExclusionsArgs']]):
127
+ pulumi.set(self, "qualification_exclusions", value)
128
+
129
+
130
+ @pulumi.type_token("akamai:index/appsecAdvancedSettingsAsePenaltyBox:AppsecAdvancedSettingsAsePenaltyBox")
131
+ class AppsecAdvancedSettingsAsePenaltyBox(pulumi.CustomResource):
132
+ @overload
133
+ def __init__(__self__,
134
+ resource_name: str,
135
+ opts: Optional[pulumi.ResourceOptions] = None,
136
+ block_duration: Optional[pulumi.Input[_builtins.int]] = None,
137
+ config_id: Optional[pulumi.Input[_builtins.int]] = None,
138
+ qualification_exclusions: Optional[pulumi.Input[Union['AppsecAdvancedSettingsAsePenaltyBoxQualificationExclusionsArgs', 'AppsecAdvancedSettingsAsePenaltyBoxQualificationExclusionsArgsDict']]] = None,
139
+ __props__=None):
140
+ """
141
+ Create a AppsecAdvancedSettingsAsePenaltyBox resource with the given unique name, props, and options.
142
+ :param str resource_name: The name of the resource.
143
+ :param pulumi.ResourceOptions opts: Options for the resource.
144
+ :param pulumi.Input[_builtins.int] block_duration: Block duration for ASE Penalty Box in minutes.
145
+ :param pulumi.Input[_builtins.int] config_id: Unique identifier of the security configuration.
146
+ :param pulumi.Input[Union['AppsecAdvancedSettingsAsePenaltyBoxQualificationExclusionsArgs', 'AppsecAdvancedSettingsAsePenaltyBoxQualificationExclusionsArgsDict']] qualification_exclusions: Qualification exclusions for ASE Penalty Box. Contains attack groups and rules.
147
+ """
148
+ ...
149
+ @overload
150
+ def __init__(__self__,
151
+ resource_name: str,
152
+ args: AppsecAdvancedSettingsAsePenaltyBoxArgs,
153
+ opts: Optional[pulumi.ResourceOptions] = None):
154
+ """
155
+ Create a AppsecAdvancedSettingsAsePenaltyBox resource with the given unique name, props, and options.
156
+ :param str resource_name: The name of the resource.
157
+ :param AppsecAdvancedSettingsAsePenaltyBoxArgs args: The arguments to use to populate this resource's properties.
158
+ :param pulumi.ResourceOptions opts: Options for the resource.
159
+ """
160
+ ...
161
+ def __init__(__self__, resource_name: str, *args, **kwargs):
162
+ resource_args, opts = _utilities.get_resource_args_opts(AppsecAdvancedSettingsAsePenaltyBoxArgs, pulumi.ResourceOptions, *args, **kwargs)
163
+ if resource_args is not None:
164
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
165
+ else:
166
+ __self__._internal_init(resource_name, *args, **kwargs)
167
+
168
+ def _internal_init(__self__,
169
+ resource_name: str,
170
+ opts: Optional[pulumi.ResourceOptions] = None,
171
+ block_duration: Optional[pulumi.Input[_builtins.int]] = None,
172
+ config_id: Optional[pulumi.Input[_builtins.int]] = None,
173
+ qualification_exclusions: Optional[pulumi.Input[Union['AppsecAdvancedSettingsAsePenaltyBoxQualificationExclusionsArgs', 'AppsecAdvancedSettingsAsePenaltyBoxQualificationExclusionsArgsDict']]] = None,
174
+ __props__=None):
175
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
176
+ if not isinstance(opts, pulumi.ResourceOptions):
177
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
178
+ if opts.id is None:
179
+ if __props__ is not None:
180
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
181
+ __props__ = AppsecAdvancedSettingsAsePenaltyBoxArgs.__new__(AppsecAdvancedSettingsAsePenaltyBoxArgs)
182
+
183
+ if block_duration is None and not opts.urn:
184
+ raise TypeError("Missing required property 'block_duration'")
185
+ __props__.__dict__["block_duration"] = block_duration
186
+ if config_id is None and not opts.urn:
187
+ raise TypeError("Missing required property 'config_id'")
188
+ __props__.__dict__["config_id"] = config_id
189
+ if qualification_exclusions is None and not opts.urn:
190
+ raise TypeError("Missing required property 'qualification_exclusions'")
191
+ __props__.__dict__["qualification_exclusions"] = qualification_exclusions
192
+ super(AppsecAdvancedSettingsAsePenaltyBox, __self__).__init__(
193
+ 'akamai:index/appsecAdvancedSettingsAsePenaltyBox:AppsecAdvancedSettingsAsePenaltyBox',
194
+ resource_name,
195
+ __props__,
196
+ opts)
197
+
198
+ @staticmethod
199
+ def get(resource_name: str,
200
+ id: pulumi.Input[str],
201
+ opts: Optional[pulumi.ResourceOptions] = None,
202
+ block_duration: Optional[pulumi.Input[_builtins.int]] = None,
203
+ config_id: Optional[pulumi.Input[_builtins.int]] = None,
204
+ qualification_exclusions: Optional[pulumi.Input[Union['AppsecAdvancedSettingsAsePenaltyBoxQualificationExclusionsArgs', 'AppsecAdvancedSettingsAsePenaltyBoxQualificationExclusionsArgsDict']]] = None) -> 'AppsecAdvancedSettingsAsePenaltyBox':
205
+ """
206
+ Get an existing AppsecAdvancedSettingsAsePenaltyBox resource's state with the given name, id, and optional extra
207
+ properties used to qualify the lookup.
208
+
209
+ :param str resource_name: The unique name of the resulting resource.
210
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
211
+ :param pulumi.ResourceOptions opts: Options for the resource.
212
+ :param pulumi.Input[_builtins.int] block_duration: Block duration for ASE Penalty Box in minutes.
213
+ :param pulumi.Input[_builtins.int] config_id: Unique identifier of the security configuration.
214
+ :param pulumi.Input[Union['AppsecAdvancedSettingsAsePenaltyBoxQualificationExclusionsArgs', 'AppsecAdvancedSettingsAsePenaltyBoxQualificationExclusionsArgsDict']] qualification_exclusions: Qualification exclusions for ASE Penalty Box. Contains attack groups and rules.
215
+ """
216
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
217
+
218
+ __props__ = _AppsecAdvancedSettingsAsePenaltyBoxState.__new__(_AppsecAdvancedSettingsAsePenaltyBoxState)
219
+
220
+ __props__.__dict__["block_duration"] = block_duration
221
+ __props__.__dict__["config_id"] = config_id
222
+ __props__.__dict__["qualification_exclusions"] = qualification_exclusions
223
+ return AppsecAdvancedSettingsAsePenaltyBox(resource_name, opts=opts, __props__=__props__)
224
+
225
+ @_builtins.property
226
+ @pulumi.getter(name="blockDuration")
227
+ def block_duration(self) -> pulumi.Output[_builtins.int]:
228
+ """
229
+ Block duration for ASE Penalty Box in minutes.
230
+ """
231
+ return pulumi.get(self, "block_duration")
232
+
233
+ @_builtins.property
234
+ @pulumi.getter(name="configId")
235
+ def config_id(self) -> pulumi.Output[_builtins.int]:
236
+ """
237
+ Unique identifier of the security configuration.
238
+ """
239
+ return pulumi.get(self, "config_id")
240
+
241
+ @_builtins.property
242
+ @pulumi.getter(name="qualificationExclusions")
243
+ def qualification_exclusions(self) -> pulumi.Output['outputs.AppsecAdvancedSettingsAsePenaltyBoxQualificationExclusions']:
244
+ """
245
+ Qualification exclusions for ASE Penalty Box. Contains attack groups and rules.
246
+ """
247
+ return pulumi.get(self, "qualification_exclusions")
248
+
@@ -0,0 +1,197 @@
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
+
17
+ __all__ = ['AppsecAdvancedSettingsJa4FingerprintArgs', 'AppsecAdvancedSettingsJa4Fingerprint']
18
+
19
+ @pulumi.input_type
20
+ class AppsecAdvancedSettingsJa4FingerprintArgs:
21
+ def __init__(__self__, *,
22
+ config_id: pulumi.Input[_builtins.int],
23
+ header_names: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None):
24
+ """
25
+ The set of arguments for constructing a AppsecAdvancedSettingsJa4Fingerprint resource.
26
+ :param pulumi.Input[_builtins.int] config_id: Unique identifier of the security configuration
27
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] header_names: JA4 TLS Header Names to be included in the header
28
+ """
29
+ pulumi.set(__self__, "config_id", config_id)
30
+ if header_names is not None:
31
+ pulumi.set(__self__, "header_names", header_names)
32
+
33
+ @_builtins.property
34
+ @pulumi.getter(name="configId")
35
+ def config_id(self) -> pulumi.Input[_builtins.int]:
36
+ """
37
+ Unique identifier of the security configuration
38
+ """
39
+ return pulumi.get(self, "config_id")
40
+
41
+ @config_id.setter
42
+ def config_id(self, value: pulumi.Input[_builtins.int]):
43
+ pulumi.set(self, "config_id", value)
44
+
45
+ @_builtins.property
46
+ @pulumi.getter(name="headerNames")
47
+ def header_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
48
+ """
49
+ JA4 TLS Header Names to be included in the header
50
+ """
51
+ return pulumi.get(self, "header_names")
52
+
53
+ @header_names.setter
54
+ def header_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
55
+ pulumi.set(self, "header_names", value)
56
+
57
+
58
+ @pulumi.input_type
59
+ class _AppsecAdvancedSettingsJa4FingerprintState:
60
+ def __init__(__self__, *,
61
+ config_id: Optional[pulumi.Input[_builtins.int]] = None,
62
+ header_names: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None):
63
+ """
64
+ Input properties used for looking up and filtering AppsecAdvancedSettingsJa4Fingerprint resources.
65
+ :param pulumi.Input[_builtins.int] config_id: Unique identifier of the security configuration
66
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] header_names: JA4 TLS Header Names to be included in the header
67
+ """
68
+ if config_id is not None:
69
+ pulumi.set(__self__, "config_id", config_id)
70
+ if header_names is not None:
71
+ pulumi.set(__self__, "header_names", header_names)
72
+
73
+ @_builtins.property
74
+ @pulumi.getter(name="configId")
75
+ def config_id(self) -> Optional[pulumi.Input[_builtins.int]]:
76
+ """
77
+ Unique identifier of the security configuration
78
+ """
79
+ return pulumi.get(self, "config_id")
80
+
81
+ @config_id.setter
82
+ def config_id(self, value: Optional[pulumi.Input[_builtins.int]]):
83
+ pulumi.set(self, "config_id", value)
84
+
85
+ @_builtins.property
86
+ @pulumi.getter(name="headerNames")
87
+ def header_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
88
+ """
89
+ JA4 TLS Header Names to be included in the header
90
+ """
91
+ return pulumi.get(self, "header_names")
92
+
93
+ @header_names.setter
94
+ def header_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
95
+ pulumi.set(self, "header_names", value)
96
+
97
+
98
+ @pulumi.type_token("akamai:index/appsecAdvancedSettingsJa4Fingerprint:AppsecAdvancedSettingsJa4Fingerprint")
99
+ class AppsecAdvancedSettingsJa4Fingerprint(pulumi.CustomResource):
100
+ @overload
101
+ def __init__(__self__,
102
+ resource_name: str,
103
+ opts: Optional[pulumi.ResourceOptions] = None,
104
+ config_id: Optional[pulumi.Input[_builtins.int]] = None,
105
+ header_names: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
106
+ __props__=None):
107
+ """
108
+ Create a AppsecAdvancedSettingsJa4Fingerprint resource with the given unique name, props, and options.
109
+ :param str resource_name: The name of the resource.
110
+ :param pulumi.ResourceOptions opts: Options for the resource.
111
+ :param pulumi.Input[_builtins.int] config_id: Unique identifier of the security configuration
112
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] header_names: JA4 TLS Header Names to be included in the header
113
+ """
114
+ ...
115
+ @overload
116
+ def __init__(__self__,
117
+ resource_name: str,
118
+ args: AppsecAdvancedSettingsJa4FingerprintArgs,
119
+ opts: Optional[pulumi.ResourceOptions] = None):
120
+ """
121
+ Create a AppsecAdvancedSettingsJa4Fingerprint resource with the given unique name, props, and options.
122
+ :param str resource_name: The name of the resource.
123
+ :param AppsecAdvancedSettingsJa4FingerprintArgs args: The arguments to use to populate this resource's properties.
124
+ :param pulumi.ResourceOptions opts: Options for the resource.
125
+ """
126
+ ...
127
+ def __init__(__self__, resource_name: str, *args, **kwargs):
128
+ resource_args, opts = _utilities.get_resource_args_opts(AppsecAdvancedSettingsJa4FingerprintArgs, pulumi.ResourceOptions, *args, **kwargs)
129
+ if resource_args is not None:
130
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
131
+ else:
132
+ __self__._internal_init(resource_name, *args, **kwargs)
133
+
134
+ def _internal_init(__self__,
135
+ resource_name: str,
136
+ opts: Optional[pulumi.ResourceOptions] = None,
137
+ config_id: Optional[pulumi.Input[_builtins.int]] = None,
138
+ header_names: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
139
+ __props__=None):
140
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
141
+ if not isinstance(opts, pulumi.ResourceOptions):
142
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
143
+ if opts.id is None:
144
+ if __props__ is not None:
145
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
146
+ __props__ = AppsecAdvancedSettingsJa4FingerprintArgs.__new__(AppsecAdvancedSettingsJa4FingerprintArgs)
147
+
148
+ if config_id is None and not opts.urn:
149
+ raise TypeError("Missing required property 'config_id'")
150
+ __props__.__dict__["config_id"] = config_id
151
+ __props__.__dict__["header_names"] = header_names
152
+ super(AppsecAdvancedSettingsJa4Fingerprint, __self__).__init__(
153
+ 'akamai:index/appsecAdvancedSettingsJa4Fingerprint:AppsecAdvancedSettingsJa4Fingerprint',
154
+ resource_name,
155
+ __props__,
156
+ opts)
157
+
158
+ @staticmethod
159
+ def get(resource_name: str,
160
+ id: pulumi.Input[str],
161
+ opts: Optional[pulumi.ResourceOptions] = None,
162
+ config_id: Optional[pulumi.Input[_builtins.int]] = None,
163
+ header_names: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None) -> 'AppsecAdvancedSettingsJa4Fingerprint':
164
+ """
165
+ Get an existing AppsecAdvancedSettingsJa4Fingerprint resource's state with the given name, id, and optional extra
166
+ properties used to qualify the lookup.
167
+
168
+ :param str resource_name: The unique name of the resulting resource.
169
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
170
+ :param pulumi.ResourceOptions opts: Options for the resource.
171
+ :param pulumi.Input[_builtins.int] config_id: Unique identifier of the security configuration
172
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] header_names: JA4 TLS Header Names to be included in the header
173
+ """
174
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
175
+
176
+ __props__ = _AppsecAdvancedSettingsJa4FingerprintState.__new__(_AppsecAdvancedSettingsJa4FingerprintState)
177
+
178
+ __props__.__dict__["config_id"] = config_id
179
+ __props__.__dict__["header_names"] = header_names
180
+ return AppsecAdvancedSettingsJa4Fingerprint(resource_name, opts=opts, __props__=__props__)
181
+
182
+ @_builtins.property
183
+ @pulumi.getter(name="configId")
184
+ def config_id(self) -> pulumi.Output[_builtins.int]:
185
+ """
186
+ Unique identifier of the security configuration
187
+ """
188
+ return pulumi.get(self, "config_id")
189
+
190
+ @_builtins.property
191
+ @pulumi.getter(name="headerNames")
192
+ def header_names(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
193
+ """
194
+ JA4 TLS Header Names to be included in the header
195
+ """
196
+ return pulumi.get(self, "header_names")
197
+