-
Notifications
You must be signed in to change notification settings - Fork 113
/
zz_responseheaderspolicy_types.go
executable file
·342 lines (251 loc) · 15.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
/*
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 {
}
type AccessControlAllowHeadersParameters struct {
// +kubebuilder:validation:Optional
Items []*string `json:"items,omitempty" tf:"items,omitempty"`
}
type AccessControlAllowMethodsObservation struct {
}
type AccessControlAllowMethodsParameters struct {
// +kubebuilder:validation:Optional
Items []*string `json:"items,omitempty" tf:"items,omitempty"`
}
type AccessControlAllowOriginsObservation struct {
}
type AccessControlAllowOriginsParameters struct {
// +kubebuilder:validation:Optional
Items []*string `json:"items,omitempty" tf:"items,omitempty"`
}
type AccessControlExposeHeadersObservation struct {
}
type AccessControlExposeHeadersParameters struct {
// +kubebuilder:validation:Optional
Items []*string `json:"items,omitempty" tf:"items,omitempty"`
}
type ContentSecurityPolicyObservation struct {
}
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 {
}
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 {
}
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 {
}
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 {
}
type CustomHeadersConfigParameters struct {
// +kubebuilder:validation:Optional
Items []CustomHeadersConfigItemsParameters `json:"items,omitempty" tf:"items,omitempty"`
}
type FrameOptionsObservation struct {
}
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 {
}
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 ResponseHeadersPolicyObservation struct {
// The identifier for the response headers policy.
ID *string `json:"id,omitempty" tf:"id,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:Required
Name *string `json:"name" 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 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 {
}
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 {
}
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 {
}
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 {
}
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"`
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{})
}