Commit eb1feaf
committed
api: add CSRF origin validation to SecurityPolicy
Add native CSRF protection to SecurityPolicy following the CORS pattern.
The CSRF filter validates the Origin header on mutating requests (POST,
PUT, DELETE, PATCH) against the destination and additional allowed origins.
API: SecurityPolicy.csrf with additionalOrigins []StringMatch
IR: CSRF struct in SecurityFeatures
xDS: csrf.go implementing httpFilter interface (disabled at HCM 0%,
enabled per-route 100%)
Fixes #8835
Signed-off-by: asalvador <asalvador@newrelic.com>1 parent cab6837 commit eb1feaf
39 files changed
Lines changed: 986 additions & 874 deletions
File tree
- .github/workflows
- api/v1alpha1
- charts
- gateway-crds-helm/templates/generated
- gateway-helm
- charts/crds/crds/generated
- templates
- internal
- gatewayapi
- testdata
- ir
- xds/translator
- testdata
- in/xds-ir
- out/xds-ir
- release-notes
- site/content/en/latest
- api
- install
- tasks/security
- test
- cel-validation
- config
- envoy-gateaway-config
- helm
- conformance
- helm
- gateway-crds-helm
- gateway-helm
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
181 | 181 | | |
182 | 182 | | |
183 | 183 | | |
184 | | - | |
185 | | - | |
186 | | - | |
187 | | - | |
188 | 184 | | |
189 | 185 | | |
190 | 186 | | |
| |||
241 | 237 | | |
242 | 238 | | |
243 | 239 | | |
244 | | - | |
245 | | - | |
246 | | - | |
247 | 240 | | |
248 | 241 | | |
249 | 242 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
45 | 45 | | |
46 | 46 | | |
47 | 47 | | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | 48 | | |
52 | 49 | | |
53 | 50 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
53 | 53 | | |
54 | 54 | | |
55 | 55 | | |
56 | | - | |
57 | | - | |
58 | 56 | | |
59 | 57 | | |
60 | 58 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
76 | 83 | | |
77 | 84 | | |
78 | 85 | | |
| |||
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 0 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
349 | 349 | | |
350 | 350 | | |
351 | 351 | | |
352 | | - | |
353 | | - | |
354 | 352 | | |
355 | 353 | | |
356 | 354 | | |
| |||
Lines changed: 37 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
618 | 618 | | |
619 | 619 | | |
620 | 620 | | |
| 621 | + | |
| 622 | + | |
| 623 | + | |
| 624 | + | |
| 625 | + | |
| 626 | + | |
| 627 | + | |
| 628 | + | |
| 629 | + | |
| 630 | + | |
| 631 | + | |
| 632 | + | |
| 633 | + | |
| 634 | + | |
| 635 | + | |
| 636 | + | |
| 637 | + | |
| 638 | + | |
| 639 | + | |
| 640 | + | |
| 641 | + | |
| 642 | + | |
| 643 | + | |
| 644 | + | |
| 645 | + | |
| 646 | + | |
| 647 | + | |
| 648 | + | |
| 649 | + | |
| 650 | + | |
| 651 | + | |
| 652 | + | |
| 653 | + | |
| 654 | + | |
| 655 | + | |
| 656 | + | |
| 657 | + | |
621 | 658 | | |
622 | 659 | | |
623 | 660 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
88 | 88 | | |
89 | 89 | | |
90 | 90 | | |
91 | | - | |
92 | | - | |
93 | 91 | | |
94 | 92 | | |
95 | 93 | | |
| |||
Lines changed: 0 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
348 | 348 | | |
349 | 349 | | |
350 | 350 | | |
351 | | - | |
352 | | - | |
353 | 351 | | |
354 | 352 | | |
355 | 353 | | |
| |||
0 commit comments