@@ -212,8 +212,12 @@ We would like to introduce a structured file format which allows authorization
212
212
to be configured using a flag (`--authorization-config-file`) which accepts a
213
213
path to a file on the disk. This feature can be enabled or disabled by the
214
214
explicit feature flag `AuthorizationConfigFromFile`.
215
+
215
216
The proposed structure is illustrated below :
216
217
218
+ > The sample configuration describes all the fields, their defaults and possible
219
+ values.
220
+
217
221
` ` ` yaml
218
222
apiVersion: apiserver.config.k8s.io/v1alpha1
219
223
kind: AuthorizationConfiguration
@@ -312,26 +316,20 @@ The keys `kubeConfigFile`, `authorizedTTL`, `unauthorizedTTL` and
312
316
` --authorization-webhook-cache-unauthorized-ttl` and `--authorization-webhook-version`
313
317
respectively.
314
318
315
- The `failurePolicy` will be a required field which allow users to specify whether
316
- or not request is denied if the webhook errors out or is unreachable. This allows
317
- ` SubjectAccessReviews` to be more definitive.
318
-
319
319
Today, the `SubjectAccessReview` version defaults to `v1beta1` if the corresponding
320
320
flag is not supplied. While configuring authorization modes using the file config,
321
321
the version supported by a webhook has to be mentioned using a required field
322
322
` subjectAccessReviewVersion` .
323
323
324
- The new structure introduces a configurable timeout (with appropriate defaults) that
325
- allows administrators to define a timeout for webhooks in case they are unreachable.
326
-
327
324
The code path for enabling the above will only be triggered if the feature flag will
328
325
be enabled until the time the feature flag is removed and configuring authorizer
329
326
through a file becomes GA.
330
327
331
328
The user can define a CEL expression to determine whether a request needs to dispatched
332
- to the authz webhook for which the expression has been defined.
329
+ to the authz webhook for which the expression has been defined. The user would have access
330
+ to a `request` variable containing a `SubjectAccessReview` object in the version specified
331
+ by `subjectAccessReviewVersion`.
333
332
334
- > TODO: More details on the implementation will be charted once the goals, non-goal and proposal is approved.
335
333
336
334
# ## Monitoring
337
335
0 commit comments