@@ -186,16 +186,16 @@ type Cookie struct {
186
186
187
187
// PomeriumSpec defines Pomerium-specific configuration parameters.
188
188
type PomeriumSpec struct {
189
+ // AccessLogFields sets the <a href="https://www.pomerium.com/docs/reference/access-log-fields">access fields</a> to log.
190
+ AccessLogFields * []string `json:"accessLogFields,omitempty"`
191
+
189
192
// Authenticate sets authenticate service parameters.
190
193
// If not specified, a Pomerium-hosted authenticate service would be used.
191
194
// +kubebuilder:validation:Optional
192
195
Authenticate * Authenticate `json:"authenticate"`
193
196
194
- // IdentityProvider configure single-sign-on authentication and user identity details
195
- // by integrating with your <a href="https://www.pomerium.com/docs/identity-providers/">Identity Provider</a>
196
- //
197
- // +kubebuilder:validation:Optional
198
- IdentityProvider * IdentityProvider `json:"identityProvider"`
197
+ // AuthorizeLogFields sets the <a href="https://www.pomerium.com/docs/reference/authorize-log-fields">authorize fields</a> to log.
198
+ AuthorizeLogFields * []string `json:"authorizeLogFields,omitempty"`
199
199
200
200
// Certificates is a list of secrets of type TLS to use
201
201
// +kubebuilder:validation:Format="namespace/name"
@@ -206,6 +206,35 @@ type PomeriumSpec struct {
206
206
// +optional
207
207
CASecrets []string `json:"caSecrets"`
208
208
209
+ // Cookie defines Pomerium session cookie options.
210
+ // +optional
211
+ Cookie * Cookie `json:"cookie,omitempty"`
212
+
213
+ // IdentityProvider configure single-sign-on authentication and user identity details
214
+ // by integrating with your <a href="https://www.pomerium.com/docs/identity-providers/">Identity Provider</a>
215
+ //
216
+ // +kubebuilder:validation:Optional
217
+ IdentityProvider * IdentityProvider `json:"identityProvider"`
218
+
219
+ // JWTClaimHeaders convert claims from the assertion token
220
+ // into HTTP headers and adds them into JWT assertion header.
221
+ // Please make sure to read
222
+ // <a href="https://www.pomerium.com/docs/topics/getting-users-identity">
223
+ // Getting User Identity</a> guide.
224
+ //
225
+ // +optional
226
+ JWTClaimHeaders map [string ]string `json:"jwtClaimHeaders,omitempty"`
227
+
228
+ // PassIdentityHeaders sets the <a href="https://www.pomerium.com/docs/reference/pass-identity-headers">pass identity headers</a> option.
229
+ PassIdentityHeaders * bool `json:"passIdentityHeaders,omitempty"`
230
+
231
+ // ProgrammaticRedirectDomains specifies a list of domains that can be used for
232
+ // <a href="https://www.pomerium.com/docs/capabilities/programmatic-access">programmatic redirects</a>.
233
+ ProgrammaticRedirectDomains []string `json:"programmaticRedirectDomains,omitempty"`
234
+
235
+ // RuntimeFlags sets the <a href="https://www.pomerium.com/docs/reference/runtime-flags">runtime flags</a> to enable/disable certain features.
236
+ RuntimeFlags map [string ]bool `json:"runtimeFlags,omitempty"`
237
+
209
238
// Secrets references a Secret with Pomerium bootstrap parameters.
210
239
//
211
240
// <p>
@@ -237,49 +266,23 @@ type PomeriumSpec struct {
237
266
// +kubebuilder:validation:Format="namespace/name"
238
267
Secrets string `json:"secrets"`
239
268
269
+ // SetResponseHeaders specifies a mapping of HTTP Header to be added globally to all managed routes and pomerium's authenticate service.
270
+ // +optional
271
+ // See <a href="https://www.pomerium.com/docs/reference/set-response-headers">Set Response Headers</a>
272
+ SetResponseHeaders map [string ]string `json:"setResponseHeaders,omitempty"`
273
+
240
274
// Storage defines persistent storage for sessions and other data.
241
275
// See <a href="https://www.pomerium.com/docs/topics/data-storage">Storage</a> for details.
242
276
// If no storage is specified, Pomerium would use a transient in-memory storage (not recommended for production).
243
277
//
244
278
// +kubebuilder:validation:Optional
245
279
Storage * Storage `json:"storage,omitempty"`
246
280
247
- // Cookie defines Pomerium session cookie options.
248
- // +optional
249
- Cookie * Cookie `json:"cookie,omitempty"`
250
-
251
- // JWTClaimHeaders convert claims from the assertion token
252
- // into HTTP headers and adds them into JWT assertion header.
253
- // Please make sure to read
254
- // <a href="https://www.pomerium.com/docs/topics/getting-users-identity">
255
- // Getting User Identity</a> guide.
256
- //
257
- // +optional
258
- JWTClaimHeaders map [string ]string `json:"jwtClaimHeaders,omitempty"`
259
-
260
- // SetResponseHeaders specifies a mapping of HTTP Header to be added globally to all managed routes and pomerium's authenticate service.
261
- // +optional
262
- // See <a href="https://www.pomerium.com/docs/reference/set-response-headers">Set Response Headers</a>
263
- SetResponseHeaders map [string ]string `json:"setResponseHeaders,omitempty"`
264
-
265
- // ProgrammaticRedirectDomains specifies a list of domains that can be used for
266
- // <a href="https://www.pomerium.com/docs/capabilities/programmatic-access">programmatic redirects</a>.
267
- ProgrammaticRedirectDomains []string `json:"programmaticRedirectDomains,omitempty"`
268
-
269
281
// Timeout specifies the <a href="https://www.pomerium.com/docs/reference/global-timeouts">global timeouts</a> for all routes.
270
282
Timeouts * Timeouts `json:"timeouts,omitempty"`
271
283
272
284
// UseProxyProtocol enables <a href="https://www.pomerium.com/docs/reference/use-proxy-protocol">Proxy Protocol</a> support.
273
285
UseProxyProtocol * bool `json:"useProxyProtocol,omitempty"`
274
-
275
- // AccessLogFields sets the <a href="https://www.pomerium.com/docs/reference/access-log-fields">access fields</a> to log.
276
- AccessLogFields * []string `json:"accessLogFields,omitempty"`
277
-
278
- // AuthorizeLogFields sets the <a href="https://www.pomerium.com/docs/reference/authorize-log-fields">authorize fields</a> to log.
279
- AuthorizeLogFields * []string `json:"authorizeLogFields,omitempty"`
280
-
281
- // PassIdentityHeaders sets the <a href="https://www.pomerium.com/docs/reference/pass-identity-headers">pass identity headers</a> option.
282
- PassIdentityHeaders * bool `json:"passIdentityHeaders,omitempty"`
283
286
}
284
287
285
288
// Timeouts allows to configure global timeouts for all routes.
0 commit comments