Skip to content

Commit 2cb9ce2

Browse files
authored
conformance: Add conformance reports for Airlock Microgateway 4.5.0 (#3590)
1 parent c3ed063 commit 2cb9ce2

File tree

9 files changed

+270
-4
lines changed

9 files changed

+270
-4
lines changed

conformance/reports/v1.1.0/airlock-microgateway/README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55
| API channel | Implementation version | Mode | Report |
66
|--------------|----------------------------------------------------------------------|---------|--------------------------------------------------|
77
| experimental | [v4.4.0](https://github.com/airlock/microgateway/releases/tag/4.4.0) | default | [v4.4.0 report](./experimental-4.4.0-default-report.yaml) |
8+
| standard | [v4.5.0](https://github.com/airlock/microgateway/releases/tag/4.5.0) | default | [v4.5.0 report](./standard-4.5.0-default-report.yaml) |
9+
810

911
## Reproduce
1012

@@ -14,3 +16,7 @@ The Airlock Microgateway conformance report can be reproduced by following the s
1416
> The `HTTPRouteWeight` test fires 10 concurrent request to 3 backends totaling in 500 requests to assert a distribution that matches the configured weight.
1517
> Please be aware that this test exceeds the [5 req/sec rate-limit](https://docs.airlock.com/microgateway/latest/#data/1675772882054.html) enforced in the <!-- markdown-link-check-disable --> [community edition](https://www.airlock.com/en/secure-access-hub/components/microgateway/community-edition) <!-- markdown-link-check-enable -->, causing the test to fail.
1618
> To successfully pass this test a <!-- markdown-link-check-disable --> [premium license](https://www.airlock.com/en/secure-access-hub/components/microgateway/premium-edition) <!-- markdown-link-check-enable --> is required.
19+
>
20+
> The Airlock Microgateway drops all request headers except for a well-known built-in standard and tracing headers list (e.g., Accept, Cookie, X-CSRF-TOKEN) to reduce the attack surface.
21+
> Therefore, to run the conformance tests, a `ContentSecurityPolicy` with a `HeaderRewrites` (see [`conformance-report.yaml`](https://github.com/airlock/microgateway/tree/main/examples/gateway-api/conformance/manifests/conformance-report.yaml)) is required to disable request header filtering for all `HTTPRoute` tests relying on the `MakeRequestAndExpectEventuallyConsistentResponse` assertion.
22+
> Regardless of whether request header filtering is enabled or disabled, header-based routing works as specified in the Gateway API, as the headers are only filtered before the request is forwarded to the upstream.
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
apiVersion: gateway.networking.k8s.io/v1alpha1
2+
date: "2025-02-03T15:50:39Z"
3+
gatewayAPIChannel: standard
4+
gatewayAPIVersion: v1.1.0
5+
implementation:
6+
contact:
7+
- https://www.airlock.com/en/contact
8+
organization: airlock
9+
project: microgateway
10+
url: https://github.com/airlock/microgateway
11+
version: 4.5.0
12+
kind: ConformanceReport
13+
mode: default
14+
profiles:
15+
- core:
16+
result: success
17+
statistics:
18+
Failed: 0
19+
Passed: 33
20+
Skipped: 0
21+
extended:
22+
result: success
23+
statistics:
24+
Failed: 0
25+
Passed: 10
26+
Skipped: 0
27+
supportedFeatures:
28+
- GatewayPort8080
29+
- HTTPRouteHostRewrite
30+
- HTTPRouteMethodMatching
31+
- HTTPRouteParentRefPort
32+
- HTTPRoutePathRewrite
33+
- HTTPRoutePortRedirect
34+
- HTTPRouteQueryParamMatching
35+
- HTTPRouteSchemeRedirect
36+
unsupportedFeatures:
37+
- GatewayHTTPListenerIsolation
38+
- GatewayStaticAddresses
39+
- HTTPRouteBackendRequestHeaderModification
40+
- HTTPRouteBackendTimeout
41+
- HTTPRoutePathRedirect
42+
- HTTPRouteRequestMirror
43+
- HTTPRouteRequestMultipleMirrors
44+
- HTTPRouteRequestTimeout
45+
- HTTPRouteResponseHeaderModification
46+
name: GATEWAY-HTTP
47+
summary: Core tests succeeded. Extended tests succeeded.
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Airlock Microgateway
2+
3+
## Table of contents
4+
5+
| API channel | Implementation version | Mode | Report |
6+
|-------------|----------------------------------------------------------------------|---------|----------------------------------------------|
7+
| standard | [v4.5.0](https://github.com/airlock/microgateway/releases/tag/4.5.0) | default | [link](./standard-4.5.0-default-report.yaml) |
8+
9+
## Reproduce
10+
11+
The Airlock Microgateway conformance report can be reproduced by following the steps in the [Gateway API conformance guide](https://github.com/airlock/microgateway/tree/main/examples/gateway-api/conformance/conformance.md) on GitHub.
12+
13+
> [!NOTE]
14+
> The `HTTPRouteWeight` test fires 10 concurrent request to 3 backends totaling in 500 requests to assert a distribution that matches the configured weight.
15+
> Please be aware that this test exceeds the [5 req/sec rate-limit](https://docs.airlock.com/microgateway/latest/#data/1675772882054.html) enforced in the <!-- markdown-link-check-disable --> [community edition](https://www.airlock.com/en/secure-access-hub/components/microgateway/community-edition) <!-- markdown-link-check-enable -->, causing the test to fail.
16+
> To successfully pass this test a <!-- markdown-link-check-disable --> [premium license](https://www.airlock.com/en/secure-access-hub/components/microgateway/premium-edition) <!-- markdown-link-check-enable --> is required.
17+
>
18+
> The Airlock Microgateway drops all request headers except for a well-known built-in standard and tracing headers list (e.g., Accept, Cookie, X-CSRF-TOKEN) to reduce the attack surface.
19+
> Therefore, to run the conformance tests, a `ContentSecurityPolicy` with a `HeaderRewrites` (see [`conformance-report.yaml`](https://github.com/airlock/microgateway/tree/main/examples/gateway-api/conformance/manifests/conformance-report.yaml)) is required to disable request header filtering for all `HTTPRoute` tests relying on the `MakeRequestAndExpectEventuallyConsistentResponse` assertion.
20+
> Regardless of whether request header filtering is enabled or disabled, header-based routing works as specified in the Gateway API, as the headers are only filtered before the request is forwarded to the upstream.
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
apiVersion: gateway.networking.k8s.io/v1alpha1
2+
date: "2025-02-03T15:50:18Z"
3+
gatewayAPIChannel: standard
4+
gatewayAPIVersion: v1.1.1
5+
implementation:
6+
contact:
7+
- https://www.airlock.com/en/contact
8+
organization: airlock
9+
project: microgateway
10+
url: https://github.com/airlock/microgateway
11+
version: 4.5.0
12+
kind: ConformanceReport
13+
mode: default
14+
profiles:
15+
- core:
16+
result: success
17+
statistics:
18+
Failed: 0
19+
Passed: 33
20+
Skipped: 0
21+
extended:
22+
result: success
23+
statistics:
24+
Failed: 0
25+
Passed: 10
26+
Skipped: 0
27+
supportedFeatures:
28+
- GatewayPort8080
29+
- HTTPRouteHostRewrite
30+
- HTTPRouteMethodMatching
31+
- HTTPRouteParentRefPort
32+
- HTTPRoutePathRewrite
33+
- HTTPRoutePortRedirect
34+
- HTTPRouteQueryParamMatching
35+
- HTTPRouteSchemeRedirect
36+
unsupportedFeatures:
37+
- GatewayHTTPListenerIsolation
38+
- GatewayStaticAddresses
39+
- HTTPRouteBackendRequestHeaderModification
40+
- HTTPRouteBackendTimeout
41+
- HTTPRoutePathRedirect
42+
- HTTPRouteRequestMirror
43+
- HTTPRouteRequestMultipleMirrors
44+
- HTTPRouteRequestTimeout
45+
- HTTPRouteResponseHeaderModification
46+
name: GATEWAY-HTTP
47+
summary: Core tests succeeded. Extended tests succeeded.
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Airlock Microgateway
2+
3+
## Table of contents
4+
5+
| API channel | Implementation version | Mode | Report |
6+
|-------------|----------------------------------------------------------------------|---------|----------------------------------------------|
7+
| standard | [v4.5.0](https://github.com/airlock/microgateway/releases/tag/4.5.0) | default | [link](./standard-4.5.0-default-report.yaml) |
8+
9+
## Reproduce
10+
11+
The Airlock Microgateway conformance report can be reproduced by following the steps in the [Gateway API conformance guide](https://github.com/airlock/microgateway/tree/main/examples/gateway-api/conformance/conformance.md) on GitHub.
12+
13+
> [!NOTE]
14+
> The `HTTPRouteWeight` test fires 10 concurrent request to 3 backends totaling in 500 requests to assert a distribution that matches the configured weight.
15+
> Please be aware that this test exceeds the [5 req/sec rate-limit](https://docs.airlock.com/microgateway/latest/#data/1675772882054.html) enforced in the <!-- markdown-link-check-disable --> [community edition](https://www.airlock.com/en/secure-access-hub/components/microgateway/community-edition) <!-- markdown-link-check-enable -->, causing the test to fail.
16+
> To successfully pass this test a <!-- markdown-link-check-disable --> [premium license](https://www.airlock.com/en/secure-access-hub/components/microgateway/premium-edition) <!-- markdown-link-check-enable --> is required.
17+
>
18+
> The Airlock Microgateway drops all request headers except for a well-known built-in standard and tracing headers list (e.g., Accept, Cookie, X-CSRF-TOKEN) to reduce the attack surface.
19+
> Therefore, to run the conformance tests, a `ContentSecurityPolicy` with a `HeaderRewrites` (see [`conformance-report.yaml`](https://github.com/airlock/microgateway/tree/main/examples/gateway-api/conformance/manifests/conformance-report.yaml)) is required to disable request header filtering for all `HTTPRoute` tests relying on the `MakeRequestAndExpectEventuallyConsistentResponse` assertion.
20+
> Regardless of whether request header filtering is enabled or disabled, header-based routing works as specified in the Gateway API, as the headers are only filtered before the request is forwarded to the upstream.
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
apiVersion: gateway.networking.k8s.io/v1
2+
date: "2025-02-03T15:51:50Z"
3+
gatewayAPIChannel: standard
4+
gatewayAPIVersion: v1.2.0
5+
implementation:
6+
contact:
7+
- https://www.airlock.com/en/contact
8+
organization: airlock
9+
project: microgateway
10+
url: https://github.com/airlock/microgateway
11+
version: 4.5.0
12+
kind: ConformanceReport
13+
mode: default
14+
profiles:
15+
- core:
16+
result: success
17+
statistics:
18+
Failed: 0
19+
Passed: 33
20+
Skipped: 0
21+
extended:
22+
result: success
23+
statistics:
24+
Failed: 0
25+
Passed: 16
26+
Skipped: 0
27+
supportedFeatures:
28+
- GatewayInfrastructurePropagation
29+
- GatewayPort8080
30+
- HTTPRouteBackendProtocolH2C
31+
- HTTPRouteBackendProtocolWebSocket
32+
- HTTPRouteBackendTimeout
33+
- HTTPRouteDestinationPortMatching
34+
- HTTPRouteHostRewrite
35+
- HTTPRouteMethodMatching
36+
- HTTPRouteParentRefPort
37+
- HTTPRoutePathRewrite
38+
- HTTPRoutePortRedirect
39+
- HTTPRouteQueryParamMatching
40+
- HTTPRouteRequestTimeout
41+
- HTTPRouteSchemeRedirect
42+
unsupportedFeatures:
43+
- GatewayHTTPListenerIsolation
44+
- GatewayStaticAddresses
45+
- HTTPRouteBackendRequestHeaderModification
46+
- HTTPRoutePathRedirect
47+
- HTTPRouteRequestMirror
48+
- HTTPRouteRequestMultipleMirrors
49+
- HTTPRouteResponseHeaderModification
50+
name: GATEWAY-HTTP
51+
summary: Core tests succeeded. Extended tests succeeded.
52+
succeededProvisionalTests:
53+
- GatewayInfrastructure
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Airlock Microgateway
2+
3+
## Table of contents
4+
5+
| API channel | Implementation version | Mode | Report |
6+
|--------------|----------------------------------------------------------------------|---------|--------------------------------------------------|
7+
| experimental | [v4.5.0](https://github.com/airlock/microgateway/releases/tag/4.5.0) | default | [link](./experimental-4.5.0-default-report.yaml) |
8+
9+
## Reproduce
10+
11+
The Airlock Microgateway conformance report can be reproduced by following the steps in the [Gateway API conformance guide](https://github.com/airlock/microgateway/tree/main/examples/gateway-api/conformance/conformance.md) on GitHub.
12+
13+
> [!NOTE]
14+
> The `HTTPRouteWeight` test fires 10 concurrent request to 3 backends totaling in 500 requests to assert a distribution that matches the configured weight.
15+
> Please be aware that this test exceeds the [5 req/sec rate-limit](https://docs.airlock.com/microgateway/latest/#data/1675772882054.html) enforced in the <!-- markdown-link-check-disable --> [community edition](https://www.airlock.com/en/secure-access-hub/components/microgateway/community-edition) <!-- markdown-link-check-enable -->, causing the test to fail.
16+
> To successfully pass this test a <!-- markdown-link-check-disable --> [premium license](https://www.airlock.com/en/secure-access-hub/components/microgateway/premium-edition) <!-- markdown-link-check-enable --> is required.
17+
>
18+
> The Airlock Microgateway drops all request headers except for a well-known built-in standard and tracing headers list (e.g., Accept, Cookie, X-CSRF-TOKEN) to reduce the attack surface.
19+
> Therefore, to run the conformance tests, a `ContentSecurityPolicy` with a `HeaderRewrites` (see [`conformance-report.yaml`](https://github.com/airlock/microgateway/tree/main/examples/gateway-api/conformance/manifests/conformance-report.yaml)) is required to disable request header filtering for all `HTTPRoute` tests relying on the `MakeRequestAndExpectEventuallyConsistentResponse` assertion.
20+
> Regardless of whether request header filtering is enabled or disabled, header-based routing works as specified in the Gateway API, as the headers are only filtered before the request is forwarded to the upstream.
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
apiVersion: gateway.networking.k8s.io/v1
2+
date: "2025-02-03T15:48:50Z"
3+
gatewayAPIChannel: experimental
4+
gatewayAPIVersion: v1.2.1
5+
implementation:
6+
contact:
7+
- https://www.airlock.com/en/contact
8+
organization: airlock
9+
project: microgateway
10+
url: https://github.com/airlock/microgateway
11+
version: 4.5.0
12+
kind: ConformanceReport
13+
mode: default
14+
profiles:
15+
- core:
16+
result: success
17+
statistics:
18+
Failed: 0
19+
Passed: 33
20+
Skipped: 0
21+
extended:
22+
result: success
23+
statistics:
24+
Failed: 0
25+
Passed: 16
26+
Skipped: 0
27+
supportedFeatures:
28+
- GatewayInfrastructurePropagation
29+
- GatewayPort8080
30+
- HTTPRouteBackendProtocolH2C
31+
- HTTPRouteBackendProtocolWebSocket
32+
- HTTPRouteBackendTimeout
33+
- HTTPRouteDestinationPortMatching
34+
- HTTPRouteHostRewrite
35+
- HTTPRouteMethodMatching
36+
- HTTPRouteParentRefPort
37+
- HTTPRoutePathRewrite
38+
- HTTPRoutePortRedirect
39+
- HTTPRouteQueryParamMatching
40+
- HTTPRouteRequestTimeout
41+
- HTTPRouteSchemeRedirect
42+
unsupportedFeatures:
43+
- GatewayHTTPListenerIsolation
44+
- GatewayStaticAddresses
45+
- HTTPRouteBackendRequestHeaderModification
46+
- HTTPRoutePathRedirect
47+
- HTTPRouteRequestMirror
48+
- HTTPRouteRequestMultipleMirrors
49+
- HTTPRouteResponseHeaderModification
50+
name: GATEWAY-HTTP
51+
summary: Core tests succeeded. Extended tests succeeded.
52+
succeededProvisionalTests:
53+
- GatewayInfrastructure

site-src/implementations.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -113,13 +113,13 @@ In this section you will find specific links to blog posts, documentation and ot
113113
[epicsource]:https://github.com/epic-gateway
114114

115115
### Airlock Microgateway
116-
[![Conformance](https://img.shields.io/badge/Gateway%20API%20Conformance%20v1.1.0-Airlock%20Microgateway-green)](https://github.com/kubernetes-sigs/gateway-api/blob/main/conformance/reports/v1.1.0/airlock-microgateway)
116+
[![Conformance](https://img.shields.io/badge/Gateway%20API%20Conformance%20v1.2.1-Airlock%20Microgateway-green)](https://github.com/kubernetes-sigs/gateway-api/blob/main/conformance/reports/v1.2.1/airlock-microgateway)
117117

118118
[Airlock Microgateway][airlock-microgateway] is a Kubernetes native WAAP (Web Application and API Protection) solution to protect microservices.
119119
Modern application security is embedded in the development workflow and follows DevSecOps paradigms.
120120
Airlock Microgateway protects your applications and microservices with the tried-and-tested Airlock security features against attacks, while also providing a high degree of scalability.
121121

122-
With [Airlock Microgateway 4.4][airlock-microgateway-v4.4], Airlock Microgateway introduces a sidecarless data plane mode
122+
With [Airlock Microgateway 4.4][airlock-microgateway-gwapi-arch], Airlock Microgateway introduces a sidecarless data plane mode
123123
based on Gateway API to avoid the operational complexity of sidecars.
124124

125125
#### Features
@@ -135,9 +135,9 @@ based on Gateway API to avoid the operational complexity of sidecars.
135135
- Check our [Airlock community forum][airlock-microgateway-community-support] and [support process][airlock-microgateway-premium-support] for support.
136136

137137
[airlock-microgateway]:https://www.airlock.com/en/secure-access-hub/components/microgateway
138-
[airlock-microgateway-v4.4]:https://docs.airlock.com/microgateway/4.4/#data/1725073468781.html
138+
[airlock-microgateway-gwapi-arch]:https://docs.airlock.com/microgateway/latest/?topic=MGW-00000141
139139
[airlock-microgateway-documentation]:https://docs.airlock.com/microgateway/latest
140-
[airlock-microgateway-guide]:https://docs.airlock.com/microgateway/4.4/#data/1726159368351.html
140+
[airlock-microgateway-guide]:https://docs.airlock.com/microgateway/latest/?topic=MGW-00000142
141141
[airlock-microgateway-community-support]:https://forum.airlock.com/
142142
[airlock-microgateway-premium-support]:https://techzone.ergon.ch/support-process
143143

0 commit comments

Comments
 (0)