-
Notifications
You must be signed in to change notification settings - Fork 112
/
zz_responseheaderspolicy_types.go
executable file
·498 lines (358 loc) · 26.1 KB
/
zz_responseheaderspolicy_types.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
/*
Copyright 2022 Upbound Inc.
*/
// Code generated by upjet. DO NOT EDIT.
package v1beta1
import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime/schema"
v1 "github.com/crossplane/crossplane-runtime/apis/common/v1"
)
type AccessControlAllowHeadersObservation struct {
Items []*string `json:"items,omitempty" tf:"items,omitempty"`
}
type AccessControlAllowHeadersParameters struct {
// +kubebuilder:validation:Optional
Items []*string `json:"items,omitempty" tf:"items,omitempty"`
}
type AccessControlAllowMethodsObservation struct {
Items []*string `json:"items,omitempty" tf:"items,omitempty"`
}
type AccessControlAllowMethodsParameters struct {
// +kubebuilder:validation:Optional
Items []*string `json:"items,omitempty" tf:"items,omitempty"`
}
type AccessControlAllowOriginsObservation struct {
Items []*string `json:"items,omitempty" tf:"items,omitempty"`
}
type AccessControlAllowOriginsParameters struct {
// +kubebuilder:validation:Optional
Items []*string `json:"items,omitempty" tf:"items,omitempty"`
}
type AccessControlExposeHeadersObservation struct {
Items []*string `json:"items,omitempty" tf:"items,omitempty"`
}
type AccessControlExposeHeadersParameters struct {
// +kubebuilder:validation:Optional
Items []*string `json:"items,omitempty" tf:"items,omitempty"`
}
type ContentSecurityPolicyObservation struct {
// The policy directives and their values that CloudFront includes as values for the Content-Security-Policy HTTP response header. See Content Security Policy for more information.
ContentSecurityPolicy *string `json:"contentSecurityPolicy,omitempty" tf:"content_security_policy,omitempty"`
// Whether CloudFront overrides a response header with the same name received from the origin with the header specifies here.
Override *bool `json:"override,omitempty" tf:"override,omitempty"`
}
type ContentSecurityPolicyParameters struct {
// The policy directives and their values that CloudFront includes as values for the Content-Security-Policy HTTP response header. See Content Security Policy for more information.
// +kubebuilder:validation:Required
ContentSecurityPolicy *string `json:"contentSecurityPolicy" tf:"content_security_policy,omitempty"`
// Whether CloudFront overrides a response header with the same name received from the origin with the header specifies here.
// +kubebuilder:validation:Required
Override *bool `json:"override" tf:"override,omitempty"`
}
type ContentTypeOptionsObservation struct {
// Whether CloudFront overrides a response header with the same name received from the origin with the header specifies here.
Override *bool `json:"override,omitempty" tf:"override,omitempty"`
}
type ContentTypeOptionsParameters struct {
// Whether CloudFront overrides a response header with the same name received from the origin with the header specifies here.
// +kubebuilder:validation:Required
Override *bool `json:"override" tf:"override,omitempty"`
}
type CorsConfigObservation struct {
// A Boolean value that CloudFront uses as the value for the Access-Control-Allow-Credentials HTTP response header.
AccessControlAllowCredentials *bool `json:"accessControlAllowCredentials,omitempty" tf:"access_control_allow_credentials,omitempty"`
// Object that contains an attribute items that contains a list of HTTP header names that CloudFront includes as values for the Access-Control-Allow-Headers HTTP response header.
AccessControlAllowHeaders []AccessControlAllowHeadersObservation `json:"accessControlAllowHeaders,omitempty" tf:"access_control_allow_headers,omitempty"`
// Object that contains an attribute items that contains a list of HTTP methods that CloudFront includes as values for the Access-Control-Allow-Methods HTTP response header. Valid values: GET | POST | OPTIONS | PUT | DELETE | HEAD | ALL
AccessControlAllowMethods []AccessControlAllowMethodsObservation `json:"accessControlAllowMethods,omitempty" tf:"access_control_allow_methods,omitempty"`
// Object that contains an attribute items that contains a list of origins that CloudFront can use as the value for the Access-Control-Allow-Origin HTTP response header.
AccessControlAllowOrigins []AccessControlAllowOriginsObservation `json:"accessControlAllowOrigins,omitempty" tf:"access_control_allow_origins,omitempty"`
// Object that contains an attribute items that contains a list of HTTP headers that CloudFront includes as values for the Access-Control-Expose-Headers HTTP response header.
AccessControlExposeHeaders []AccessControlExposeHeadersObservation `json:"accessControlExposeHeaders,omitempty" tf:"access_control_expose_headers,omitempty"`
// A number that CloudFront uses as the value for the Access-Control-Max-Age HTTP response header.
AccessControlMaxAgeSec *float64 `json:"accessControlMaxAgeSec,omitempty" tf:"access_control_max_age_sec,omitempty"`
// A Boolean value that determines how CloudFront behaves for the HTTP response header.
OriginOverride *bool `json:"originOverride,omitempty" tf:"origin_override,omitempty"`
}
type CorsConfigParameters struct {
// A Boolean value that CloudFront uses as the value for the Access-Control-Allow-Credentials HTTP response header.
// +kubebuilder:validation:Required
AccessControlAllowCredentials *bool `json:"accessControlAllowCredentials" tf:"access_control_allow_credentials,omitempty"`
// Object that contains an attribute items that contains a list of HTTP header names that CloudFront includes as values for the Access-Control-Allow-Headers HTTP response header.
// +kubebuilder:validation:Required
AccessControlAllowHeaders []AccessControlAllowHeadersParameters `json:"accessControlAllowHeaders" tf:"access_control_allow_headers,omitempty"`
// Object that contains an attribute items that contains a list of HTTP methods that CloudFront includes as values for the Access-Control-Allow-Methods HTTP response header. Valid values: GET | POST | OPTIONS | PUT | DELETE | HEAD | ALL
// +kubebuilder:validation:Required
AccessControlAllowMethods []AccessControlAllowMethodsParameters `json:"accessControlAllowMethods" tf:"access_control_allow_methods,omitempty"`
// Object that contains an attribute items that contains a list of origins that CloudFront can use as the value for the Access-Control-Allow-Origin HTTP response header.
// +kubebuilder:validation:Required
AccessControlAllowOrigins []AccessControlAllowOriginsParameters `json:"accessControlAllowOrigins" tf:"access_control_allow_origins,omitempty"`
// Object that contains an attribute items that contains a list of HTTP headers that CloudFront includes as values for the Access-Control-Expose-Headers HTTP response header.
// +kubebuilder:validation:Optional
AccessControlExposeHeaders []AccessControlExposeHeadersParameters `json:"accessControlExposeHeaders,omitempty" tf:"access_control_expose_headers,omitempty"`
// A number that CloudFront uses as the value for the Access-Control-Max-Age HTTP response header.
// +kubebuilder:validation:Optional
AccessControlMaxAgeSec *float64 `json:"accessControlMaxAgeSec,omitempty" tf:"access_control_max_age_sec,omitempty"`
// A Boolean value that determines how CloudFront behaves for the HTTP response header.
// +kubebuilder:validation:Required
OriginOverride *bool `json:"originOverride" tf:"origin_override,omitempty"`
}
type CustomHeadersConfigItemsObservation struct {
// The HTTP response header name.
Header *string `json:"header,omitempty" tf:"header,omitempty"`
// Whether CloudFront overrides a response header with the same name received from the origin with the header specifies here.
Override *bool `json:"override,omitempty" tf:"override,omitempty"`
// The value for the HTTP response header.
Value *string `json:"value,omitempty" tf:"value,omitempty"`
}
type CustomHeadersConfigItemsParameters struct {
// The HTTP response header name.
// +kubebuilder:validation:Required
Header *string `json:"header" tf:"header,omitempty"`
// Whether CloudFront overrides a response header with the same name received from the origin with the header specifies here.
// +kubebuilder:validation:Required
Override *bool `json:"override" tf:"override,omitempty"`
// The value for the HTTP response header.
// +kubebuilder:validation:Required
Value *string `json:"value" tf:"value,omitempty"`
}
type CustomHeadersConfigObservation struct {
Items []CustomHeadersConfigItemsObservation `json:"items,omitempty" tf:"items,omitempty"`
}
type CustomHeadersConfigParameters struct {
// +kubebuilder:validation:Optional
Items []CustomHeadersConfigItemsParameters `json:"items,omitempty" tf:"items,omitempty"`
}
type FrameOptionsObservation struct {
// The value of the X-Frame-Options HTTP response header. Valid values: DENY | SAMEORIGIN
FrameOption *string `json:"frameOption,omitempty" tf:"frame_option,omitempty"`
// Whether CloudFront overrides a response header with the same name received from the origin with the header specifies here.
Override *bool `json:"override,omitempty" tf:"override,omitempty"`
}
type FrameOptionsParameters struct {
// The value of the X-Frame-Options HTTP response header. Valid values: DENY | SAMEORIGIN
// +kubebuilder:validation:Required
FrameOption *string `json:"frameOption" tf:"frame_option,omitempty"`
// Whether CloudFront overrides a response header with the same name received from the origin with the header specifies here.
// +kubebuilder:validation:Required
Override *bool `json:"override" tf:"override,omitempty"`
}
type ReferrerPolicyObservation struct {
// Whether CloudFront overrides a response header with the same name received from the origin with the header specifies here.
Override *bool `json:"override,omitempty" tf:"override,omitempty"`
// Determines whether CloudFront includes the Referrer-Policy HTTP response header and the header’s value. See Referrer Policy for more information.
ReferrerPolicy *string `json:"referrerPolicy,omitempty" tf:"referrer_policy,omitempty"`
}
type ReferrerPolicyParameters struct {
// Whether CloudFront overrides a response header with the same name received from the origin with the header specifies here.
// +kubebuilder:validation:Required
Override *bool `json:"override" tf:"override,omitempty"`
// Determines whether CloudFront includes the Referrer-Policy HTTP response header and the header’s value. See Referrer Policy for more information.
// +kubebuilder:validation:Required
ReferrerPolicy *string `json:"referrerPolicy" tf:"referrer_policy,omitempty"`
}
type RemoveHeadersConfigItemsObservation struct {
// The HTTP response header name.
Header *string `json:"header,omitempty" tf:"header,omitempty"`
}
type RemoveHeadersConfigItemsParameters struct {
// The HTTP response header name.
// +kubebuilder:validation:Required
Header *string `json:"header" tf:"header,omitempty"`
}
type RemoveHeadersConfigObservation struct {
Items []RemoveHeadersConfigItemsObservation `json:"items,omitempty" tf:"items,omitempty"`
}
type RemoveHeadersConfigParameters struct {
// +kubebuilder:validation:Optional
Items []RemoveHeadersConfigItemsParameters `json:"items,omitempty" tf:"items,omitempty"`
}
type ResponseHeadersPolicyObservation struct {
// A comment to describe the response headers policy. The comment cannot be longer than 128 characters.
Comment *string `json:"comment,omitempty" tf:"comment,omitempty"`
// A configuration for a set of HTTP response headers that are used for Cross-Origin Resource Sharing (CORS). See Cors Config for more information.
CorsConfig []CorsConfigObservation `json:"corsConfig,omitempty" tf:"cors_config,omitempty"`
// Object that contains an attribute items that contains a list of custom headers. See Custom Header for more information.
CustomHeadersConfig []CustomHeadersConfigObservation `json:"customHeadersConfig,omitempty" tf:"custom_headers_config,omitempty"`
// The current version of the response headers policy.
Etag *string `json:"etag,omitempty" tf:"etag,omitempty"`
// The identifier for the response headers policy.
ID *string `json:"id,omitempty" tf:"id,omitempty"`
// A unique name to identify the response headers policy.
Name *string `json:"name,omitempty" tf:"name,omitempty"`
// A configuration for a set of HTTP headers to remove from the HTTP response. Object that contains an attribute items that contains a list of headers. See Remove Header for more information.
RemoveHeadersConfig []RemoveHeadersConfigObservation `json:"removeHeadersConfig,omitempty" tf:"remove_headers_config,omitempty"`
// A configuration for a set of security-related HTTP response headers. See Security Headers Config for more information.
SecurityHeadersConfig []SecurityHeadersConfigObservation `json:"securityHeadersConfig,omitempty" tf:"security_headers_config,omitempty"`
// A configuration for enabling the Server-Timing header in HTTP responses sent from CloudFront. See Server Timing Headers Config for more information.
ServerTimingHeadersConfig []ServerTimingHeadersConfigObservation `json:"serverTimingHeadersConfig,omitempty" tf:"server_timing_headers_config,omitempty"`
}
type ResponseHeadersPolicyParameters struct {
// A comment to describe the response headers policy. The comment cannot be longer than 128 characters.
// +kubebuilder:validation:Optional
Comment *string `json:"comment,omitempty" tf:"comment,omitempty"`
// A configuration for a set of HTTP response headers that are used for Cross-Origin Resource Sharing (CORS). See Cors Config for more information.
// +kubebuilder:validation:Optional
CorsConfig []CorsConfigParameters `json:"corsConfig,omitempty" tf:"cors_config,omitempty"`
// Object that contains an attribute items that contains a list of custom headers. See Custom Header for more information.
// +kubebuilder:validation:Optional
CustomHeadersConfig []CustomHeadersConfigParameters `json:"customHeadersConfig,omitempty" tf:"custom_headers_config,omitempty"`
// The current version of the response headers policy.
// +kubebuilder:validation:Optional
Etag *string `json:"etag,omitempty" tf:"etag,omitempty"`
// A unique name to identify the response headers policy.
// +kubebuilder:validation:Optional
Name *string `json:"name,omitempty" tf:"name,omitempty"`
// Region is the region you'd like your resource to be created in.
// +upjet:crd:field:TFTag=-
// +kubebuilder:validation:Required
Region *string `json:"region" tf:"-"`
// A configuration for a set of HTTP headers to remove from the HTTP response. Object that contains an attribute items that contains a list of headers. See Remove Header for more information.
// +kubebuilder:validation:Optional
RemoveHeadersConfig []RemoveHeadersConfigParameters `json:"removeHeadersConfig,omitempty" tf:"remove_headers_config,omitempty"`
// A configuration for a set of security-related HTTP response headers. See Security Headers Config for more information.
// +kubebuilder:validation:Optional
SecurityHeadersConfig []SecurityHeadersConfigParameters `json:"securityHeadersConfig,omitempty" tf:"security_headers_config,omitempty"`
// A configuration for enabling the Server-Timing header in HTTP responses sent from CloudFront. See Server Timing Headers Config for more information.
// +kubebuilder:validation:Optional
ServerTimingHeadersConfig []ServerTimingHeadersConfigParameters `json:"serverTimingHeadersConfig,omitempty" tf:"server_timing_headers_config,omitempty"`
}
type SecurityHeadersConfigObservation struct {
// The policy directives and their values that CloudFront includes as values for the Content-Security-Policy HTTP response header. See Content Security Policy for more information.
ContentSecurityPolicy []ContentSecurityPolicyObservation `json:"contentSecurityPolicy,omitempty" tf:"content_security_policy,omitempty"`
// Determines whether CloudFront includes the X-Content-Type-Options HTTP response header with its value set to nosniff. See Content Type Options for more information.
ContentTypeOptions []ContentTypeOptionsObservation `json:"contentTypeOptions,omitempty" tf:"content_type_options,omitempty"`
// Determines whether CloudFront includes the X-Frame-Options HTTP response header and the header’s value. See Frame Options for more information.
FrameOptions []FrameOptionsObservation `json:"frameOptions,omitempty" tf:"frame_options,omitempty"`
// Determines whether CloudFront includes the Referrer-Policy HTTP response header and the header’s value. See Referrer Policy for more information.
ReferrerPolicy []ReferrerPolicyObservation `json:"referrerPolicy,omitempty" tf:"referrer_policy,omitempty"`
// Determines whether CloudFront includes the Strict-Transport-Security HTTP response header and the header’s value. See Strict Transport Security for more information.
StrictTransportSecurity []StrictTransportSecurityObservation `json:"strictTransportSecurity,omitempty" tf:"strict_transport_security,omitempty"`
// Determine whether CloudFront includes the X-XSS-Protection HTTP response header and the header’s value. See XSS Protection for more information.
XSSProtection []XSSProtectionObservation `json:"xssProtection,omitempty" tf:"xss_protection,omitempty"`
}
type SecurityHeadersConfigParameters struct {
// The policy directives and their values that CloudFront includes as values for the Content-Security-Policy HTTP response header. See Content Security Policy for more information.
// +kubebuilder:validation:Optional
ContentSecurityPolicy []ContentSecurityPolicyParameters `json:"contentSecurityPolicy,omitempty" tf:"content_security_policy,omitempty"`
// Determines whether CloudFront includes the X-Content-Type-Options HTTP response header with its value set to nosniff. See Content Type Options for more information.
// +kubebuilder:validation:Optional
ContentTypeOptions []ContentTypeOptionsParameters `json:"contentTypeOptions,omitempty" tf:"content_type_options,omitempty"`
// Determines whether CloudFront includes the X-Frame-Options HTTP response header and the header’s value. See Frame Options for more information.
// +kubebuilder:validation:Optional
FrameOptions []FrameOptionsParameters `json:"frameOptions,omitempty" tf:"frame_options,omitempty"`
// Determines whether CloudFront includes the Referrer-Policy HTTP response header and the header’s value. See Referrer Policy for more information.
// +kubebuilder:validation:Optional
ReferrerPolicy []ReferrerPolicyParameters `json:"referrerPolicy,omitempty" tf:"referrer_policy,omitempty"`
// Determines whether CloudFront includes the Strict-Transport-Security HTTP response header and the header’s value. See Strict Transport Security for more information.
// +kubebuilder:validation:Optional
StrictTransportSecurity []StrictTransportSecurityParameters `json:"strictTransportSecurity,omitempty" tf:"strict_transport_security,omitempty"`
// Determine whether CloudFront includes the X-XSS-Protection HTTP response header and the header’s value. See XSS Protection for more information.
// +kubebuilder:validation:Optional
XSSProtection []XSSProtectionParameters `json:"xssProtection,omitempty" tf:"xss_protection,omitempty"`
}
type ServerTimingHeadersConfigObservation struct {
// A Whether CloudFront adds the Server-Timing header to HTTP responses that it sends in response to requests that match a cache behavior that's associated with this response headers policy.
Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`
// A number 0–100 (inclusive) that specifies the percentage of responses that you want CloudFront to add the Server-Timing header to. Valid range: Minimum value of 0.0. Maximum value of 100.0.
SamplingRate *float64 `json:"samplingRate,omitempty" tf:"sampling_rate,omitempty"`
}
type ServerTimingHeadersConfigParameters struct {
// A Whether CloudFront adds the Server-Timing header to HTTP responses that it sends in response to requests that match a cache behavior that's associated with this response headers policy.
// +kubebuilder:validation:Required
Enabled *bool `json:"enabled" tf:"enabled,omitempty"`
// A number 0–100 (inclusive) that specifies the percentage of responses that you want CloudFront to add the Server-Timing header to. Valid range: Minimum value of 0.0. Maximum value of 100.0.
// +kubebuilder:validation:Required
SamplingRate *float64 `json:"samplingRate" tf:"sampling_rate,omitempty"`
}
type StrictTransportSecurityObservation struct {
// A number that CloudFront uses as the value for the Access-Control-Max-Age HTTP response header.
AccessControlMaxAgeSec *float64 `json:"accessControlMaxAgeSec,omitempty" tf:"access_control_max_age_sec,omitempty"`
// Whether CloudFront includes the includeSubDomains directive in the Strict-Transport-Security HTTP response header.
IncludeSubdomains *bool `json:"includeSubdomains,omitempty" tf:"include_subdomains,omitempty"`
// Whether CloudFront overrides a response header with the same name received from the origin with the header specifies here.
Override *bool `json:"override,omitempty" tf:"override,omitempty"`
// Whether CloudFront includes the preload directive in the Strict-Transport-Security HTTP response header.
Preload *bool `json:"preload,omitempty" tf:"preload,omitempty"`
}
type StrictTransportSecurityParameters struct {
// A number that CloudFront uses as the value for the Access-Control-Max-Age HTTP response header.
// +kubebuilder:validation:Required
AccessControlMaxAgeSec *float64 `json:"accessControlMaxAgeSec" tf:"access_control_max_age_sec,omitempty"`
// Whether CloudFront includes the includeSubDomains directive in the Strict-Transport-Security HTTP response header.
// +kubebuilder:validation:Optional
IncludeSubdomains *bool `json:"includeSubdomains,omitempty" tf:"include_subdomains,omitempty"`
// Whether CloudFront overrides a response header with the same name received from the origin with the header specifies here.
// +kubebuilder:validation:Required
Override *bool `json:"override" tf:"override,omitempty"`
// Whether CloudFront includes the preload directive in the Strict-Transport-Security HTTP response header.
// +kubebuilder:validation:Optional
Preload *bool `json:"preload,omitempty" tf:"preload,omitempty"`
}
type XSSProtectionObservation struct {
// Whether CloudFront includes the mode=block directive in the X-XSS-Protection header.
ModeBlock *bool `json:"modeBlock,omitempty" tf:"mode_block,omitempty"`
// Whether CloudFront overrides a response header with the same name received from the origin with the header specifies here.
Override *bool `json:"override,omitempty" tf:"override,omitempty"`
// A Boolean value that determines the value of the X-XSS-Protection HTTP response header. When this setting is true, the value of the X-XSS-Protection header is 1. When this setting is false, the value of the X-XSS-Protection header is 0.
Protection *bool `json:"protection,omitempty" tf:"protection,omitempty"`
// A reporting URI, which CloudFront uses as the value of the report directive in the X-XSS-Protection header. You cannot specify a report_uri when mode_block is true.
ReportURI *string `json:"reportUri,omitempty" tf:"report_uri,omitempty"`
}
type XSSProtectionParameters struct {
// Whether CloudFront includes the mode=block directive in the X-XSS-Protection header.
// +kubebuilder:validation:Optional
ModeBlock *bool `json:"modeBlock,omitempty" tf:"mode_block,omitempty"`
// Whether CloudFront overrides a response header with the same name received from the origin with the header specifies here.
// +kubebuilder:validation:Required
Override *bool `json:"override" tf:"override,omitempty"`
// A Boolean value that determines the value of the X-XSS-Protection HTTP response header. When this setting is true, the value of the X-XSS-Protection header is 1. When this setting is false, the value of the X-XSS-Protection header is 0.
// +kubebuilder:validation:Required
Protection *bool `json:"protection" tf:"protection,omitempty"`
// A reporting URI, which CloudFront uses as the value of the report directive in the X-XSS-Protection header. You cannot specify a report_uri when mode_block is true.
// +kubebuilder:validation:Optional
ReportURI *string `json:"reportUri,omitempty" tf:"report_uri,omitempty"`
}
// ResponseHeadersPolicySpec defines the desired state of ResponseHeadersPolicy
type ResponseHeadersPolicySpec struct {
v1.ResourceSpec `json:",inline"`
ForProvider ResponseHeadersPolicyParameters `json:"forProvider"`
}
// ResponseHeadersPolicyStatus defines the observed state of ResponseHeadersPolicy.
type ResponseHeadersPolicyStatus struct {
v1.ResourceStatus `json:",inline"`
AtProvider ResponseHeadersPolicyObservation `json:"atProvider,omitempty"`
}
// +kubebuilder:object:root=true
// ResponseHeadersPolicy is the Schema for the ResponseHeadersPolicys API. Provides a CloudFront response headers policy resource.
// +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status"
// +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status"
// +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name"
// +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp"
// +kubebuilder:subresource:status
// +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,aws}
type ResponseHeadersPolicy struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter"
Spec ResponseHeadersPolicySpec `json:"spec"`
Status ResponseHeadersPolicyStatus `json:"status,omitempty"`
}
// +kubebuilder:object:root=true
// ResponseHeadersPolicyList contains a list of ResponseHeadersPolicys
type ResponseHeadersPolicyList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ResponseHeadersPolicy `json:"items"`
}
// Repository type metadata.
var (
ResponseHeadersPolicy_Kind = "ResponseHeadersPolicy"
ResponseHeadersPolicy_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: ResponseHeadersPolicy_Kind}.String()
ResponseHeadersPolicy_KindAPIVersion = ResponseHeadersPolicy_Kind + "." + CRDGroupVersion.String()
ResponseHeadersPolicy_GroupVersionKind = CRDGroupVersion.WithKind(ResponseHeadersPolicy_Kind)
)
func init() {
SchemeBuilder.Register(&ResponseHeadersPolicy{}, &ResponseHeadersPolicyList{})
}