-
Notifications
You must be signed in to change notification settings - Fork 578
api: support crls in client traffic policies #6955
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -161,6 +161,32 @@ type ClientValidationContext struct { | |
| // matches one of the specified matchers | ||
| // +optional | ||
| SubjectAltNames *SubjectAltNames `json:"subjectAltNames,omitempty"` | ||
|
|
||
| // Crl specifies the crl configuration that can be used to validate the client initiating the TLS connection | ||
| // +optional | ||
| // +notImplementedHide | ||
| Crl *CrlContext `json:"crl,omitempty"` | ||
| } | ||
|
|
||
| // CrlContext holds certificate revocation list configuration that can be used to validate the client initiating the TLS connection | ||
| type CrlContext struct { | ||
| // Refs contains one or more references to a Kubernetes ConfigMap or a Kubernetes Secret, | ||
| // containing the certificate revocation list in PEM format | ||
| // Expects the content in a key named `ca.crl`. | ||
| // | ||
| // References to a resource in different namespace are invalid UNLESS there | ||
| // is a ReferenceGrant in the target namespace that allows the crl | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. thoughts on There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. wdyt @envoyproxy/gateway-maintainers There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Sounds good 👍 There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. should this be
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. +1 with 1 |
||
| // to be attached. | ||
| // | ||
| // +kubebuilder:validation:Required | ||
| // +kubebuilder:validation:MinItems=1 | ||
| // +kubebuilder:validation:MaxItems=8 | ||
| Refs []gwapiv1.SecretObjectReference `json:"refs"` | ||
|
|
||
| // If this option is set to true, Envoy will only verify the certificate at the end of the certificate chain against the CRL. | ||
| // Defaults to false, which will verify the entire certificate chain against the CRL. | ||
| // +optional | ||
| OnlyVerifyLeafCertificate *bool `json:"onlyVerifyLeafCertificate,omitempty"` | ||
| } | ||
|
|
||
| type SubjectAltNames struct { | ||
|
|
||
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is CRL well known enough ? does most of the ecosystem use this acronym or should we use the long form here ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
During the sync I mentioned a preference for a longer name but I think that's wrong. NGINX, HAProxy, and other load balancers all use the abbreviated
crlso this should be fine.