8000 add grpc unary support · nginx/kubernetes-ingress@6abaf37 · GitHub
[go: up one dir, main page]

Skip to content

Commit 6abaf37

Browse files
author
Rafal Wegrzycki
committed
add grpc unary support
1 parent ea2e9f9 commit 6abaf37

7 files changed

+1959
-1482
lines changed

deployments/common/crds-v1beta1/appprotect.f5.com_aplogconfs.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ spec:
3737
- arcsight
3838
- default
3939
- user-defined
40+
- grpc
4041
type: string
4142
format_string:
4243
type: string

deployments/common/crds-v1beta1/appprotect.f5.com_appolicies.yaml

Lines changed: 154 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,11 @@ spec:
159159
type: string
160160
name:
161161
enum:
162+
- VIOL_GRPC_FORMAT
163+
- VIOL_GRPC_MALFORMED
164+
- VIOL_GRPC_METHOD
165+
- VIOL_PARAMETER_ARRAY_VALUE
166+
- VIOL_PARAMETER_VALUE_REGEXP
162167
- VIOL_PARAMETER_VALUE_BASE64
163168
- VIOL_MANDATORY_HEADER
164169
- VIOL_HEADER_REPEATED
@@ -375,6 +380,8 @@ spec:
375380
- explicit
376381
- wildcard
377382
type: string
383+
wildcardOrder:
384+
type: integer
378385
type: object
379386
type: array
380387
data-guard:
@@ -425,6 +432,8 @@ spec:
425432
filetypes:
426433
items:
427434
properties:
435+
action:
436+
type: string
428437
allowed:
429438
type: boolean
430439
checkPostDataLength:
@@ -452,6 +461,8 @@ spec:
452461
type: string
453462
urlLength:
454463
type: integer
464+
wildcardOrder:
465+
type: integer
455466
type: object
456467
type: array
457468
fullPath:
@@ -480,6 +491,62 @@ spec:
480491
pattern: ^http
481492
type: string
482493
type: object
494+
grpc-profiles:
495+
items:
496+
properties:
497+
associateUrls:
498+
type: boolean
499+
attackSignaturesCheck:
500+
type: boolean
501+
defenseAttributes:
502+
properties:
503+
allowUnknownFields:
504+
type: boolean
505+
maximumDataLength:
506+
pattern: any|\d+
507+
type: string
508+
type: object
509+
description:
510+
type: string
511+
hasIdlFiles:
512+
type: boolean
513+
idlFiles:
514+
items:
515+
properties:
516+
idlFile:
517+
properties:
518+
contents:
519+
type: string
520+
fileName:
521+
type: string
522+
isBase64:
523+
type: boolean
524+
type: object
525+
isPrimary:
526+
type: boolean
527+
primaryIdlFileName:
528+
type: string
529+
type: object
530+
type: array
531+
metacharElementCheck:
532+
type: boolean
533+
name:
534+
type: string
535+
signatureOverrides:
536+
items:
537+
properties:
538+
enabled:
539+
type: boolean
540+
name:
541+
type: string
542+
signatureId:
543+
type: integer
544+
tag:
545+
type: string
546+
type: object
547+
type: array
548+
type: object
549+
type: array
483550
header-settings:
484551
properties:
485552
maximumHttpHeaderLength:
@@ -501,6 +568,8 @@ spec:
501568
headers:
502569
items:
503570
properties:
571+
allowRepeatedOccurrences:
572+
type: boolean
504573
base64Decoding:
505574
type: boolean
506575
checkSignatures:
@@ -523,13 +592,39 @@ spec:
523592
type: boolean
524593
percentDecoding:
525594
type: boolean
595+
signatureOverrides:
596+
items:
597+
properties:
598+
enabled:
599+
type: boolean
600+
name:
601+
type: string
602+
signatureId:
603+
type: integer
604+
tag:
605+
type: string
606+
type: object
607+
type: array
526608
type:
527609
enum:
528610
- explicit
529611
- wildcard
530612
type: string
531613
urlNormalization:
532614
type: boolean
615+
wildcardOrder:
616+
type: integer
617+
type: object
618+
type: array
619+
idl-files:
620+
items:
621+
properties:
622+
contents:
623+
type: string
624+
fileName:
625+
type: string
626+
isBase64:
627+
type: boolean
533628
type: object
534629
type: array
535630
json-profiles:
@@ -556,6 +651,8 @@ spec:
556651
type: object
557652
description:
558653
type: string
654+
handleJsonValuesAsParameters:
655+
type: boolean
559656
hasValidationFiles:
560657
type: boolean
561658
metacharOverrides:
@@ -634,6 +731,8 @@ spec:
634731
methods:
635732
items:
636733
properties:
734+
action:
735+
type: string
637736
name:
638737
type: string
639738
type: object
@@ -717,6 +816,8 @@ spec:
717816
type: boolean
718817
exclusiveMin:
719818
type: boolean
819+
isBase64:
820+
type: boolean
720821
isCookie:
721822
type: boolean
722823
isHeader:
@@ -726,12 +827,20 @@ spec:
726827
- global
727828
- url
728829
type: string
830+
mandatory:
831+
type: boolean
729832
maximumLength:
730833
type: integer
834+
maximumValue:
835+
type: integer
731836
metacharsOnParameterValueCheck:
732837
type: boolean
733838
minimumLength:
734839
type: integer
840+
minimumValue:
841+
type: integer
842+
multipleOf:
843+
type: integer
735844
name:
736845
type: string
737846
nameMetacharOverrides:
@@ -782,6 +891,8 @@ spec:
782891
- explicit
783892
- wildcard
784893
type: string
894+
url:
895+
type: object
785896
valueMetacharOverrides:
786897
items:
787898
properties:
@@ -805,6 +916,8 @@ spec:
805916
- user-input
806917
- xml
807918
type: string
919+
wildcardOrder:
920+
type: integer
808921
type: object
809922
type: array
810923
response-pages:
@@ -824,6 +9 D02B 37,11 @@ spec:
824937
type: string
825938
ajaxRedirectUrl:
826939
type: string
940+
grpcStatusCode:
941+
pattern: ABORTED|ALREADY_EXISTS|CANCELLED|DATA_LOSS|DEADLINE_EXCEEDED|FAILED_PRECONDITION|INTERNAL|INVALID_ARGUMENT|NOT_FOUND|OK|OUT_OF_RANGE|PERMISSION_DENIED|RESOURCE_EXHAUSTED|UNAUTHENTICATED|UNAVAILABLE|UNIMPLEMENTED|UNKNOWN|d+
942+
type: string
943+
grpcStatusMessage:
944+
type: string
827945
responseActionType:
828946
enum:
829947
- custom
@@ -851,6 +969,7 @@ spec:
851969
- mobile
852970
- persistent-flow
853971
- xml
972+
- grpc
854973
type: string
855974
responseRedirectUrl:
856975
type: string
@@ -1058,6 +1177,8 @@ spec:
10581177
urls:
10591178
items:
10601179
properties:
1180+
$action:
1181+
type: string
10611182
attackSignaturesCheck:
10621183
type: boolean
10631184
description:
@@ -1240,6 +1361,8 @@ spec:
12401361
type: boolean
12411362
exclusiveMin:
12421363
type: boolean
1364+
isBase64:
1365+
type: boolean
12431366
isCookie:
12441367
type: boolean
12451368
isHeader:
@@ -1249,12 +1372,20 @@ spec:
12491372
- global
12501373
- url
12511374
type: string
1375+
mandatory:
1376+
type: boolean
12521377
maximumLength:
12531378
type: integer
1379+
maximumValue:
1380+
type: integer
12541381
metacharsOnParameterValueCheck:
12551382
type: boolean
12561383
minimumLength:
12571384
type: integer
1385+
minimumValue:
1386+
type: integer
1387+
multipleOf:
1388+
type: integer
12581389
name:
12591390
type: string
12601391
nameMetacharOverrides:
@@ -1305,6 +1436,8 @@ spec:
13051436
- explicit
13061437
- wildcard
13071438
type: string
1439+
url:
1440+
type: object
13081441
valueMetacharOverrides:
13091442
items:
13101443
properties:
@@ -1328,6 +1461,8 @@ spec:
13281461
- user-input
13291462
- xml
13301463
type: string
1464+
wildcardOrder:
1465+
type: integer
13311466
type: object
13321467
urlSegmentIndex:
13331468
type: integer
@@ -1359,6 +1494,11 @@ spec:
13591494
urlContentProfiles:
13601495
items:
13611496
properties:
1497+
contentProfile:
1498+
properties:
1499+
name:
1500+
type: string
1501+
type: object
13621502
headerName:
13631503
type: string
13641504
headerOrder:
@@ -1377,6 +1517,7 @@ spec:
13771517
- gwt
13781518
- json
13791519
- xml
1520+
- grpc
13801521
type: string
13811522
type: object
13821523
type: array
@@ -1464,6 +1605,19 @@ spec:
14641605
type: boolean
14651606
name:
14661607
type: string
1608+
signatureOverrides:
1609+
items:
1610+
properties:
1611+
enabled:
1612+
type: boolean
1613+
name:
1614+
type: string
1615+
signatureId:
1616+
type: integer
1617+
tag:
1618+
type: string
1619+
type: object
1620+
type: array
14671621
type: object
14681622
type: array
14691623
xml-validation-files:

deployments/common/crds/appprotect.f5.com_aplogconfs.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ spec:
3939
- arcsight
4040
- default
4141
- user-defined
42+
- grpc
4243
type: string
4344
format_string:
4445
type: string

0 commit comments

Comments
 (0)
0